# US 7,609,643 B2 · Transfer of error-analysis and statistical data after retry in a fibre channel input/output system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,609,643 B2
- Document ID: US7609643B2
- Status: Granted
- Kind: B2
- Application number: 11/869,173
- Filed: 2007-10-09
- Published: 2008-02-07
- Granted: 2009-10-27
- Earliest claimed: 2003-03-03
- Assignees: International Business Machines Corporation
- Inventors: Robert J. Dugan; John R. Flanagan; Giles R. Frazier; Matthew J. Kalos; Louis W. Ricci; Kenneth M Trowell; Harry M. Yudenfriend
- Web page: https://patentgrep.com/patent/US7609643B2

## CPC

- H04L 41/0677: Localisation of faults
- H04L 1/20: using signal quality detector
- H04L 43/0811: by checking connectivity
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A computer Input/Output system having a fabric, a control unit (CU) and a host computes including a channel, the channel having a channel port connected by a first link to a channel neighbor port of the fabric, and the control unit having a CU port connected by a second link to a CU neighbor port on the fabric. When an error is detected in the link or protocol between the channel and the control unit, after a retry of the failing operation is performed, error data are reported to the channel by the channel, the channel port, the channel neighbor port, the control unit, the CU port and the CU neighbor port and sent to the channel. The error data are provided to the host computer for analysis.

## Claims

### Claim 1

A method in a computer I/O system having a channel in network communications with a control unit, the method comprising:
initiating by the channel, an I/O operation to the control unit;
detecting by the channel, a link/protocol error in a link between the channel and the control unit;
gathering by the channel, error data about the link/protocol error;
receiving by the channel, error data about the link/protocol error gathered in the control unit;
retrying the I/O operation one or more times; and
making the error data received from the control unit and gathered by the channel available to a host computer for analysis.

### Claim 2 (depends on 1)

The method according to claim 1, wherein the error data gathered in the channel include port error data from a port connecting the channel to the network.

### Claim 3 (depends on 1)

The method according to claim 1, wherein the error data gathered in the control unit includes port error data from a port connecting the control unit to the network.

### Claim 4 (depends on 1)

The method according to claim 1, wherein the channel comprises a Purge Path Extended (PPE) facility further comprising:
receiving by the channel, error data about the link/protocol error gathered in the control unit;
transmitting a PPE request via said network to the control unit when a transmission error is detected, the PPE request for error data about the link/protocol, error gathered in the control unit; and
storing in said PPE facility error data accepted in response to said PPE request; and
said PPE facility further providing an I/O interrupt to the host computer making available to the host computer error data about the link/protocol error in said storage.

### Claim 5 (depends on 4)

The method according to claim 4, further comprising:
if the network comprises a fabric, said PPE facility sending a Read Link Status (RLS) request to the channel neighbor port requesting error data about the link/protocol error kept by the channel neighbor port;
receiving by the channel, Link Error Status Block (LESB) data sent by the channel neighbor port in response to said RLS request; and
said PPE facility further accepting error data from the fabric sent in response to said PPE request;
storing in said PPE facility, error data accepted in response to said RLS request and said PPE request;
said PPE facility further providing an I/O interrupt to the host computer making available to the host computer error data in said storage.

### Claim 6 (depends on 4)

The method according to claim 4, wherein said PPE request includes a reason code for the detected transmission error.

### Claim 7 (depends on 4)

The method according to claim 4, wherein said PPE facility accepts and stores LESB data from the channel port.

### Claim 8 (depends on 4)

The method according to claim 4, wherein said PPE facility accepts and stores model dependent error data from the channel.

### Claim 9 (depends on 4)

The method according to claim 4, wherein said PPE facility accepts and stores Link Error Status Block (LESB) data and model dependent data transmitted from the control unit to the channel responsive to said PPE request.

### Claim 10

A channel in a computer I/O system adapted to communicate with a control unit by way of a network, wherein the channel is configured to perform a method comprising:
initiating by the channel, an I/O operation to the control unit;
detecting by the channel, a link/protocol error in a link between the channel and the control unit;
gathering by the channel, error data about the link/protocol error;
receiving by the channel, error data about the link/protocol error gathered in the control unit;
retrying the I/O operation one or more times; and
making the error data received from the control unit and gathered by the channel available to a host computer for analysis.

### Claim 11 (depends on 10)

The channel according to claim 10, wherein the error data gathered in the channel include port error data from a port connecting the channel to the network.

### Claim 12 (depends on 10)

The channel according to claim 10, wherein the error data gathered in the control unit includes port error data from a port connecting the control unit to the network.

### Claim 13 (depends on 10)

The channel according to claim 10, wherein the channel comprises a Purge Path Extended (PPE) facility further comprising:
receiving by the channel, error data about the link/protocol error gathered in the control unit;
transmitting a PPE request via said network to the control unit when a transmission error is detected, the PPE request for error data about the link/protocol error gathered in the control unit; and
storing in said PPE facility error data accepted in response to said PPE request; and
said PPE facility further providing an I/O interrupt to the host computer making available to the host computer error data about the link/protocol error in said storage.

### Claim 14 (depends on 13)

The channel according to claim 13, further comprising:
if the network comprises a fabric, said PPE facility sending a Read Link Status (RLS) request to the channel neighbor port requesting error data about the link/protocol error kept by the channel neighbor port;
receiving by the channel, Link Error Status Block (LESB) data sent by the channel neighbor port in response to said RLS request; and
said PPE facility further accepting error data from the fabric sent in response to said PPE request;
storing in said PPE facility, error data accepted in response to said RLS request and said PPE request;
said PPE facility further providing an I/O interrupt to the host computer making available to the host computer error data in said storage.

### Claim 15 (depends on 13)

The channel according to claim 13, wherein said PPE request includes a reason code for the detected transmission error.

### Claim 16 (depends on 13)

The channel according to claim 13, wherein said PPE facility accepts and stores LESB data from the channel port.

### Claim 17 (depends on 13)

The channel according to claim 13, wherein said PPE facility accepts and stores model dependent error data from the channel.

### Claim 18 (depends on 13)

The channel according to claim 13, wherein said PPE facility accepts and stores Link Error Status Block (LESB) data and model dependent data transmitted from the control unit to the channel responsive to said PPE request.
