Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src



Module Name:    src
Committed By:   hannken
Date:           Thu May  8 08:21:53 UTC 2014

Modified Files:
        src/sys/kern: init_sysctl.c vfs_vnode.c
        src/sys/modules/ffs: Makefile
        src/sys/rump/fs/lib/libffs: Makefile
        src/sys/sys: mount.h param.h vnode.h
        src/sys/ufs: files.ufs
        src/sys/ufs/ext2fs: ext2fs_lookup.c ext2fs_vfsops.c
        src/sys/ufs/ffs: ffs_vfsops.c
        src/sys/ufs/mfs: mfs_vfsops.c
        src/sys/ufs/ufs: inode.h ufs_extern.h ufs_inode.c ufs_lookup.c
            ufs_vfsops.c
        src/usr.bin/vmstat: vmstat.c
Removed Files:
        src/sys/ufs/ufs: ufs_ihash.c

Log Message:
Add a global vnode cache:

- vcache_get() retrieves a referenced and initialised vnode / fs node pair.
- vcache_remove() removes a vnode / fs node pair from the cache.

On cache miss vcache_get() calls new vfs operation vfs_loadvnode() to
initialise a vnode / fs node pair.  This call is guaranteed exclusive,
no other thread will try to load this vnode / fs node pair.

Convert ufs/ext2fs, ufs/ffs and ufs/mfs to use this interface.

Remove now unused ufs/ufs_ihash

Discussed on tech-kern.

Welcome to 6.99.41


To generate a diff of this commit:
cvs rdiff -u -r1.202 -r1.203 src/sys/kern/init_sysctl.c
cvs rdiff -u -r1.35 -r1.36 src/sys/kern/vfs_vnode.c
cvs rdiff -u -r1.8 -r1.9 src/sys/modules/ffs/Makefile
cvs rdiff -u -r1.14 -r1.15 src/sys/rump/fs/lib/libffs/Makefile
cvs rdiff -u -r1.212 -r1.213 src/sys/sys/mount.h
cvs rdiff -u -r1.450 -r1.451 src/sys/sys/param.h
cvs rdiff -u -r1.246 -r1.247 src/sys/sys/vnode.h
cvs rdiff -u -r1.34 -r1.35 src/sys/ufs/files.ufs
cvs rdiff -u -r1.74 -r1.75 src/sys/ufs/ext2fs/ext2fs_lookup.c
cvs rdiff -u -r1.180 -r1.181 src/sys/ufs/ext2fs/ext2fs_vfsops.c
cvs rdiff -u -r1.297 -r1.298 src/sys/ufs/ffs/ffs_vfsops.c
cvs rdiff -u -r1.107 -r1.108 src/sys/ufs/mfs/mfs_vfsops.c
cvs rdiff -u -r1.65 -r1.66 src/sys/ufs/ufs/inode.h
cvs rdiff -u -r1.73 -r1.74 src/sys/ufs/ufs/ufs_extern.h
cvs rdiff -u -r1.32 -r0 src/sys/ufs/ufs/ufs_ihash.c
cvs rdiff -u -r1.89 -r1.90 src/sys/ufs/ufs/ufs_inode.c
cvs rdiff -u -r1.129 -r1.130 src/sys/ufs/ufs/ufs_lookup.c
cvs rdiff -u -r1.52 -r1.53 src/sys/ufs/ufs/ufs_vfsops.c
cvs rdiff -u -r1.191 -r1.192 src/usr.bin/vmstat/vmstat.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index