[PATCH] MPSAFE/LOOKUP_SHARED cd9660

John Baldwin jhb at freebsd.org
Wed Dec 10 19:58:03 UTC 2008


On Wednesday 10 December 2008 12:22:43 pm Paul B. Mahol wrote:
> On 12/9/08, John Baldwin <jhb at freebsd.org> wrote:
> > The RRIP stuff is all done in cd9660_vget_internal() under an exclusive
> > lock.
> > It could be a property of the ISO image.  "PX" holds permissions (owner,
> > etc.).  Do you get the same messages w/o the patch with the same ISO 
image /
> > CD?
> >
> > --
> > John Baldwin
> >
> 
> I searched little for this message and found  kern/63446 PR interesting 
comment:
> 
> 	Caused by cd9660_vnops.c rev. 1.77. VOP_READDIR returns bogus
> 	d_fileno, VFS_VGET on this value returns bogus vnode with zeroed 
attributes.
> 
> I think that whatever locking is done is done wrong.

That issue isn't a locking issue, it's an issue with VOP_READDIR() using a 
different meaning for i-node numbers than VFS_VGET(), and would happen 
regardless of any Giant or vnode locking.

-- 
John Baldwin


More information about the freebsd-current mailing list