cvs commit: src/sys/vfs/isofs/cd9660 cd9660_lookup.c cd9660_node.c cd9660_node.h cd9660_vfsops.c cd9660_vnops.c
Matthew Dillon
dillon at crater.dragonflybsd.org
Sat Apr 1 13:57:05 PST 2006
dillon 2006/04/01 13:55:13 PST
DragonFly src repository
Modified files:
sys/vfs/isofs/cd9660 cd9660_lookup.c cd9660_node.c
cd9660_node.h cd9660_vfsops.c
cd9660_vnops.c
Log:
Clone cd9660_blkatoff() into a new procedure, cd9660_devblkatoff(), which
returns a devvp-relative buffer rather then the vp-relative buffer. This
allows us to access meta-data relative to a vnode without having to
instantiate a VM object for that vnode. The new function is used for
all directory scans and (negative offset) meta-data access.
This fixes a panic due to recent buffer cache commits that formalized
the requirements for using the buffer cache.
Also, prior to this change, the CD9660 filesystem was using B_MALLOC buffers
for a great deal of meta-data access that could very easily have been backed
by the device vnode's VM object instead. B_MALLOC buffers have severe
caching limitations. This commit fixes all of that as well.
Revision Changes Path
1.20 +50 -6 src/sys/vfs/isofs/cd9660/cd9660_lookup.c
1.16 +2 -2 src/sys/vfs/isofs/cd9660/cd9660_node.c
1.9 +1 -0 src/sys/vfs/isofs/cd9660/cd9660_node.h
1.32 +7 -7 src/sys/vfs/isofs/cd9660/cd9660_vfsops.c
1.23 +3 -3 src/sys/vfs/isofs/cd9660/cd9660_vnops.c
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/isofs/cd9660/cd9660_lookup.c.diff?r1=1.19&r2=1.20&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/isofs/cd9660/cd9660_node.c.diff?r1=1.15&r2=1.16&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/isofs/cd9660/cd9660_node.h.diff?r1=1.8&r2=1.9&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/isofs/cd9660/cd9660_vfsops.c.diff?r1=1.31&r2=1.32&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/isofs/cd9660/cd9660_vnops.c.diff?r1=1.22&r2=1.23&f=u
More information about the Commits
mailing list