看板 DFBSD_bugs 關於我們 聯絡資訊
oops. Sorry. That last comment was meant for Kyle's (similar) bug report. For yours, please try this patch. These assertions are all related to tightening up the API requirements for VOP_LOOKUP. -Matt Index: ntfs_vnops.c =================================================================== RCS file: /cvs/src/sys/vfs/ntfs/ntfs_vnops.c,v retrieving revision 1.19 diff -u -r1.19 ntfs_vnops.c --- ntfs_vnops.c 12 Nov 2004 00:09:38 -0000 1.19 +++ ntfs_vnops.c 22 Dec 2004 19:52:10 -0000 @@ -717,6 +717,8 @@ (int)cnp->cn_namelen, cnp->cn_nameptr, cnp->cn_namelen, dip->i_number, lockparent, wantparent)); + *ap->a_vpp = NULL; + if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') { dprintf(("ntfs_lookup: faking . directory in %d\n", dip->i_number)); @@ -751,7 +753,8 @@ if (lockparent) { error = VN_LOCK(dvp, LK_EXCLUSIVE, cnp->cn_td); if (error) { - vput( *(ap->a_vpp) ); + vput(*ap->a_vpp); + *ap->a_vpp = NULL; return (error); } cnp->cn_flags &= ~CNP_PDIRUNLOCK;