Transaction diagnostic block
First Claim
1. A computer program product for providing diagnostic information on transaction aborts, the computer program product comprising:
- a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising;
detecting, by a processor, an abort of a transaction, the transaction comprising one or more instructions, and the transaction effectively delaying committing transactional stores to main memory until completion of a selected transaction;
determining, by the processor, whether diagnostic information is to be stored into a transaction diagnostic block (TDB) based on the abort; and
based on the determining indicating diagnostic information is to be stored, storing diagnostic information in the transaction diagnostic block, the storing diagnostic information in the transaction diagnostic block comprising;
determining a reason for the abort of the transaction;
based on the reason for the abort, determining an address of an instruction corresponding to the transaction that aborted, wherein the address depends on the reason for the abort; and
based on determining the address of the instruction corresponding to the transaction that aborted, storing the address of the instruction corresponding to the transaction that aborted in the transaction diagnostic block.
1 Assignment
0 Petitions
Accused Products
Abstract
When an abort of a transaction occurs, a determination is made as to whether diagnostic information is to be stored in one or more transaction diagnostic blocks (TDBs). There are different types of transaction diagnostic blocks to accept diagnostic information depending on the type of abort and other considerations. As examples, there are a program-specified TDB in which information is stored if a valid TDB address is provided in a transaction begin instruction; a program interruption TDB, which is stored into when the program is aborted due to an interruption; and a program interception TDB, which is stored into when an abort results in an interception.
173 Citations
19 Claims
-
1. A computer program product for providing diagnostic information on transaction aborts, the computer program product comprising:
a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; detecting, by a processor, an abort of a transaction, the transaction comprising one or more instructions, and the transaction effectively delaying committing transactional stores to main memory until completion of a selected transaction; determining, by the processor, whether diagnostic information is to be stored into a transaction diagnostic block (TDB) based on the abort; and based on the determining indicating diagnostic information is to be stored, storing diagnostic information in the transaction diagnostic block, the storing diagnostic information in the transaction diagnostic block comprising; determining a reason for the abort of the transaction; based on the reason for the abort, determining an address of an instruction corresponding to the transaction that aborted, wherein the address depends on the reason for the abort; and based on determining the address of the instruction corresponding to the transaction that aborted, storing the address of the instruction corresponding to the transaction that aborted in the transaction diagnostic block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
13. A computer system for providing diagnostic information on transaction aborts, the computer system comprising:
-
a memory; and a processor in communications with the memory, wherein the computer system is configured to perform a method, said method comprising; detecting, by a processor, an abort of a transaction, the transaction comprising one or more instructions, and the transaction effectively delaying committing transactional stores to main memory until completion of a selected transaction; determining, by the processor, whether diagnostic information is to be stored into a transaction diagnostic block (TDB) based on the abort; and based on the determining indicating diagnostic information is to be stored, storing diagnostic information in the transaction diagnostic block, the storing diagnostic information in the transaction diagnostic block comprising; determining a reason for the abort of the transaction; based on the reason for the abort, determining an address of an instruction corresponding to the transaction that aborted, wherein the address depends on the reason for the abort; and based on determining the address of the instruction corresponding to the transaction that aborted, storing the address of the instruction corresponding to the transaction that aborted in the transaction diagnostic block. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification