freebsd-dev/sys/compat
Ed Schouten ddf9d24349 Push down Giant inside sysctl. Also add some more assertions to the code.
In the existing code we didn't really enforce that callers hold Giant
before calling userland_sysctl(), even though there is no guarantee it
is safe. Fix this by just placing Giant locks around the call to the oid
handler. This also means we only pick up Giant for a very short period
of time. Maybe we should add MPSAFE flags to sysctl or phase it out all
together.

I've also added SYSCTL_LOCK_ASSERT(). We have to make sure sysctl_root()
and name2oid() are called with the sysctl lock held.

Reviewed by:	Jille Timmermans <jille quis cx>
2008-12-29 12:58:45 +00:00
..
freebsd32 Push down Giant inside sysctl. Also add some more assertions to the code. 2008-12-29 12:58:45 +00:00
ia32 Add sv_flags field to struct sysentvec with intention to provide description 2008-11-22 12:36:15 +00:00
linprocfs vm_map_lock_read() does not increment map->timestamp, so we should 2008-12-29 12:45:11 +00:00
linsysfs Add a pn_destroy field to pfs_node. This field points to a destructor 2007-03-12 12:16:52 +00:00
linux Push down Giant inside sysctl. Also add some more assertions to the code. 2008-12-29 12:58:45 +00:00
ndis Remove unused variable. 2008-12-28 13:50:58 +00:00
netbsd Start each of the license/copyright comments with /*- 2005-01-05 22:34:37 +00:00
svr4 Remove two remnant uses of AT_DEBUG. 2008-12-17 13:13:35 +00:00