cvs commit: src/sys/kern vfs_bio.c vfs_subr.c src/sys/sys buf.h lockmgr.h

Attilio Rao attilio at FreeBSD.org
Fri Mar 28 05:30:19 PDT 2008


attilio     2008-03-28 12:30:12 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             vfs_bio.c vfs_subr.c 
    sys/sys              buf.h lockmgr.h 
  Log:
  b_waiters cannot be adequately protected by the interlock because it is
  dropped after the call to lockmgr() so just revert this approach using
  something similar to the precedent one:
  BUF_LOCKWAITERS() just checks if there are waiters (not the actual number
  of them) and it is based on newly introduced lockmgr_waiters() which
  returns if the lockmgr has waiters or not. The name has been choosen
  differently by old lockwaiters() in order to not confuse them.
  
  KPI results enriched by this commit so __FreeBSD_version bumping and
  manpage update will be happening soon.
  'struct buf' also changes, so kernel ABI is disturbed.
  
  Bug found by:   jeff
  Approved by:    jeff, kib
  
  Revision  Changes    Path
  1.542     +6 -8      src/sys/kern/vfs_bio.c
  1.726     +1 -5      src/sys/kern/vfs_subr.c
  1.207     +15 -39    src/sys/sys/buf.h
  1.67      +2 -0      src/sys/sys/lockmgr.h


More information about the cvs-all mailing list