X-Git-Url: http://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftdb%2Ftdb.c;fp=ccan%2Ftdb%2Ftdb.c;h=d43418033e7fcc32ea5648b4ac5c2672568e26b8;hp=0db9a358381c94a2e540430a271891255f10b730;hb=b2c0ebc6f53b05b222937991f100f8a89701f9b1;hpb=450a9a4c70af36f3be1eb572d513ffebf25c3797 diff --git a/ccan/tdb/tdb.c b/ccan/tdb/tdb.c index 0db9a358..d4341803 100644 --- a/ccan/tdb/tdb.c +++ b/ccan/tdb/tdb.c @@ -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)