Method for detecting hang or dead lock conditions
AssigneeIntel Corporation
InventorRobert Roth
Life of this patent
Estimating the term…
Abstract
A scheme for monitoring links in a point-to-point architecture computer system is discussed. The scheme monitors labels for transactions to determine if they have been reissued within a user selected time window. A corresponding position in a register is updated to reflect the value of the transaction identifier. Subsequently, after the expiration of a counter, the corresponding position in the registers is compared to other predetermined positions in other registers to determine if the transaction identifier has been used (reissued). Otherwise, a possible hang condition might have occurred.
Claims22
A method for tracing message transactions on a plurality of links comprising:
- writing a binary one value to a predetermined position in a first register for each time a particular transaction identifier value occurs for a duration of either a counter reaching a set counter value or timer equals a predetermined value;
- subsequently writing a binary one value to a predetermined position in a second register for each time a particular transaction identifier value occurs for a duration of the counter;
- and
- checking the value of the register to see if there are binary one values in the predetermined position in the first register to the corresponding position in the second register, if so, shifting the binary one value from the predetermined position in the second register to the predetermined position in the first register, otherwise, stopping the trace or identifying the event for storage.
A method for tracing message transactions for a plurality of message classes for each direction of a link for a plurality of links comprising;
- dedicating registers for each of the plurality of classes for each direction of a link for a plurality of links;
- and for each message class performing;
- writing a binary one value to a predetermined position in a first register for each time a particular transaction identifier value occurs for a duration of a counter reaching a set counter value or timer equals a predetermined value;
- subsequently writing a binary one value to a predetermined position in a second register for each time a particular transaction identifier value occurs for a duration of the counter;
- and
- checking the value of the register to see if there are binary one values in the predetermined position in the first register to the corresponding position in the second register, if so, shifting the binary one value from the predetermined position in the second register to the predetermined position in the first register, otherwise, stopping the trace.
A method for tracing message transactions on a plurality of links comprising:
- writing a binary one value to a predetermined position in a first register for each time a particular transaction identifier value occurs for a duration of a counter;
- subsequently writing a binary one value to a predetermined position in a plurality of registers to represent for each time a particular transaction identifier value occurs for a duration of the counter;
- and
- checking the value of the register to see if there are binary one values in the predetermined position in the first register to the corresponding position in the second register, if so, shifting the binary one value from the predetermined position in the second register to the predetermined position in the first register, otherwise, stopping the trace.
An article of manufacture comprising:
- a machine-readable medium having a plurality of machine readable instructions, wherein when the instructions are executed by a system, the instructions provide to tracing message transactions on a plurality of links comprising for:
- writing a binary one value to a predetermined position in a first register for each time a particular transaction identifier value occurs for a duration of a counter reaching a set counter value or timer equals a predetermined value;
- subsequently writing a binary one value to a predetermined position in a plurality of registers to represent for each time a particular transaction identifier value occurs for a duration of the counter;
- and
- checking the value of the register to see if there are binary one values in the predetermined position in the first register to the corresponding position in the second register, if so, shifting the binary one value from the predetermined position in the second register to the predetermined position in the first register, otherwise, stopping the trace.
An article of manufacture comprising:
- a machine-readable medium having a plurality of machine readable instructions, wherein when the instructions are executed by a system, the instructions provide for tracing message transactions for a plurality of message classes for each direction of a link for a plurality of links comprising;
- dedicating registers for each of the plurality of classes for each direction of a link for a plurality of links;
- and for each message class performing:
- writing a binary one value to a predetermined position in a first register for each time a particular transaction identifier value occurs for a duration of a counter;
- subsequently writing a binary one value to a predetermined position in a second register for each time a particular transaction identifier value occurs for a duration of the counter reaching a set counter value or timer equals a predetermined value;
- and
- checking the value of the register to see if there are binary one values in the predetermined position in the first register to the corresponding position in the second register, if so, shifting the binary one value from the predetermined position in the second register to the predetermined position in the first register, otherwise, stopping the trace.
Dependencies are inferred from the claim text.