Method for handling completion packets with a non-successful completion status
First Claim
Patent Images
1. A method, comprising:
- receiving at a general input/output port for a requesting device one or more completion packets for a request transaction, the one or more completion packets are for a request transaction addressed to an agent at a completing device and initiated from the general input/output port, each completion packet including a completion packet header, the request transaction to include one of a memory read request, an input/output read request and a configuration read request, the general input/output port to implement a communication stack including a physical layer, a data link layer and a transaction layer, the transaction layer to include disassembling the completion packet header included with each completion packet, the completion packet header to include a transaction identification for the request transaction, a completion status of the request transaction and a completer identification for the agent at the completing device; and
determining whether the completion packet header included with each completion packet includes a completion status that indicates other than a successful completion of the request transaction, wherein based on an indication of other than a successful completion of the request transaction;
storing the completer identification in a first register,indicating in a second register that an unsuccessful completion was received for the request transaction, andusing the completer identification in the first register and the indication in the second register to report an error condition associated with the request transaction.
1 Assignment
0 Petitions
Accused Products
Abstract
A requesting device and a completer device are coupled via a high-speed serial interface within a computer system. The requesting device transmits a packet for a request transaction to a completer device. The completer device checks for error conditions in the course of servicing the request. If an error condition is found then the completer device transmits a completion packet with a completion status of something other than successful. The completion packet includes a completer identification field. The requesting device records the completer identification value and indicates in a register that a completion packet has been received with a non-successful completion status.
-
Citations
18 Claims
-
1. A method, comprising:
-
receiving at a general input/output port for a requesting device one or more completion packets for a request transaction, the one or more completion packets are for a request transaction addressed to an agent at a completing device and initiated from the general input/output port, each completion packet including a completion packet header, the request transaction to include one of a memory read request, an input/output read request and a configuration read request, the general input/output port to implement a communication stack including a physical layer, a data link layer and a transaction layer, the transaction layer to include disassembling the completion packet header included with each completion packet, the completion packet header to include a transaction identification for the request transaction, a completion status of the request transaction and a completer identification for the agent at the completing device; and determining whether the completion packet header included with each completion packet includes a completion status that indicates other than a successful completion of the request transaction, wherein based on an indication of other than a successful completion of the request transaction; storing the completer identification in a first register, indicating in a second register that an unsuccessful completion was received for the request transaction, and using the completer identification in the first register and the indication in the second register to report an error condition associated with the request transaction. - View Dependent Claims (2, 3, 7, 10, 11)
-
-
4. A method, comprising:
-
responding to a request transaction from a requesting device at a completing device that includes a general input/output port implementing a communication stack including a physical layer, a data link layer and a transaction layer, the request transaction includes one of a memory read request, an input/output read request and a configuration read request, the request transaction associated with a request packet including a requester identification and a tag for the request transaction; and determining whether an error condition associated with servicing the request transaction exists, wherein if an error condition exists; the transaction layer implemented at the general input/output port to include assembling a completion packet for the request transaction, the completion packet to include a completion packet header, the completion packet header to include a completion status indicating other than successful completion of the request transaction, the requester identification, the tag for the request transaction and a completer identification, transmitting the completion packet to the requesting device from the general input/output port, and storing the requester identification and the tag for the request transaction at a location in the completing device. - View Dependent Claims (5, 6, 8, 9, 12, 13, 14)
-
-
15. A system, comprising:
-
a requesting device to initiate a request transaction from a general input/output port for the requesting device, the request transaction to include one of a memory read request, an input/output read request and a configuration read request, the request transaction associated with a request packet including a requester identification and a tag for the request transaction; and a completing device to include a general input/output port to implement a communication stack including a physical layer, a data link layer and a transaction layer, the completing device to include an agent for which the request transaction was addressed, the completing device to determine whether an error condition associated with servicing the request transaction exists, wherein if an error condition exists; the transaction layer implemented at the completing device'"'"'s general input/output port assembles a completion packet for the request transaction, the completion packet to include a completion packet header, the completion packet header to include a completion status indicating other than successful completion of the request transaction, the requester identification and the tag for the request transaction, transmitting the completion packet to the requesting device from the general input/output port for the completing device via a communication link, and storing the requester identification and the tag for the request transaction at a location in the completing device. - View Dependent Claims (16, 17, 18)
-
Specification