]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb/tdb.c
tdb: locking cleanup
[ccan] / ccan / tdb / tdb.c
index 0db9a358381c94a2e540430a271891255f10b730..d43418033e7fcc32ea5648b4ac5c2672568e26b8 100644 (file)
@@ -59,13 +59,14 @@ static void tdb_increment_seqnum(struct tdb_context *tdb)
                return;
        }
 
-       if (tdb_brlock(tdb, TDB_SEQNUM_OFS, F_WRLCK, F_SETLKW, 1, 1) != 0) {
+       if (tdb_brlock(tdb, F_WRLCK, TDB_SEQNUM_OFS, 1,
+                      TDB_LOCK_WAIT|TDB_LOCK_PROBE) != 0) {
                return;
        }
 
        tdb_increment_seqnum_nonblock(tdb);
 
-       tdb_brlock(tdb, TDB_SEQNUM_OFS, F_UNLCK, F_SETLKW, 1, 1);
+       tdb_brunlock(tdb, F_WRLCK, TDB_SEQNUM_OFS, 1);
 }
 
 static int tdb_key_compare(TDB_DATA key, TDB_DATA data, void *private_data)