From dc9da1e34fe6a9d113fd57e116ebbc6d5bd54819 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Wed, 27 Apr 2011 20:48:39 +0930 Subject: [PATCH 1/1] tdb2: allow multiple chain locks. It's probably not a good idea, because it's a recipe for deadlocks if anyone else grabs any *other* two chainlocks, or the allrecord lock, but SAMBA definitely does it, so allow it as TDB1 does. --- ccan/tdb2/lock.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ccan/tdb2/lock.c b/ccan/tdb2/lock.c index 8a338cbe..4033d0af 100644 --- a/ccan/tdb2/lock.c +++ b/ccan/tdb2/lock.c @@ -378,12 +378,14 @@ static enum TDB_ERROR tdb_nest_lock(struct tdb_context *tdb, return TDB_SUCCESS; } +#if 0 if (tdb->file->num_lockrecs && offset >= TDB_HASH_LOCK_START && offset < TDB_HASH_LOCK_START + TDB_HASH_LOCK_RANGE) { return tdb_logerr(tdb, TDB_ERR_LOCK, TDB_LOG_ERROR, "tdb_nest_lock: already have a hash lock?"); } +#endif new_lck = (struct tdb_lock *)realloc( tdb->file->lockrecs, -- 2.39.2