CPC G06F 11/2007 (2013.01) [G06F 11/07 (2013.01); G06F 11/203 (2013.01); G06F 2201/805 (2013.01)] | 20 Claims |
1. A method comprising:
receiving a transaction request at a gateway of a link between a host processor and a device;
allocating an entry for the transaction request in a local request tracker of the gateway;
sending, by dispatch logic of the gateway, a link request, to a port of the gateway, where the link request is based on the transaction request;
in response to an isolation trigger:
entering an error isolation mode by moving the port into isolation;
completing in-process transaction requests with entries in the local request tracker for which a link request has been dispatched and no response yet received; and
marking the local request tracker entries as locked and disabling allocation of the entries; and
on receiving a response to an in-process transaction request while in the error isolation mode:
dropping the response;
marking the associated entry as unlocked and enabling allocation of the entry; and
completing a new transaction request for the entry at the gateway by sending completion response without dispatching a new link request to the port.
|