summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_export.c
diff options
context:
space:
mode:
authormckusick <mckusick@FreeBSD.org>2000-01-10 00:07:24 +0000
committermckusick <mckusick@FreeBSD.org>2000-01-10 00:07:24 +0000
commita44e14097670c6ae3a2b4aa04f3af217928b2385 (patch)
treea08f2adb23e9ba4b91ac53ae99862009c265ffcc /sys/kern/vfs_export.c
parentdb94728905e902371a7b05c0d5248885340aa16b (diff)
downloadFreeBSD-src-a44e14097670c6ae3a2b4aa04f3af217928b2385.zip
FreeBSD-src-a44e14097670c6ae3a2b4aa04f3af217928b2385.tar.gz
Remove the P_BUFEXHAUST flag from the syncer process (leaving
it only on the buf_daemon process). The problem is that when the syncer process starts running the worklist, it wants to delete lots of files. It does this by VFS_VGET'ing the vnodes, clearing the blocks in them and bdwrite'ing the buffer. It can process close to a thousand files per second which generates a large number of dirty buffers. So, giving it special priviledge at the buffer trough leads to trouble as the buf_daemon does occationally need a free buffer to proceed and if the syncer has used every last one up, we are toast.
Diffstat (limited to 'sys/kern/vfs_export.c')
-rw-r--r--sys/kern/vfs_export.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/kern/vfs_export.c b/sys/kern/vfs_export.c
index 54c7ad1..4e6123e 100644
--- a/sys/kern/vfs_export.c
+++ b/sys/kern/vfs_export.c
@@ -981,8 +981,6 @@ sched_sync(void)
EVENTHANDLER_REGISTER(shutdown_pre_sync, shutdown_kproc, p,
SHUTDOWN_PRI_LAST);
- p->p_flag |= P_BUFEXHAUST;
-
for (;;) {
kproc_suspend_loop(p);
OpenPOWER on IntegriCloud