diff options
author | jhb <jhb@FreeBSD.org> | 2000-12-01 06:34:19 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2000-12-01 06:34:19 +0000 |
commit | a33939f7ae5551fb13bf89f4241e8c9387abb285 (patch) | |
tree | 208600ec6500008edf7612fb5c86a9f322625af5 /sys/i386 | |
parent | b90560484ef8b063e65c3acdf352b73587366cac (diff) | |
download | FreeBSD-src-a33939f7ae5551fb13bf89f4241e8c9387abb285.zip FreeBSD-src-a33939f7ae5551fb13bf89f4241e8c9387abb285.tar.gz |
Protect access to p_stat with sched_lock.
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/linux/linprocfs/linprocfs_misc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/i386/linux/linprocfs/linprocfs_misc.c b/sys/i386/linux/linprocfs/linprocfs_misc.c index d4cd0c2..7b73d2d 100644 --- a/sys/i386/linux/linprocfs/linprocfs_misc.c +++ b/sys/i386/linux/linprocfs/linprocfs_misc.c @@ -422,10 +422,12 @@ linprocfs_doprocstatus(curp, p, pfs, uio) ps = psbuf; + mtx_enter(&sched_lock, MTX_SPIN); if (p->p_stat > sizeof state_str / sizeof *state_str) state = state_str[0]; else state = state_str[(int)p->p_stat]; + mtx_exit(&sched_lock, MTX_SPIN); #define PS_ADD ps += sprintf PS_ADD(ps, "Name:\t%s\n", p->p_comm); /* XXX escape */ |