NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/39929 (NetBSD 5.0_BETA kernel panics when trying to access /dev/rcd0d with growisofs)
The following reply was made to PR kern/39929; it has been noted by GNATS.
From: Joerg Sonnenberger <joerg%britannica.bec.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: kern/39929 (NetBSD 5.0_BETA kernel panics when trying to
access /dev/rcd0d with growisofs)
Date: Sun, 30 Nov 2008 23:57:10 +0100
--huq684BweRXVnRxX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
On Sun, Nov 30, 2008 at 10:54:59PM +0000, joerg%NetBSD.org@localhost wrote:
> I'll fix it.
Please try the attached patch.
Joerg
--huq684BweRXVnRxX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="genfs_io.c.diff"
Index: genfs_io.c
===================================================================
RCS file: /cvsroot/src/sys/miscfs/genfs/genfs_io.c,v
retrieving revision 1.15
diff -u -p -r1.15 genfs_io.c
--- genfs_io.c 16 Nov 2008 19:34:29 -0000 1.15
+++ genfs_io.c 30 Nov 2008 22:55:42 -0000
@@ -1560,6 +1560,8 @@ genfs_directio(struct vnode *vp, struct
size_t len;
const int mask = DEV_BSIZE - 1;
int error;
+ bool need_wapbl = (vp->v_mount && vp->v_mount->mnt_wapbl &&
+ (ioflag & IO_JOURNALLOCKED) == 0);
/*
* We only support direct I/O to user space for now.
@@ -1581,7 +1583,7 @@ genfs_directio(struct vnode *vp, struct
return;
}
- if ((ioflag & IO_JOURNALLOCKED) == 0) {
+ if (need_wapbl) {
error = WAPBL_BEGIN(vp->v_mount);
if (error)
return;
@@ -1633,7 +1635,7 @@ genfs_directio(struct vnode *vp, struct
uio->uio_resid -= len;
}
- if ((ioflag & IO_JOURNALLOCKED) == 0)
+ if (need_wapbl)
WAPBL_END(vp->v_mount);
}
--huq684BweRXVnRxX--
Home |
Main Index |
Thread Index |
Old Index