Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/sys
Module Name: src
Committed By: ad
Date: Sat May 23 20:45:11 UTC 2020
Modified Files:
src/sys/kern: kern_lwp.c kern_proc.c kern_turnstile.c sys_lwp.c
src/sys/rump/librump/rumpkern: lwproc.c
src/sys/sys: lwp.h proc.h sleepq.h
Log Message:
- Replace pid_table_lock with a lockless lookup covered by pserialize, with
the "writer" side being pid_table expansion. The basic idea is that when
doing an LWP lookup there is usually already a lock held (p->p_lock), or a
spin mutex that needs to be taken (l->l_mutex), and either can be used to
get the found LWP stable and confidently determine that all is correct.
- For user processes LSLARVAL implies the same thing as LSIDL ("not visible
by ID"), and lookup by ID in proc0 doesn't really happen. In-tree the new
state should be understood by top(1), the tty subsystem and so on, and
would attract the attention of 3rd party kernel grovellers in time, so
remove it and just rely on LSIDL.
To generate a diff of this commit:
cvs rdiff -u -r1.237 -r1.238 src/sys/kern/kern_lwp.c
cvs rdiff -u -r1.251 -r1.252 src/sys/kern/kern_proc.c
cvs rdiff -u -r1.39 -r1.40 src/sys/kern/kern_turnstile.c
cvs rdiff -u -r1.80 -r1.81 src/sys/kern/sys_lwp.c
cvs rdiff -u -r1.48 -r1.49 src/sys/rump/librump/rumpkern/lwproc.c
cvs rdiff -u -r1.209 -r1.210 src/sys/sys/lwp.h
cvs rdiff -u -r1.365 -r1.366 src/sys/sys/proc.h
cvs rdiff -u -r1.30 -r1.31 src/sys/sys/sleepq.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index