Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Sep 2000 08:24:05 -0700 (PDT)
From:      Boris Popov <bp@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/kern vfs_default.c vfs_subr.c src/sys/nfs nfs_vnops.c src/sys/sys vnode.h src/sys/ufs/ffs ffs_vfsops.c src/sys/ufs/ufs inode.h ufs_ihash.c ufs_vnops.c
Message-ID:  <200009251524.IAA48463@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
bp          2000/09/25 08:24:05 PDT

  Modified files:
    sys/kern             vfs_default.c vfs_subr.c 
    sys/nfs              nfs_vnops.c 
    sys/sys              vnode.h 
    sys/ufs/ffs          ffs_vfsops.c 
    sys/ufs/ufs          inode.h ufs_ihash.c ufs_vnops.c 
  Log:
  Add a lock structure to vnode structure. Previously it was either allocated
  separately (nfs, cd9660 etc) or keept as a first element of structure
  referenced by v_data pointer(ffs). Such organization leads to known problems
  with stacked filesystems.
  
  From this point vop_no*lock*() functions maintain only interlock lock.
  vop_std*lock*() functions maintain built-in v_lock structure using lockmgr().
  vop_sharedlock() is compatible with vop_stdunlock(), but maintains a shared
  lock on vnode.
  
  If filesystem wishes to export lockmgr compatible lock, it can put an address
  of this lock to v_vnlock field. This indicates that the upper filesystem
  can take advantage of it and use single lock structure for entire (or part)
  of stack of vnodes. This field shouldn't be examined or modified by VFS code
  except for initialization purposes.
  
  Reviewed in general by:	mckusick
  
  Revision  Changes    Path
  1.36      +19 -53    src/sys/kern/vfs_default.c
  1.280     +6 -5      src/sys/kern/vfs_subr.c
  1.159     +5 -1      src/sys/nfs/nfs_vnops.c
  1.129     +4 -2      src/sys/sys/vnode.h
  1.127     +6 -2      src/sys/ufs/ffs/ffs_vfsops.c
  1.32      +1 -2      src/sys/ufs/ufs/inode.h
  1.23      +2 -2      src/sys/ufs/ufs/ufs_ihash.c
  1.149     +2 -2      src/sys/ufs/ufs/ufs_vnops.c



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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