summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdio/setvbuf.c
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2010-10-18 19:06:46 +0000
committerkib <kib@FreeBSD.org>2010-10-18 19:06:46 +0000
commit9aa04c0151c0a6e6d7fc6201e5367f109dfac1dd (patch)
tree1476a9a48c03cdc13771624d2bc864aaa56334dc /lib/libc/stdio/setvbuf.c
parentce878940358e064934cf32c83917ab296594fe75 (diff)
downloadFreeBSD-src-9aa04c0151c0a6e6d7fc6201e5367f109dfac1dd.zip
FreeBSD-src-9aa04c0151c0a6e6d7fc6201e5367f109dfac1dd.tar.gz
Do not synchronously start the nfsiod threads at all. The r212506
fixed the issues with file descriptor locks, but the same problems are present for vnode lock/user map lock. If the nfs_asyncio() cannot find the free nfsiod, schedule task to create new nfsiod and return error. This causes fall back to the synchronous i/o for nfs_strategy(), or does not start read at all in the case of readahead. The caller that holds vnode and potentially user map lock does not wait for kproc_create() to finish, preventing the LORs. The change effectively reverts r203072, because we never hand off the request to newly created nfsiod thread anymore. Reviewed by: jhb Tested by: jhb, pluknet MFC after: 3 weeks
Diffstat (limited to 'lib/libc/stdio/setvbuf.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud