diff options
author | dillon <dillon@FreeBSD.org> | 1999-09-17 05:03:27 +0000 |
---|---|---|
committer | dillon <dillon@FreeBSD.org> | 1999-09-17 05:03:27 +0000 |
commit | 6c2a557edd099560a5d4a4c3cb01ca87f8ff1a87 (patch) | |
tree | 1cdd500a51d81f429cc0cdca8bc9baae584b6382 /sys | |
parent | 4cb1921c9b97c10844176bdd697e070b4af7e717 (diff) | |
download | FreeBSD-src-6c2a557edd099560a5d4a4c3cb01ca87f8ff1a87.zip FreeBSD-src-6c2a557edd099560a5d4a4c3cb01ca87f8ff1a87.tar.gz |
Add required BUF_KERNPROC to flushchainbuf() to disassociate the
current process from the exclusive lock prior to initiating I/O.
This fixes a panic related to swap-backed VN disks
Reviewed by: Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com>
Diffstat (limited to 'sys')
-rw-r--r-- | sys/vm/vm_pager.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/vm/vm_pager.c b/sys/vm/vm_pager.c index 70452ed..a9e1c7e 100644 --- a/sys/vm/vm_pager.c +++ b/sys/vm/vm_pager.c @@ -566,6 +566,7 @@ flushchainbuf(struct buf *nbp) nbp->b_bufsize = nbp->b_bcount; if ((nbp->b_flags & B_READ) == 0) nbp->b_dirtyend = nbp->b_bcount; + BUF_KERNPROC(nbp); VOP_STRATEGY(nbp->b_vp, nbp); } else { biodone(nbp); |