tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: page fault in ufs_fhtovp
On Mon, May 26, 2014 at 12:24:56PM +0200, Martin Husemann wrote:
> On Mon, May 26, 2014 at 11:39:09AM +0200, Edgar Fuß wrote:
> > On a 6.1/amd64 NFS server, I got the following:
> >
> > uvm_fault(0xfffffe82cd149228, 0x0, 1) -> e
> > fatal page fault in supervisor mode
> > trap type 6 code 0 rip ffffffff803fc5a1 cs 8 rflags 10246 cr2 c8 cpl 0 rsp
> > fffffe82aaa38660
> > kernel: page fault trap, code=0
> > Stopped in pid 9953.3 (nfsd) at netbsd:ufs_fhtovp+0x2e: cmpw $0,c8(%rdx)
>
> if ((error = VFS_VGET(mp, ufhp->ufid_ino, &nvp)) != 0) {
> *vpp = NULLVP;
> return (error);
> }
> ip = VTOI(nvp);
> KASSERT(ip != NULL);
> --> if (ip->i_mode == 0 || ip->i_gen != ufhp->ufid_gen) {
>
> Looks like the KASSERT should have caught it (in a DIAGNOSTIC kernel).
> VTOI returned NULL?
Probably. I've already fixed races like this (between fhtovp() and reclaim)
in the past, but I guess there are some more ... Not easy to track down.
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index