Asynchronous channel error mechanism
AssigneeInternational Business Machines Corporation
InventorsDavid O. Lewis, John W. Reed
Life of this patent
Estimating the term…
Abstract
An apparatus is provided for assembling information concerning the occurrence of a channel error to form a channel error event consisting of four fields: a channel function field; a field identifying the I/O register in use at the occurrence of the channel error; a field identifying the particular I/O adapter using the channel when the error occurred; and a field specifying the type of channel error. The four-field channel error event is placed in an I/O event stack accessible to the CPU, and the CPU is notified of the addition to the I/O event stack. If the attempt to store the channel error event on the I/O event stack fails, the channel is stopped until the CPU signals the channel to restart and to again attempt to log the channel error event on the I/O event stack.
Claims8
In channel error logging apparatus for a computer system having an addressable storage for storing an input/output (I/O) event stack with the capacity to store a plurality of I/O events, a central processing unit (CPU) for retrieving I/O events from the I/O event stack in storage and for processing said I/O events where the retrieving and processing of said I/O events from said I/O event stack is performed by said CPU asynchronously to the placement of said I/O events on the I/O event stack, a plurality of I/O adapters connected to control I/O devices, a channel connecting the plurality of I/O adapters to the CPU and the storage, said channel including polling means for polling said I/O adapters on a priority basis for service requirements, said polling means, upon finding an I/O adapter requiring service, halting polling of other I/O adapters until released by the channel upon completion of servicing of the I/O adapter requiring service, and a plurality of I/O registers accessible by the channel and the CPU, wherein each register is individually identifiable and where at least one I/O register contains an address for addressing said I/O event stack and where other I/O registers are used in association with an I/O adapter to maintain command and data addresses for performing an I/O operation, the improvement comprising:
- means for selectively giving said CPU or said channel access to said at least one I/O register which contains an address usable by said CPU or said channel for addressing the I/O event stack to store or retrieve a channel error I/O event on said stack;
- means in said channel for indicating the occurrence and type of channel errors occurring in the channel and in the plurality of I/O adapters in connection with an I/O operation;
- means responsive to the means for indicating the occurrence and type of channel errors for forming a channel error I/O event, said event including,
- a channel function field for identifying the type of I/O operation being performed at the occurrence of the channel error,
- a first identification field for identifying the I/O register in use at the occurrence of the channel error,
- a second identification field for identifying the I/O adapter using the channel at the occurrence of the channel error, and
- a third identification field for identifying the type of channel error which occurred;
- means for storing the formed channel error I/O event in the I/O event stack at a location in addressable storage designated by the contents of said at least one I/O register;
- and means responsive to the termination of a channel error I/O event storage operation for signalling said channel to release said polling means to resume normal polling and servicing of the I/O adapters, independently of the CPU retrieving the stored event from the I/O event stack, said CPU retrieving said stored I/O events asynchronously to the placement of said I/O events on said I/O event stack.
Dependencies are inferred from the claim text.