Double rainbow, full on.
On Mon, Sep 06, 2010 at 05:44:11PM -0600, Thordur I Bjornsson wrote:
> CVSROOT: /cvs
> Module name: src
> Changes by: [email protected] 2010/09/06 17:44:11
>
> Modified files:
> sys/conf : files
> sys/isofs/cd9660: cd9660_extern.h cd9660_vfsops.c cd9660_vnops.c
> sys/isofs/udf : udf_extern.h udf_vfsops.c udf_vnops.c
> sys/kern : Makefile vfs_conf.c vfs_init.c vfs_subr.c
> vfs_sync.c
> sys/miscfs/deadfs: dead_vnops.c
> sys/miscfs/fifofs: fifo.h fifo_vnops.c
> sys/miscfs/procfs: procfs.h procfs_subr.c procfs_vnops.c
> sys/miscfs/specfs: spec_vnops.c specdev.h
> sys/msdosfs : msdosfs_denode.c msdosfs_vnops.c
> sys/nfs : nfs_node.c nfs_subs.c nfs_vnops.c
> sys/nnpfs : nnpfs_node-bsd.c nnpfs_vfsops-openbsd.c
> nnpfs_vnodeops-bsd.c
> sys/sys : vnode.h
> sys/ufs/ext2fs : ext2fs_extern.h ext2fs_subr.c ext2fs_vfsops.c
> ext2fs_vnops.c
> sys/ufs/ffs : ffs_extern.h ffs_vfsops.c ffs_vnops.c
> sys/ufs/mfs : mfs_extern.h mfs_vfsops.c mfs_vnops.c
> sys/ufs/ufs : ufs_extern.h ufs_vnops.c
> sys/uvm : uvm_swap.c
> Added files:
> sys/kern : vfs_vops.c
>
> Log message:
> End the VOP experiment. Instead of the ridicolusly complicated operation
> vector setup that has questionable features (that have, as far as I can
> tell never been used in practice, atleast not in OpenBSD), remove all
> the gunk and favor a simple struct full of function pointers that get
> set directly by each of the filesystems.
>
> Removes gobs of ugly code and makes things simpler by a magnitude.
>
> The only downside of this is that we loose the vnoperate feature so
> the spec/fifo operations of the filesystems need to be kept in sync
> with specfs and fifofs, this is no big deal as the API it self is pretty
> static.
>
> Many thanks to armani@ who pulled an earlier version of this diff to
> current after c2k10 and Gabriel Kihlman on tech@ for testing.
>
> Liked by many. "come on, find your balls" dera...@.