Up to [cvs.NetBSD.org] / src / sys / kern
Request diff between arbitrary revisions
Default branch: MAIN
Current tag: uebayasi-xip-base
Revision 1.202 / (download) - annotate - [select for diffs], Sun Dec 20 09:36:05 2009 UTC (14 years, 4 months ago) by dsl
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9,
uebayasi-xip-base1,
uebayasi-xip-base
Branch point for: uebayasi-xip,
rmind-uvmplock
Changes since 1.201: +16 -6
lines
Diff to previous 1.201 (colored)
If a multithreaded app closes an fd while another thread is blocked in read/write/accept, then the expectation is that the blocked thread will exit and the close complete. Since only one fd is affected, but many fd can refer to the same file, the close code can only request the fs code unblock with ERESTART. Fixed for pipes and sockets, ERESTART will only be generated after such a close - so there should be no change for other programs. Also rename fo_abort() to fo_restart() (this used to be fo_drain()). Fixes PR/26567