On Wed, 17 Nov 2004, Poul-Henning Kamp wrote: > Giant is now pushed down through select/poll/ioctl. > > Please test and report problems. Great! This should hopefully both reduce contention on Giant in interesting cases (such as select-intensive socket stuff), as well as reduce the overal number of locking operations for some interesting paths (i.e., select on sockets, which previously paid the cost of locking/unlocking Giant but didn't need it). FWIW, I would not be surprised if we see some bug reports come in now that ioctl() is being run without Giant for the network stack back default. While some of those ioctl's are already running without Giant due to sharing code paths with set/getsockopt() and internal use of ioctl in the kernel, others have probably not seen as much exposure. Likewise, while the pipe ioctl code should be MPSAFE (and is pretty innocuous), that's not been confirmed. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert_at_fledge.watson.org Principal Research Scientist, McAfee ResearchReceived on Wed Nov 17 2004 - 09:46:45 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:22 UTC