Lines Matching full:transaction

8  *	jfs_txnmgr.c: transaction manager
11 * transaction starts with txBegin() and ends with txCommit()
24 * tlock during write()/mmap() under anonymous transaction (tid = 0):
25 * transferred (?) to transaction at commit time.
51 * transaction management structures
84 static int nTxBlock = -1; /* number of transaction blocks */
87 "Number of transaction blocks (max:65536)");
89 static int nTxLock = -1; /* number of transaction locks */
92 "Number of transaction locks (max:65536)");
94 struct tblock *TxBlock; /* transaction block table */
98 struct tlock *TxLock; /* transaction lock table */
101 * transaction management lock
171 * transaction block/lock management
176 * Get a transaction lock from the free list. If the number in use is
178 * free some anonymous transaction locks. (TXN_LOCK must be held.)
219 * FUNCTION: initialize transaction management structures
261 * initialize transaction block (tblock) table in txInit()
263 * transaction id (tid) = tblock index in txInit()
291 * initialize transaction lock (tlock) table in txInit()
293 * transaction lock id = tlock index in txInit()
339 * FUNCTION: start a transaction.
344 * RETURN: tid - transaction id
381 * Don't begin transaction if we're getting starved for tlocks in txBegin()
393 * allocate transaction id/block in txBegin()
405 /* Don't let a non-forced transaction take the last tblk */ in txBegin()
415 * initialize transaction in txBegin()
445 * FUNCTION: start an anonymous transaction.
474 * Don't begin transaction if we're getting starved for tlocks in txBeginAnon()
487 * function: free specified transaction block.
503 * by the current transaction in txEnd()
511 * otherwise, we would be left with a transaction that may have been in txEnd()
575 * function: acquire a transaction lock on the specified <mp>
579 * return: transaction lock id
609 /* is page not locked by a transaction ? */ in txLock()
615 /* is page locked by the requester transaction ? */ in txLock()
623 * is page locked by anonymous transaction/lock ? in txLock()
625 * (page update without transaction (i.e., file write) is in txLock()
626 * locked under anonymous transaction tid = 0: in txLock()
630 * they are transferred to the transaction tlock list of in txLock()
631 * the committing transaction of the inode) in txLock()
638 * The order of the tlocks in the transaction is important in txLock()
642 * transaction list in txLock()
669 /* insert the tlock at tail of transaction tlock list */ in txLock()
708 /* if anonymous transaction, and buffer is on the group in txLock()
734 * enqueue transaction lock to transaction/inode in txLock()
736 /* insert the tlock at tail of transaction tlock list */ in txLock()
746 /* anonymous transaction: in txLock()
753 /* This inode's first anonymous transaction */ in txLock()
819 * page is being locked by another transaction: in txLock()
859 * FUNCTION: Release buffers associated with transaction locks, but don't
888 * by the current transaction in txRelease()
985 * function: allocate a transaction lock for freed page/entry;
1019 * enqueue transaction lock to transaction/inode in txMaplock()
1021 /* insert the tlock at tail of transaction tlock list */ in txMaplock()
1031 /* anonymous transaction: in txMaplock()
1038 /* This inode's first anonymous transaction */ in txMaplock()
1059 * function: allocate a transaction lock for log vector list
1092 * transaction commit management
1128 int txCommit(tid_t tid, /* transaction identifier */ in txCommit()
1185 * acquire transaction lock on (on-disk) inodes in txCommit()
1188 * acquiring transaction locks for AFTER records in txCommit()
1192 * to prevent deadlock when acquiring transaction lock in txCommit()
1225 * to be written before the transaction is committed and in txCommit()
1253 * acquire transaction lock on on-disk inode page in txCommit()
1261 * write log records from transaction locks in txCommit()
1280 * commit the transaction synchronously, so the last iput in txCommit()
1308 * - transaction is now committed - in txCommit()
1331 * free transaction locks and pageout/free pages in txCommit()
1381 * write log record(s) for each tlock of transaction, in txLog()
1751 * that transaction is not committed lazily. in xtLog()
1854 * that transaction is not committed lazily. in xtLog()
1893 * Therefore, we'll just force transaction to be committed in xtLog()
2175 * function: synchronously write pages locked by transaction
2185 * reverse the order of transaction tlocks in in txForce()
2270 * scan each tlock/page of transaction for block allocation/free: in txUpdateMap()
2272 * for each tlock/page of transaction, update map. in txUpdateMap()
2316 * transaction in txUpdateMap()
2602 * free tlocks of the transaction in txAbort()
2617 * transaction(s) but has not been paged, i.e., in txAbort()
2630 /* caller will free the transaction block */ in txAbort()
2729 * Remove transaction from queue in jfs_lazycommit()