From 9e4c9a6ce908881b1e6f83cbb906a9fce08dd3ab Mon Sep 17 00:00:00 2001 From: jeff Date: Tue, 25 Feb 2003 03:37:48 +0000 Subject: - Add an interlock argument to BUF_LOCK and BUF_TIMELOCK. - Remove the buftimelock mutex and acquire the buf's interlock to protect these fields instead. - Hold the vnode interlock while locking bufs on the clean/dirty queues. This reduces some cases from one BUF_LOCK with a LK_NOWAIT and another BUF_LOCK with a LK_TIMEFAIL to a single lock. Reviewed by: arch, mckusick --- sys/sys/lockmgr.h | 1 + 1 file changed, 1 insertion(+) (limited to 'sys/sys/lockmgr.h') diff --git a/sys/sys/lockmgr.h b/sys/sys/lockmgr.h index a186614..26226cd 100644 --- a/sys/sys/lockmgr.h +++ b/sys/sys/lockmgr.h @@ -149,6 +149,7 @@ struct lock { */ #define LK_RETRY 0x00020000 /* vn_lock: retry until locked */ #define LK_THISLAYER 0x00040000 /* vn_lock: lock/unlock only current layer */ +#define LK_INTERNAL 0x00080000/* The internal lock is already held */ /* * Internal state flags corresponding to lk_sharecount, and lk_waitcount -- cgit v1.1