Patents by Inventor John R. Flanagan

John R. Flanagan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9298379
    Abstract: A computer program product, apparatus, and a method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The method includes receiving, by a control unit, a command block configured to hold a plurality of commands including an input command and/or an output command, the plurality of commands specified by a transport command word (TCW) including a read indicator configured to indicate whether the I/O operation includes input data and a write indictor configured to indicate whether the I/O operation includes output data; based on the command block holding at least one output command, receiving the output data and executing the at least one output command; and based on the command block holding at least one input command, forwarding the input data to the channel subsystem for storage at a location specified by the TCW.
    Type: Grant
    Filed: November 17, 2014
    Date of Patent: March 29, 2016
    Assignee: International Business Machines Corporation
    Inventors: John R. Flanagan, Daniel F. Casper, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III
  • Patent number: 9292224
    Abstract: An computer program product, apparatus, and method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The computer program product is provided for performing a method including: sending a transport command word (TCW) to an I/O subsystem, the TCW specifying a location address and indicating whether the TCW directly or indirectly addresses a message; extracting the location address from the TCW; obtaining the message from the specified location address based on the TCW indicating direct addressing, the message including the one or more I/O commands; gathering the one or more I/O commands from command locations specified by a list of addresses identified by the specified location address to form the message based on the TCW indicating indirect addressing; and generating a message including the one or more I/O commands.
    Type: Grant
    Filed: June 13, 2014
    Date of Patent: March 22, 2016
    Assignee: International Business Machines Corporation
    Inventors: Daniel F. Casper, John R. Flanagan, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III
  • Patent number: 9195394
    Abstract: A computer program product is provided for performing a method that includes receiving a command message at a control unit from a channel subsystem in a host computer system, the command message including a command for data to be transferred from the host computer system to an I/O device. The method also includes receiving a data transfer message at the control unit, the data transfer message having an amount of the data to be transferred that is less than or equal to a maximum amount of data, the maximum amount of data corresponding to a number of buffers associated with the control unit and a size of each of the number of buffers, the number of buffers indicated by a buffer credit value maintained in the host computer system, and the size indicated by a buffer size value sent from the control unit and maintained in the host computer system.
    Type: Grant
    Filed: November 25, 2014
    Date of Patent: November 24, 2015
    Assignee: International Business Machines Corporation
    Inventors: Scott M. Carlson, Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Matthew J. Kalos, Louis W. Ricci, Gustav E. Sittmann, III
  • Publication number: 20150254204
    Abstract: Articles of manufacture, apparatuses, and methods for processing communication data in a ships passing condition are disclosed. Embodiments include a computer program product for performing a method including: obtaining a Transport Command Control Block (TCCB) from a location in memory specified by a Transport Command Control Block address of a Transport Control Word; opening a first exchange and sending, by a channel subsystem, the TCCB in the first exchange to a control unit; receiving, by the channel subsystem, an unsolicited first message in a second exchange from the control unit, the unsolicited first message opening the second exchange, the second exchange being a different exchange than the first exchange; and sending, by the channel subsystem, a second message to the control unit in a third exchange, the second message comprising a status of the first message, the second message configured to open and close the third exchange.
    Type: Application
    Filed: May 20, 2015
    Publication date: September 10, 2015
    Inventors: Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Catherine C. Huang, Matthew J. Kalos, Louis W. Ricci
  • Patent number: 9052837
    Abstract: Articles of manufacture, apparatuses, and methods for processing communications between a control unit and a channel subsystem in an input/output processing system are disclosed. Embodiments of the invention include an article of manufacture including at least one computer usable medium having computer readable program code logic to processing communications between a control unit and a channel subsystem in an input/output processing system. The computer readable program code logic performs a method including: sending a message in a first mode from the control unit to the channel subsystem; receiving a command in a second mode from the channel subsystem at the control unit; determining whether the command is responsive to the message; and responsive to the command being not responsive to the message, determining whether to perform one of i) executing the command and ii) terminating the command.
    Type: Grant
    Filed: February 14, 2008
    Date of Patent: June 9, 2015
    Assignee: International Business Machines Corporation
    Inventors: Catherine C. Huang, Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Matthew J. Kalos, Louis W. Rcci
  • Patent number: 9043494
    Abstract: A method includes configuring a processing circuit to perform: receiving a control word for an I/O operation, forwarding a transport command control block (TCCB) from the channel subsystem to a control unit, gathering data associated with the I/O operation, and transmitting the gathered data to the control unit in the I/O processing system. Gathering the data includes accessing entries of a list of storage addresses that collectively specifying the data. Based on an entry of the list comprising a not-set first flag and a corresponding first storage address, gathering data from a corresponding storage location, and based on an entry of the list comprising a set first flag and a corresponding second storage address, obtaining a next entry of the list from a second storage location.
    Type: Grant
    Filed: March 4, 2013
    Date of Patent: May 26, 2015
    Assignee: International Business Machines Corporation
    Inventors: Daniel F. Casper, Mark P. Bendyk, John R. Flanagan, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III, Harry M. Yudenfriend
  • Publication number: 20150120963
    Abstract: A computer program product is provided for performing a method that includes receiving a command message at a control unit from a channel subsystem in a host computer system, the command message including a command for data to be transferred from the host computer system to an I/O device. The method also includes receiving a data transfer message at the control unit, the data transfer message having an amount of the data to be transferred that is less than or equal to a maximum amount of data, the maximum amount of data corresponding to a number of buffers associated with the control unit and a size of each of the number of buffers, the number of buffers indicated by a buffer credit value maintained in the host computer system, and the size indicated by a buffer size value sent from the control unit and maintained in the host computer system.
    Type: Application
    Filed: November 25, 2014
    Publication date: April 30, 2015
    Inventors: Scott M. Carlson, Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Matthew J. Kalos, Louis W. Ricci, Gustav E. Sittmann, III
  • Patent number: 9021155
    Abstract: A computer program product is provided for performing input/output (I/O) processing. The computer program product is configured to perform: generating and storing in local channel memory at least one address control word (ACW) specifying one or more host memory locations for data transfer and including a data discard field; generating an address control structure specifying a local channel memory location of a corresponding ACW; receiving one or more data transfer requests from a network interface that each corresponding address control structure information; accessing an ACW and routing the data transfer request to a host memory location specified in the ACW; and responsive to encountering an error during at least one of the accessing and the routing, discarding the one or more data transfer requests and setting the data discard field to a value configured to instruct a channel to discard any subsequent data transfer requests associated with the ACW.
    Type: Grant
    Filed: June 1, 2011
    Date of Patent: April 28, 2015
    Assignee: International Business Machines Corporation
    Inventors: Carl A. Bender, Clinton E. Bubb, Daniel F. Casper, John R. Flanagan
  • Patent number: 8990439
    Abstract: A computer program product is provided for performing an input/output (I/O) operation at a host computer system configured for communication with a control unit. The computer program product is configured to perform: sending a transport mode command message from a channel subsystem to the control unit, the command message including a command for data to be transferred to an I/O device controlled by the control unit; and sending a data transfer message to the control unit, the data transfer message having an amount of the data to be transferred, the amount of the data being less than or equal to a maximum amount of data, the maximum amount of data corresponding to a number of buffers associated with the control unit and a size of each of the number of buffers, the number and the size indicated by a value maintained in the host computer system.
    Type: Grant
    Filed: May 29, 2013
    Date of Patent: March 24, 2015
    Assignee: International Business Machines Corporation
    Inventors: Scott M. Carlson, Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Matthew J. Kalos, Louis W. Ricci, Gustav E. Sittman, III
  • Publication number: 20150074295
    Abstract: A computer program product, apparatus, and a method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The method includes receiving, by a control unit, a command block configured to hold a plurality of commands including an input command and/or an output command, the plurality of commands specified by a transport command word (TCW) including a read indicator configured to indicate whether the I/O operation includes input data and a write indictor configured to indicate whether the I/O operation includes output data; based on the command block holding at least one output command, receiving the output data and executing the at least one output command; and based on the command block holding at least one input command, forwarding the input data to the channel subsystem for storage at a location specified by the TCW.
    Type: Application
    Filed: November 17, 2014
    Publication date: March 12, 2015
    Inventors: John R. Flanagan, Daniel F. Casper, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III
  • Patent number: 8972615
    Abstract: A computer program product is provided for performing: obtaining, by a channel subsystem, a transport command word (TCW) specified by an operating system, the TCW comprising an address of a transport services request block (TSRQB) and an address of a transport services response block (TSRSB); obtaining the TSRQB; building at least one command request based on the TSRQB, and sending the at least one command request from the channel subsystem to at least one network entity, the at least one command request including at least one of a fiber-channel generic services (FC-GS) request, a fiber-channel link services (FC-LS) request, and a fiber-channel link-level function (FC-SB) request; receiving a response to the at least one command request from the at least one network entity; and storing the response to the TSRSB based on the address of the TSRSB obtained from the TCW.
    Type: Grant
    Filed: December 7, 2012
    Date of Patent: March 3, 2015
    Assignee: International Business Machines Corporation
    Inventors: Daniel F. Casper, Patricia G. Driever, John R. Flanagan, Louis W. Ricci, Gustav E. Sittmann, III
  • Publication number: 20140379948
    Abstract: A computer program product for processing input/output (I/O) data is provided for performing a method, which includes receiving a control word having an indirect data address including a starting location of a list of storage addresses, gathering the data and transmitting gathered data to a control unit in the I/O processing system. Gathering includes accessing an entry of the list, the entry located at an entry storage location and including an address. Based on the entry of the list indicating that the address is a data address, data is gathered from a data storage location, and a next entry of the list is accessed. Based on the entry of the list indicating that the address is an address of a next entry of the list, the next entry of the list is obtained from another storage location that is located non-contiguously to the entry storage location.
    Type: Application
    Filed: September 11, 2014
    Publication date: December 25, 2014
    Inventors: Daniel F. Casper, Mark P. Bendyk, John R. Flanagan, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III, Harry M. Yudenfriend
  • Patent number: 8918542
    Abstract: A computer program product is provided for performing an input/output (I/O) operation initiated by an I/O operation instruction at a host computer system configured for communication with a control unit. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing: receiving, by the control unit, a transport mode command message from a channel subsystem of the host computer system, the command message include a command for data to be transferred between the host computer system and an I/O device controlled by the control unit; and sending a command retry message to the channel subsystem, the command retry message including a request that the command message be re-sent to the control unit and a reason code indicating a reason for the request.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: December 23, 2014
    Assignee: International Business Machines Corporation
    Inventors: Scott M. Carlson, Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Matthew J. Kalos, Louis W. Ricci, Gustav E. Sittmann, III
  • Publication number: 20140359168
    Abstract: A computer program product is provided for performing an input/output (I/O) operation at a host computer system configured for communication with a control unit. The computer program product is configured to perform: sending a transport mode command message from a channel subsystem to the control unit, the command message including a command for data to be transferred to an I/O device controlled by the control unit; and sending a data transfer message to the control unit, the data transfer message having an amount of the data to be transferred, the amount of the data being less than or equal to a maximum amount of data, the maximum amount of data corresponding to a number of buffers associated with the control unit and a size of each of the number of buffers, the number and the size indicated by a value maintained in the host computer system.
    Type: Application
    Filed: May 29, 2013
    Publication date: December 4, 2014
    Inventors: Scott M. Carlson, Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Matthew J. Kalos, Louis W. Ricci, Gustav E. Sittman, III
  • Patent number: 8892781
    Abstract: A computer program product, apparatus, and a method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The method includes receiving a command block from the channel subsystem, the command block including at least one input command and at least one output command specified by a transport command word (TCW) and associated with the I/O operation, the I/O operation having both input and output data, the TCW specifying a location in the memory of the output data and a location in the memory for storing the input data; receiving the output data specified by the TCW and executing the at least one output command; and forwarding the input data specified by the TCW to the channel subsystem for storage at a location specified by the TCW.
    Type: Grant
    Filed: June 13, 2013
    Date of Patent: November 18, 2014
    Assignee: International Business Machines Corporation
    Inventors: John R. Flanagan, Daniel F. Casper, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III
  • Publication number: 20140297891
    Abstract: An computer program product, apparatus, and method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The computer program product is provided for performing a method including: sending a transport command word (TCW) to an I/O subsystem, the TCW specifying a location address and indicating whether the TCW directly or indirectly addresses a message; extracting the location address from the TCW; obtaining the message from the specified location address based on the TCW indicating direct addressing, the message including the one or more I/O commands; gathering the one or more I/O commands from command locations specified by a list of addresses identified by the specified location address to form the message based on the TCW indicating indirect addressing; and generating a message including the one or more I/O commands.
    Type: Application
    Filed: June 13, 2014
    Publication date: October 2, 2014
    Inventors: Daniel F. Casper, John R. Flanagan, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III
  • Publication number: 20140281041
    Abstract: A computer program product is provided for performing an input/output (I/O) operation initiated by an I/O operation instruction at a host computer system configured for communication with a control unit. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing: receiving, by the control unit, a transport mode command message from a channel subsystem of the host computer system, the command message include a command for data to be transferred between the host computer system and an I/O device controlled by the control unit; and sending a command retry message to the channel subsystem, the command retry message including a request that the command message be re-sent to the control unit and a reason code indicating a reason for the request.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Scott M. Carlson, Daniel F. Casper, John R. Flanagan, Roger G. Hathorn, Matthew J. Kalos, Louis W. Ricci, Gustav E. Sittmann, III
  • Publication number: 20140258561
    Abstract: Processing of out-of-order data transfers is facilitated in computing environments that enable data to be directly transferred between a host bus adapter (or other adapter) and a system without first staging the data in hardware disposed between the host bus adapter and the system. An address to be used in the data transfer is determined, in real-time, by efficiently locating an entry in an address data structure that includes the address to be used in the data transfer.
    Type: Application
    Filed: May 23, 2014
    Publication date: September 11, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Clinton E. Bubb, Daniel F. Casper, John R. Flanagan, Raymond M. Higgs, George P. Kuch, Jeffrey M. Turner
  • Patent number: 8812742
    Abstract: A computer system includes a processor configured for detecting initial command response times of a plurality of paths for transmitting signals from the processor to one or more external devices via a plurality of channels, assigning weighted values to the plurality of paths based on the detected initial command response times, and modifying a frequency at which respective paths among the plurality of paths are selected for transmitting the signals based on the weighted values assigned to the respective paths.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: August 19, 2014
    Assignee: International Business Machines Corporation
    Inventors: John R. Flanagan, Francis Gassert, Kenneth J. Oakes, Dale F. Riedy, Peter G. Sutton, John Trotter, Harry M. Yudenfriend
  • Patent number: 8806069
    Abstract: An computer program product, apparatus, and method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The computer program product is provided for performing a method including: obtaining a transport command word (TCW) for an I/O operation, the TCW specifying a location address and indicating whether the TCW directly or indirectly addresses a message for transmitting one or more commands to the control unit; extracting the specified location address from the TCW; obtaining the message from the specified location address based on the TCW indicating direct addressing, the message including one or more I/O commands; gathering one or more I/O commands from command locations specified by a list of addresses identified by the specified location address to form the message based on the TCW indicating indirect addressing; and forwarding the message to the control unit for execution.
    Type: Grant
    Filed: July 18, 2013
    Date of Patent: August 12, 2014
    Assignee: International Business Machines Corporation
    Inventors: Daniel F. Casper, John R. Flanagan, Catherine C. Huang, Matthew J. Kalos, Ugochukwu C. Njoku, Dale F. Riedy, Gustav E. Sittmann, III