summaryrefslogtreecommitdiffstats
path: root/sys/dev/rc/rc.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1995-11-28 02:15:29 +0000
committerpeter <peter@FreeBSD.org>1995-11-28 02:15:29 +0000
commit17cfbbe7dfdf8533d89b6d58e8530f8869312b78 (patch)
tree71bf08c00b95cb57bfa2131b3d930bc0e2175922 /sys/dev/rc/rc.c
parent3ce680f86e8546763e962f268e5848bf19529ba8 (diff)
downloadFreeBSD-src-17cfbbe7dfdf8533d89b6d58e8530f8869312b78.zip
FreeBSD-src-17cfbbe7dfdf8533d89b6d58e8530f8869312b78.tar.gz
Attempt to solve the busy-buffers-on-shutdown caused by MFS once and for all.
What was happening, was that the main mfs loop was sleeping, and when it was being awoken by a wakeup when it was supposed to process some IO requests. The problem was that if it was being woken out of the tsleep() by a signal at shutdown, it was going straight into dounmount() without servicing any pending IO requests, causing dounmount() to fail because there were busy buffers (and they could not be "processed" because the processing loop was trying to unmount rather than dispatching into mfs_doio()). This (dare I say it :-) appears to be a layering problem....
Diffstat (limited to 'sys/dev/rc/rc.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud