Multiprocessing system having coherency-related error logging capabilities
First Claim
1. An apparatus for logging errors, comprising:
- a protocol agent configured to perform a coherency action in response to an access to a coherency unit by a processing node wherein said protocol agent includes a plurality of state machines, and a first of said plurality of state machines is configured to perform said coherency action in response to said access concurrent with others of said plurality of state machines performing other coherency actions; and
a storage device configured to store an indication of said protocol agent upon detection of an error by said protocol agent, said error corresponding to said coherency action;
wherein said indication further identifies one of said plurality of state machines, and wherein said one of said plurality of state machines is performing said coherency action for which said error is detected.
2 Assignments
0 Petitions
Accused Products
Abstract
Protocol agents involved in the performance of global coherency activity detect errors with respect to the activity being performed. The errors are logged by a computer system such that diagnostic software may be executed to determine the error detected and to trace the error to the erring software or hardware. In particular, information regarding the first error to be detected is logged. Subsequent errors may receive more or less logging depending upon programmable configuration values. Additionally, those errors which receive full logging may be programmably selected via error masks. The protocol agents each comprise multiple independent state machines which independently process requests. If the request which a particular state machine is processing results in an error, the particular state machine may enter a freeze state. Information regarding the request which is collected by the state machine may thereby be saved for later access. A state machine freezes upon detection of the error if a maximum number of the multiple state machines are not already frozen and the aforementioned error mask indicates that full error logging is employed for the detected error. Therefore, at least a minimum number of the multiple state machines remain functioning even in the presence of a large number of errors. Still further, prior to entering the freeze state, the protocol state machines may transition through a recovery state in which resources not used for error logging purposes are freed from the erring request.
89 Citations
17 Claims
-
1. An apparatus for logging errors, comprising:
-
a protocol agent configured to perform a coherency action in response to an access to a coherency unit by a processing node wherein said protocol agent includes a plurality of state machines, and a first of said plurality of state machines is configured to perform said coherency action in response to said access concurrent with others of said plurality of state machines performing other coherency actions; and a storage device configured to store an indication of said protocol agent upon detection of an error by said protocol agent, said error corresponding to said coherency action; wherein said indication further identifies one of said plurality of state machines, and wherein said one of said plurality of state machines is performing said coherency action for which said error is detected. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for logging errors comprising:
-
detecting an error with respect to a transaction being handled by one of a plurality of state machines comprising a protocol agent; transitioning to a recovery state within said one of said plurality of state machines upon said detecting, whereby resources occupied by said transaction are freed; and transitioning to a freeze state within said one of said plurality of state machines, whereby transaction information regarding said transaction is preserved, wherein said transitioning to a freeze state is replaced with transitioning to an idle state if more than a maximum number of said plurality of state machines are in said freeze state. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A computer system comprising:
-
a first processing node including a request agent, wherein said request agent is configured to detect and log a first error with respect to a coherency request initiated therefrom, and wherein said coherency request indicates an access right requested by said first processing node for a particular coherency unit, and wherein said coherency request is conveyed to a home node of said coherency unit; and a second processing node including a home agent, wherein said home agent is configured to detect and log a second error with respect to a coherency demand initiated therefrom in response to said coherency request, and wherein said coherency demand indicates a coherency state to be stored with respect to said particular coherency unit by a particular processing node receiving said coherency demand. - View Dependent Claims (15)
-
-
16. An apparatus for logging errors, comprising:
-
a first protocol agent configured to perform a coherency action in response to an access to a coherency unit by a processing node, wherein said protocol agent includes a plurality of state machines, and a first of said plurality of state machines is configured to perform said coherency action in response to said access concurrent with others of said plurality of state machines performing other coherency actions; and a storage device configured to store an indication of said protocol agent upon detection of an error by said protocol agent, said error corresponding to said coherency action; wherein said one of said plurality of state machines which detects said error includes a freeze state, and wherein said freeze state is entered upon detection of said error if at least a remaining one of said plurality of state machines continues operating to handle other transactions; wherein said one of said plurality of state machines includes an idle state from which another coherency action may be initiated by said one of said plurality of state machines, and wherein said one of said plurality of state machines is configured to transition to said idle state upon detecting said error instead of transitioning to said freeze state if a maximum number of said plurality of state machines are in said freeze state. - View Dependent Claims (17)
-
Specification