Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Sep 1996 09:46:10 +0900 (JST)
From:      Michael Hancock <michaelh@cet.co.jp>
To:        Terry Lambert <terry@lambert.org>
Cc:        freebsd-fs@freebsd.org
Subject:   Re: vclean (was The VIVA file system)
Message-ID:  <Pine.SV4.3.93.960912093413.18825A-100000@parkplace.cet.co.jp>
In-Reply-To: <Pine.SV4.3.93.960829085831.4475G-100000@parkplace.cet.co.jp>

next in thread | previous in thread | raw e-mail | index | archive | help
> > > Yikes!  I took a look below, but I didn't expect to see vgone() calls in
> > > ufs_inactive(). 
> > > 
> > >         if (vp->v_usecount == 0 && ip->i_mode == 0)
> > >                 vgone(vp);
> > > 
> > > I need to figure out what ip->i_mode == 0 means.
> > 
> > The file type is a non-zero value in the high bits of the mode word;
> > it means that the inode does not refer to real data any more.

I misunderstood this for some reason.  ip->ipmode is ip-i_din.di_mode so
it means the file was removed.  I was being stupid and thought it had to
do with the state of the in-core inode.

It's correct to have vgone() here to preserve the Unix unlink semantics.

Regards,


Mike Hancock




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SV4.3.93.960912093413.18825A-100000>