Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 31 Aug 1997 00:32:43 -0700 (PDT)
From:      Poul-Henning Kamp <phk@FreeBSD.ORG>
To:        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG
Subject:   cvs commit: src/sys/kern vfs_cache.c vfs_subr.c src/sys/sys vnode.h src/sys/ufs/lfs lfs_segment.c src/sys/vm vm_swap.c
Message-ID:  <199708310732.AAA08678@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
phk         1997/08/31 00:32:42 PDT

  Modified files:
    sys/kern             vfs_cache.c vfs_subr.c 
    sys/sys              vnode.h 
    sys/ufs/lfs          lfs_segment.c 
    sys/vm               vm_swap.c 
  Log:
  Change the 0xdeadb hack to a flag called VDOOMED.
  Introduce VFREE which indicates that vnode is on freelist.
  Rename vholdrele() to vdrop().
  Create vfree() and vbusy() to add/delete vnode from freelist.
  Add vfree()/vbusy() to keep (v_holdcnt != 0 || v_usecount != 0)
    vnodes off the freelist.
  Generalize vhold()/v_holdcnt to mean "do not recycle".
  Fix reassignbuf()s lack of use of vhold().
  Use vhold() instead of checking v_cache_src list.
  Remove vtouch(), the vnodes are always vget'ed soon enough
    after for it to have any measuable effect.
  Add sysctl debug.freevnodes to keep track of things.
  Move cache_purge() up in getnewvnodes to avoid race.
  Decrement v_usecount after VOP_INACTIVE(), put a vhold() on
    it during VOP_INACTIVE()
  Unmacroize vhold()/vdrop()
  Print out VDOOMED and VFREE flags (XXX: should use %b)
  
  Reviewed by:		dyson
  
  Revision  Changes    Path
  1.28      +8 -7      src/sys/kern/vfs_cache.c
  1.96      +66 -55    src/sys/kern/vfs_subr.c
  1.47      +19 -27    src/sys/sys/vnode.h
  1.24      +2 -2      src/sys/ufs/lfs/lfs_segment.c
  1.44      +2 -2      src/sys/vm/vm_swap.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708310732.AAA08678>