| /kernel/linux/linux-5.10/fs/jbd2/ |
| D | checkpoint.c | 26 * Unlink a buffer from a transaction checkpoint list. 32 transaction_t *transaction = jh->b_cp_transaction; in __buffer_unlink_first() local 36 if (transaction->t_checkpoint_list == jh) { in __buffer_unlink_first() 37 transaction->t_checkpoint_list = jh->b_cpnext; in __buffer_unlink_first() 38 if (transaction->t_checkpoint_list == jh) in __buffer_unlink_first() 39 transaction->t_checkpoint_list = NULL; in __buffer_unlink_first() 44 * Unlink a buffer from a transaction checkpoint(io) list. 50 transaction_t *transaction = jh->b_cp_transaction; in __buffer_unlink() local 53 if (transaction->t_checkpoint_io_list == jh) { in __buffer_unlink() 54 transaction->t_checkpoint_io_list = jh->b_cpnext; in __buffer_unlink() [all …]
|
| D | transaction.c | 3 * linux/fs/jbd2/transaction.c 9 * Generic filesystem transaction handling code; part of the ext2fs 46 pr_emerg("JBD2: failed to create transaction cache\n"); in jbd2_journal_init_transaction_cache() 58 void jbd2_journal_free_transaction(transaction_t *transaction) in jbd2_journal_free_transaction() argument 60 if (unlikely(ZERO_OR_NULL_PTR(transaction))) in jbd2_journal_free_transaction() 62 kmem_cache_free(transaction_cache, transaction); in jbd2_journal_free_transaction() 66 * Base amount of descriptor blocks we reserve for each transaction. 81 * space for commit block and normal transaction descriptor blocks. in jbd2_descriptor_blocks_per_trans() 90 * Simply initialise a new transaction. Initialize it in 92 * have an existing running transaction: we only make a new transaction [all …]
|
| /kernel/linux/linux-6.6/fs/jbd2/ |
| D | checkpoint.c | 26 * Unlink a buffer from a transaction checkpoint list. 32 transaction_t *transaction = jh->b_cp_transaction; in __buffer_unlink() local 36 if (transaction->t_checkpoint_list == jh) { in __buffer_unlink() 37 transaction->t_checkpoint_list = jh->b_cpnext; in __buffer_unlink() 38 if (transaction->t_checkpoint_list == jh) in __buffer_unlink() 39 transaction->t_checkpoint_list = NULL; in __buffer_unlink() 67 * transaction to complete. If there is absolutely no way in __jbd2_log_wait_for_space() 147 * Perform an actual checkpoint. We take the first transaction on the 158 transaction_t *transaction; in jbd2_log_do_checkpoint() local 176 * OK, we need to start writing disk blocks. Take one transaction in jbd2_log_do_checkpoint() [all …]
|
| D | transaction.c | 3 * linux/fs/jbd2/transaction.c 9 * Generic filesystem transaction handling code; part of the ext2fs 46 pr_emerg("JBD2: failed to create transaction cache\n"); in jbd2_journal_init_transaction_cache() 58 void jbd2_journal_free_transaction(transaction_t *transaction) in jbd2_journal_free_transaction() argument 60 if (unlikely(ZERO_OR_NULL_PTR(transaction))) in jbd2_journal_free_transaction() 62 kmem_cache_free(transaction_cache, transaction); in jbd2_journal_free_transaction() 68 * Simply initialise a new transaction. Initialize it in 70 * have an existing running transaction: we only make a new transaction 75 * new transaction and we can't block without protecting against other 81 transaction_t *transaction) in jbd2_get_transaction() argument [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ipa/ |
| D | gsi_trans.h | 25 /* Maximum number of TREs in an IPA immediate command transaction */ 29 * struct gsi_trans - a GSI transaction 31 * Most fields in this structure for internal use by the transaction core code: 33 * @channel_id: Channel number transaction is associated with 34 * @cancelled: If set by the core code, transaction was cancelled 35 * @rsvd_count: Number of TREs reserved for this transaction 37 * @len: Number of bytes sent or received by the transaction 38 * @data: Preserved but not touched by the core transaction code 43 * @completion: Completed when the transaction completes 44 * @byte_count: TX channel byte count recorded when transaction committed [all …]
|
| D | gsi_private.h | 20 * gsi_trans_move_complete() - Mark a GSI transaction completed 21 * @trans: Transaction whose state is to be updated 26 * gsi_trans_move_polled() - Mark a transaction polled 27 * @trans: Transaction whose state is to be updated 32 * gsi_trans_complete() - Complete a GSI transaction 33 * @trans: Transaction to complete 35 * Marks a transaction complete (including freeing it). 40 * gsi_channel_trans_mapped() - Return a transaction mapped to a TRE index 41 * @channel: Channel associated with the transaction 42 * @index: Index of the TRE having a transaction [all …]
|
| D | gsi_trans.c | 24 * A GSI transaction abstracts the behavior of a GSI channel by representing 28 * by the GSI transaction core, allowing users to simply describe operations 29 * to be performed. When a transaction has completed a callback function 31 * cleanup of resources associated with the transaction. 33 * To perform an operation (or set of them), a user of the GSI transaction 34 * interface allocates a transaction, indicating the number of TREs required 36 * for use in the transaction and the allocation succeeds. This way 39 * transaction are also allocated when the transaction is allocated. 41 * Operations performed as part of a transaction are represented in an array 42 * of Linux scatterlist structures, allocated with the transaction. These [all …]
|
| /kernel/linux/linux-6.6/Documentation/filesystems/ |
| D | xfs-delayed-logging-design.rst | 13 themselves with the general concepts of how transaction processing in XFS works. 16 transaction reservations are structured and accounted, and then move into how we 59 transactions. Permanent transaction reservations can take reservations that span 68 In the code, a one-shot transaction pattern looks somewhat like this:: 72 <join item to transaction> 76 As items are modified in the transaction, the dirty regions in those items are 77 tracked via the transaction handle. Once the transaction is committed, all 79 space that was taken at the transaction allocation time. 81 In contrast, a permanent transaction is made up of multiple linked individual 97 While this might look similar to a one-shot transaction, there is an important [all …]
|
| D | journalling.rst | 42 this use jbd2_journal_start() which returns a transaction handle. 45 which indicates the end of a transaction are nestable calls, so you can 46 reenter a transaction if necessary, but remember you must call 48 jbd2_journal_start() before the transaction is completed (or more 52 Inside each transaction you need to wrap the modifications to the 59 uncommitted transaction. At this point you are at last ready to modify a 74 single outstanding transaction at any one time, remember nothing commits 76 the transaction at the end of each file/inode/address etc. operation you 83 if there isn't enough space in the journal for your transaction (based 96 transaction. I advise having a look at at least ext4_jbd.h to see the [all …]
|
| /kernel/linux/linux-5.10/Documentation/filesystems/ |
| D | xfs-delayed-logging-design.rst | 26 changes in the new transaction that is written to the log. 31 transaction:: 33 Transaction Contents LSN 42 In other words, each time an object is relogged, the new transaction contains 48 (increasing) LSN of each subsequent transaction - the LSN is effectively a 49 direct encoding of the location in the log of the transaction. 52 transactions. These transaction are known as rolling transactions, and require 53 a special log reservation known as a permanent transaction reservation. A 54 typical example of a rolling transaction is the removal of extents from an 55 inode which can only be done at a rate of two extents per transaction because [all …]
|
| D | journalling.rst | 42 this use jbd2_journal_start() which returns a transaction handle. 45 which indicates the end of a transaction are nestable calls, so you can 46 reenter a transaction if necessary, but remember you must call 48 jbd2_journal_start() before the transaction is completed (or more 52 Inside each transaction you need to wrap the modifications to the 59 uncommitted transaction. At this point you are at last ready to modify a 74 single outstanding transaction at any one time, remember nothing commits 76 the transaction at the end of each file/inode/address etc. operation you 83 if there isn't enough space in the journal for your transaction (based 96 transaction. I advise having a look at at least ext4_jbd.h to see the [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ipa/ |
| D | gsi_trans.h | 25 * struct gsi_trans - a GSI transaction 27 * Most fields in this structure for internal use by the transaction core code: 28 * @links: Links for channel transaction lists by state 30 * @channel_id: Channel number transaction is associated with 31 * @cancelled: If set by the core code, transaction was cancelled 32 * @tre_count: Number of TREs reserved for this transaction 35 * @data: Preserved but not touched by the core transaction code 40 * @completion: Completed when the transaction completes 41 * @byte_count: TX channel byte count recorded when transaction committed 42 * @trans_count: Channel transaction count when committed (for BQL accounting) [all …]
|
| D | gsi_trans.c | 24 * A GSI transaction abstracts the behavior of a GSI channel by representing 28 * by the GSI transaction core, allowing users to simply describe commands 29 * to be performed. When a transaction has completed a callback function 31 * cleanup of resources associated with the transaction. 33 * To perform a command (or set of them), a user of the GSI transaction 34 * interface allocates a transaction, indicating the number of TREs required 36 * for use in the transaction and the allocation succeeds. This way 38 * as early as possible. All resources required to complete a transaction 39 * are allocated at transaction allocation time. 41 * Commands performed as part of a transaction are represented in an array [all …]
|
| D | gsi_private.h | 19 /* Return the entry that follows one provided in a transaction pool */ 23 * gsi_trans_move_complete() - Mark a GSI transaction completed 24 * @trans: Transaction to commit 29 * gsi_trans_move_polled() - Mark a transaction polled 30 * @trans: Transaction to update 35 * gsi_trans_complete() - Complete a GSI transaction 36 * @trans: Transaction to complete 38 * Marks a transaction complete (including freeing it). 43 * gsi_channel_trans_mapped() - Return a transaction mapped to a TRE index 44 * @channel: Channel associated with the transaction [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | journal-head.h | 16 typedef unsigned int tid_t; /* Unique transaction ID */ 17 typedef struct transaction_s transaction_t; /* Compound transaction type */ 50 * the currently running transaction 69 * Pointer to the compound transaction which owns this buffer's 70 * metadata: either the running transaction or the committing 71 * transaction (if there is one). Only applies to buffers on a 72 * transaction's data or metadata journaling list. 80 * Pointer to the running compound transaction which is currently 81 * modifying the buffer's metadata, if there was already a transaction 82 * committing it when the new transaction touched it. [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | journal-head.h | 16 typedef unsigned int tid_t; /* Unique transaction ID */ 17 typedef struct transaction_s transaction_t; /* Compound transaction type */ 50 * the currently running transaction 69 * Pointer to the compound transaction which owns this buffer's 70 * metadata: either the running transaction or the committing 71 * transaction (if there is one). Only applies to buffers on a 72 * transaction's data or metadata journaling list. 80 * Pointer to the running compound transaction which is currently 81 * modifying the buffer's metadata, if there was already a transaction 82 * committing it when the new transaction touched it. [all …]
|
| /kernel/linux/linux-6.6/Documentation/powerpc/ |
| D | transactional_memory.rst | 21 A simple transaction looks like this:: 41 /* Retry the transaction if it failed because it conflicted with 50 example, the transaction completes as though it were normal straight-line code 58 transaction, the transaction will be aborted by the CPU. Register and memory 66 Causes of transaction aborts 78 Syscalls made from within an active transaction will not be performed and the 79 transaction will be doomed by the kernel with the failure code TM_CAUSE_SYSCALL 82 Syscalls made from within a suspended transaction are performed as normal and 83 the transaction is not explicitly doomed by the kernel. However, what the 84 kernel does to perform the syscall may result in the transaction being doomed [all …]
|
| /kernel/linux/linux-5.10/Documentation/powerpc/ |
| D | transactional_memory.rst | 21 A simple transaction looks like this:: 41 /* Retry the transaction if it failed because it conflicted with 50 example, the transaction completes as though it were normal straight-line code 58 transaction, the transaction will be aborted by the CPU. Register and memory 66 Causes of transaction aborts 78 Syscalls made from within an active transaction will not be performed and the 79 transaction will be doomed by the kernel with the failure code TM_CAUSE_SYSCALL 82 Syscalls made from within a suspended transaction are performed as normal and 83 the transaction is not explicitly doomed by the kernel. However, what the 84 kernel does to perform the syscall may result in the transaction being doomed [all …]
|
| /kernel/linux/linux-6.6/fs/btrfs/ |
| D | transaction.c | 18 #include "transaction.h" 41 * Transaction states and transitions 43 * No running transaction (fs tree blocks are not modified) 48 * Transaction N [[TRANS_STATE_RUNNING]] 50 * | New trans handles can be attached to transaction N by calling all 55 * | transaction N 57 * Transaction N [[TRANS_STATE_COMMIT_PREP]] 60 * | the race and the rest will wait for the winner to commit the transaction. 62 * | The winner will wait for previous running transaction to completely finish 65 * Transaction N [[TRANS_STATE_COMMIT_START]] [all …]
|
| /kernel/linux/linux-5.10/drivers/staging/octeon-usb/ |
| D | octeon-hcd.c | 106 * @CVMX_USB_STATUS_OK: The transaction / operation finished without 109 * @CVMX_USB_STATUS_CANCEL: The transaction was canceled while in flight 111 * @CVMX_USB_STATUS_ERROR: The transaction aborted with an unexpected 113 * @CVMX_USB_STATUS_STALL: The transaction received a USB STALL response 115 * @CVMX_USB_STATUS_XACTERR: The transaction failed with an error from the 117 * @CVMX_USB_STATUS_DATATGLERR: The transaction failed with a data toggle 119 * @CVMX_USB_STATUS_BABBLEERR: The transaction failed with a babble error 120 * @CVMX_USB_STATUS_FRAMEERR: The transaction failed with a frame error 236 * enum represents all of the possible stages a transaction can 239 * transaction with a simple clearing of bit 0. [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/host/ |
| D | octeon-hcd.c | 108 * @CVMX_USB_STATUS_OK: The transaction / operation finished without 111 * @CVMX_USB_STATUS_CANCEL: The transaction was canceled while in flight 113 * @CVMX_USB_STATUS_ERROR: The transaction aborted with an unexpected 115 * @CVMX_USB_STATUS_STALL: The transaction received a USB STALL response 117 * @CVMX_USB_STATUS_XACTERR: The transaction failed with an error from the 119 * @CVMX_USB_STATUS_DATATGLERR: The transaction failed with a data toggle 121 * @CVMX_USB_STATUS_BABBLEERR: The transaction failed with a babble error 122 * @CVMX_USB_STATUS_FRAMEERR: The transaction failed with a frame error 238 * enum represents all of the possible stages a transaction can 241 * transaction with a simple clearing of bit 0. [all …]
|
| /kernel/linux/linux-5.10/fs/btrfs/ |
| D | transaction.c | 16 #include "transaction.h" 29 * Transaction states and transitions 31 * No running transaction (fs tree blocks are not modified) 36 * Transaction N [[TRANS_STATE_RUNNING]] 38 * | New trans handles can be attached to transaction N by calling all 43 * | transaction N 45 * Transaction N [[TRANS_STATE_COMMIT_START]] 47 * | Will wait for previous running transaction to completely finish if there 53 * | - Wait for current transaction to be committed by others. 57 * | to this running transaction. [all …]
|
| /kernel/linux/linux-6.6/fs/ntfs/ |
| D | usnjrnl.h | 3 * usnjrnl.h - Defines for NTFS kernel transaction log ($UsnJrnl) handling. 20 * Transaction log ($UsnJrnl) organization: 22 * The transaction log records whenever a file is modified in any way. So for 28 * The transaction log is in the $Extend directory which is in the root 29 * directory of each volume. If it is not present it means transaction 30 * logging is disabled. If it is present it means transaction logging is 34 * To determine whether the transaction logging is enabled or in the process 38 * If the flag VOLUME_DELETE_USN_UNDERWAY is set it means the transaction log 40 * transaction log is enabled. 42 * The transaction log consists of two parts; the $DATA/$Max attribute as well [all …]
|
| /kernel/linux/linux-5.10/fs/ntfs/ |
| D | usnjrnl.h | 3 * usnjrnl.h - Defines for NTFS kernel transaction log ($UsnJrnl) handling. 20 * Transaction log ($UsnJrnl) organization: 22 * The transaction log records whenever a file is modified in any way. So for 28 * The transaction log is in the $Extend directory which is in the root 29 * directory of each volume. If it is not present it means transaction 30 * logging is disabled. If it is present it means transaction logging is 34 * To determine whether the transaction logging is enabled or in the process 38 * If the flag VOLUME_DELETE_USN_UNDERWAY is set it means the transaction log 40 * transaction log is enabled. 42 * The transaction log consists of two parts; the $DATA/$Max attribute as well [all …]
|
| /kernel/linux/linux-5.10/tools/perf/pmu-events/arch/x86/cascadelakex/ |
| D | other.json | 11 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 24 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 37 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 50 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 63 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 76 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 89 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 102 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 115 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", 128 …and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.", [all …]
|