diff options
author | David du Colombier <0intro@gmail.com> | 2013-09-23 23:16:25 +0200 |
---|---|---|
committer | David du Colombier <0intro@gmail.com> | 2013-09-23 23:16:25 +0200 |
commit | 4b5766580559d101dd1c29cc575b3ffa9f51c2d7 (patch) | |
tree | f35364a39e255b1336482ee30217d68279ba8699 /src/cmd/fossil/bwatch.c | |
parent | 6f4d00ee45693290fae042b27536b54f77b96acd (diff) | |
download | plan9port-4b5766580559d101dd1c29cc575b3ffa9f51c2d7.tar.gz plan9port-4b5766580559d101dd1c29cc575b3ffa9f51c2d7.tar.bz2 plan9port-4b5766580559d101dd1c29cc575b3ffa9f51c2d7.zip |
fossil: move from liboventi to libthread and libventi
R=rsc
https://codereview.appspot.com/13504049
Diffstat (limited to 'src/cmd/fossil/bwatch.c')
-rw-r--r-- | src/cmd/fossil/bwatch.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/cmd/fossil/bwatch.c b/src/cmd/fossil/bwatch.c index 51deb762..8cd0956e 100644 --- a/src/cmd/fossil/bwatch.c +++ b/src/cmd/fossil/bwatch.c @@ -44,7 +44,7 @@ struct WEntry struct WMap { - VtLock *lk; + QLock lk; WEntry *hchild[HashSize]; WEntry *hparent[HashSize]; @@ -84,7 +84,7 @@ allocWEntry(void) w = pool; if(w == nil){ - w = vtMemAllocZ(1024*sizeof(WEntry)); + w = vtmallocz(1024*sizeof(WEntry)); for(i=0; i<1024; i++) freeWEntry(&w[i]); w = pool; @@ -195,16 +195,15 @@ addChild(uchar p[VtEntrySize], uchar c[VtEntrySize], int off) void bwatchReset(uchar score[VtScoreSize]) { - vtLock(map.lk); + qlock(&map.lk); _bwatchResetParent(score); _bwatchResetChild(score); - vtUnlock(map.lk); + qunlock(&map.lk); } void bwatchInit(void) { - map.lk = vtLockAlloc(); wp = privalloc(); *wp = nil; } @@ -222,7 +221,7 @@ getWThread(void) w = *wp; if(w == nil || w->pid != getpid()){ - w = vtMemAllocZ(sizeof(WThread)); + w = vtmallocz(sizeof(WThread)); *wp = w; w->pid = getpid(); } @@ -241,7 +240,7 @@ bwatchDependency(Block *b) if(bwatchDisabled) return; - vtLock(map.lk); + qlock(&map.lk); _bwatchResetParent(b->score); switch(b->l.type){ @@ -264,7 +263,7 @@ bwatchDependency(Block *b) addChild(b->score, b->data+i*VtScoreSize, i); break; } - vtUnlock(map.lk); + qunlock(&map.lk); } static int @@ -376,7 +375,7 @@ bwatchLock(Block *b) if(b->part != PartData) return; - vtLock(map.lk); + qlock(&map.lk); w = getWThread(); for(i=0; i<w->nb; i++){ if(lockConflicts(w->b[i]->score, b->score)){ @@ -385,7 +384,7 @@ bwatchLock(Block *b) stop(); } } - vtUnlock(map.lk); + qunlock(&map.lk); if(w->nb >= MaxLock){ fprint(2, "%d: too many blocks held\n", w->pid); stop(); |