freebsd-nq/sys/fs
Attilio Rao 7fbfba7bf8 - Handle buffer lock waiters count directly in the buffer cache instead
than rely on the lockmgr support [1]:
  * bump the waiters only if the interlock is held
  * let brelvp() return the waiters count
  * rely on brelvp() instead than BUF_LOCKWAITERS() in order to check
    for the waiters number
- Remove a namespace pollution introduced recently with lockmgr.h
  including lock.h by including lock.h directly in the consumers and
  making it mandatory for using lockmgr.
- Modify flags accepted by lockinit():
  * introduce LK_NOPROFILE which disables lock profiling for the
    specified lockmgr
  * introduce LK_QUIET which disables ktr tracing for the specified
    lockmgr [2]
  * disallow LK_SLEEPFAIL and LK_NOWAIT to be passed there so that it
    can only be used on a per-instance basis
- Remove BUF_LOCKWAITERS() and lockwaiters() as they are no longer
  used

This patch breaks KPI so __FreBSD_version will be bumped and manpages
updated by further commits. Additively, 'struct buf' changes results in
a disturbed ABI also.

[2] Really, currently there is no ktr tracing in the lockmgr, but it
will be added soon.

[1] Submitted by:	kib
Tested by:	pho, Andrea Barberio <insomniac at slackware dot it>
2008-03-01 19:47:50 +00:00
..
cd9660 Cleanup lockmgr interface and exported KPI: 2008-01-24 12:34:30 +00:00
coda Add "Make MPSAFE" to the Coda todo list. 2008-02-26 09:27:47 +00:00
deadfs Below is slightly edited description of the LOR by Tor Egge: 2007-01-22 11:25:22 +00:00
devfs Axe the 'thread' argument from VOP_ISLOCKED() and lockstatus() as it is 2008-02-25 18:45:57 +00:00
fdescfs Rename fdescfs vnode from "fdesc" to "fdescfs" to avoid name collision 2008-02-26 10:10:55 +00:00
fifofs Remove Giant acquisition around soreceive() and sosend() in fifofs. The 2008-01-26 12:34:23 +00:00
hpfs Cleanup lockmgr interface and exported KPI: 2008-01-24 12:34:30 +00:00
msdosfs Don't check the bpbSecPerTrack and bpbHeads fields of the BPB. 2008-02-21 03:19:46 +00:00
ntfs Fix a lock leak in the ntfs locking scheme: 2008-02-13 13:02:12 +00:00
nullfs Axe the 'thread' argument from VOP_ISLOCKED() and lockstatus() as it is 2008-02-25 18:45:57 +00:00
nwfs - Handle buffer lock waiters count directly in the buffer cache instead 2008-03-01 19:47:50 +00:00
portalfs vn_lock() is currently only used with the 'curthread' passed as argument. 2008-01-10 01:10:58 +00:00
procfs VOP_LOCK1() (and so VOP_LOCK()) and VOP_UNLOCK() are only used in 2008-01-13 14:44:15 +00:00
pseudofs Introduce some functions in the vnode locks namespace and in the ffs 2008-02-24 16:38:58 +00:00
smbfs Axe the 'thread' argument from VOP_ISLOCKED() and lockstatus() as it is 2008-02-25 18:45:57 +00:00
tmpfs Axe the 'thread' argument from VOP_ISLOCKED() and lockstatus() as it is 2008-02-25 18:45:57 +00:00
udf Cleanup lockmgr interface and exported KPI: 2008-01-24 12:34:30 +00:00
unionfs Axe the 'thread' argument from VOP_ISLOCKED() and lockstatus() as it is 2008-02-25 18:45:57 +00:00