Lines Matching defs:TxAnchor
66 } TxAnchor;
108 #define LAZY_LOCK_INIT() spin_lock_init(&TxAnchor.LazyLock);
109 #define LAZY_LOCK(flags) spin_lock_irqsave(&TxAnchor.LazyLock, flags)
110 #define LAZY_UNLOCK(flags) spin_unlock_irqrestore(&TxAnchor.LazyLock, flags)
185 if (!TxAnchor.freelock) {
189 while (!(lid = TxAnchor.freelock))
190 TXN_SLEEP(&TxAnchor.freelockwait);
191 TxAnchor.freelock = TxLock[lid].next;
193 if ((++TxAnchor.tlocksInUse > TxLockHWM) && (jfs_tlocks_low == 0)) {
205 TxLock[lid].next = TxAnchor.freelock;
206 TxAnchor.freelock = lid;
207 TxAnchor.tlocksInUse--;
208 if (jfs_tlocks_low && (TxAnchor.tlocksInUse < TxLockLWM)) {
211 TXN_WAKEUP(&TxAnchor.lowlockwait);
213 TXN_WAKEUP(&TxAnchor.freelockwait);
284 TxAnchor.freetid = 1;
285 init_waitqueue_head(&TxAnchor.freewait);
306 init_waitqueue_head(&TxAnchor.freelockwait);
307 init_waitqueue_head(&TxAnchor.lowlockwait);
309 TxAnchor.freelock = 1;
310 TxAnchor.tlocksInUse = 0;
311 INIT_LIST_HEAD(&TxAnchor.anon_list);
312 INIT_LIST_HEAD(&TxAnchor.anon_list2);
315 INIT_LIST_HEAD(&TxAnchor.unlock_queue);
384 if (TxAnchor.tlocksInUse > TxLockVHWM) {
386 TXN_SLEEP(&TxAnchor.lowlockwait);
394 if ((t = TxAnchor.freetid) == 0) {
397 TXN_SLEEP(&TxAnchor.freewait);
407 TXN_SLEEP(&TxAnchor.freewait);
411 TxAnchor.freetid = tblk->next;
475 if (TxAnchor.tlocksInUse > TxLockVHWM) {
477 TXN_SLEEP(&TxAnchor.lowlockwait);
533 tblk->next = TxAnchor.freetid;
534 TxAnchor.freetid = tid;
568 TXN_WAKEUP(&TxAnchor.freewait);
756 &TxAnchor.anon_list);
1040 &TxAnchor.anon_list);
2745 while (!list_empty(&TxAnchor.unlock_queue)) {
2747 list_for_each_entry(tblk, &TxAnchor.unlock_queue,
2802 if (!list_empty(&TxAnchor.unlock_queue))
2815 list_add_tail(&tblk->cqueue, &TxAnchor.unlock_queue);
2858 while (!list_empty(&TxAnchor.anon_list)) {
2859 jfs_ip = list_entry(TxAnchor.anon_list.next,
2886 if (!list_empty(&TxAnchor.anon_list2)) {
2887 list_splice_init(&TxAnchor.anon_list2, &TxAnchor.anon_list);
2929 while (jfs_tlocks_low && !list_empty(&TxAnchor.anon_list)) {
2930 jfs_ip = list_entry(TxAnchor.anon_list.next,
2967 &TxAnchor.anon_list2);
2975 list_splice_init(&TxAnchor.anon_list2, &TxAnchor.anon_list);
2999 waitqueue_active(&TxAnchor.freewait) ? "active" : "empty";
3001 waitqueue_active(&TxAnchor.freelockwait) ? "active" : "empty";
3003 waitqueue_active(&TxAnchor.lowlockwait) ? "active" : "empty";
3006 "JFS TxAnchor\n"
3016 TxAnchor.freetid,
3018 TxAnchor.freelock,
3021 TxAnchor.tlocksInUse,
3023 list_empty(&TxAnchor.unlock_queue) ? "" : "not ");