ubik: SVOTE_Beacon should hold the DB lock for CheckTid
authorMarc Dionne <marc.c.dionne@gmail.com>
Sat, 29 Jan 2011 17:09:30 +0000 (12:09 -0500)
committerDerrick Brashear <shadow@dementia.org>
Tue, 5 Apr 2011 18:23:31 +0000 (11:23 -0700)
Change-Id: Iab51bf4aea704870813a4f4c082110ed7cd1eb04
Reviewed-on: http://gerrit.openafs.org/4262
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

src/ubik/vote.c

index b59eb62..c89a00c 100644 (file)
@@ -320,7 +320,9 @@ SVOTE_Beacon(struct rx_call * rxcall, afs_int32 astate,
        vote_globals.ubik_dbVersion = *avers;   /* resync value */
        vote_globals.ubik_dbTid = *atid;        /* transaction id, if any, of active trans */
        UBIK_VOTE_UNLOCK;
+       DBHOLD(ubik_dbase);
        urecovery_CheckTid(atid, 0);    /* check if current write trans needs aborted */
+       DBRELE(ubik_dbase);
     } else {
        UBIK_VOTE_UNLOCK;
     }