From: Rusty Russell Date: Wed, 17 Feb 2010 02:10:57 +0000 (+1030) Subject: tdb: use tdb_nest_lock() for seqnum lock. X-Git-Tag: samba-3.6.0pre1~5036 X-Git-Url: http://git.samba.org/?p=samba.git;a=commitdiff_plain;h=d48c3e4982a38fb6b568ed3903e55e07a0fe5ca6;hp=4738d474c412cc59d26fcea64007e99094e8b675 tdb: use tdb_nest_lock() for seqnum lock. This is pure overhead, but it centralizes the locking. Realloc (esp. as most implementations are lazy) is fast compared to the fnctl anyway. Signed-off-by: Rusty Russell --- diff --git a/lib/tdb/common/tdb.c b/lib/tdb/common/tdb.c index ad81a56877f..7317a3aa521 100644 --- a/lib/tdb/common/tdb.c +++ b/lib/tdb/common/tdb.c @@ -59,14 +59,14 @@ static void tdb_increment_seqnum(struct tdb_context *tdb) return; } - if (tdb_brlock(tdb, F_WRLCK, TDB_SEQNUM_OFS, 1, - TDB_LOCK_WAIT|TDB_LOCK_PROBE) != 0) { + if (tdb_nest_lock(tdb, TDB_SEQNUM_OFS, F_WRLCK, + TDB_LOCK_WAIT|TDB_LOCK_PROBE) != 0) { return; } tdb_increment_seqnum_nonblock(tdb); - tdb_brunlock(tdb, F_WRLCK, TDB_SEQNUM_OFS, 1); + tdb_nest_unlock(tdb, TDB_SEQNUM_OFS, F_WRLCK, false); } static int tdb_key_compare(TDB_DATA key, TDB_DATA data, void *private_data)