Patents by Inventor Richard K. Errickson

Richard K. Errickson 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: 9298523
    Abstract: Disclosed are a method of and system for providing time synchronization among first and second computer systems, where each of the computer systems includes hardware, operating system software and a layer of microcode operating between said hardware and said software. The method comprises the steps of using the microcode of the first computer system to provide a first timestamp, using the microcode of the second computer system to provide a second timestamp and a third timestamp, and using the microcode of the first computer system to provide a fourth timestamp. The method comprises the further steps of using the first, second, third and fourth timestamps to determine a timing difference between the first and second computer systems, and adjusting the timing among said first and second computer systems on the basis of said determined timing difference.
    Type: Grant
    Filed: September 22, 2014
    Date of Patent: March 29, 2016
    Assignee: International Business Machines Corporation
    Inventors: Scott M. Carlson, David A. Elko, Richard K. Errickson
  • Publication number: 20150317273
    Abstract: Embodiments relate to two general purpose computers connected in a peer-to-peer mode by connecting a cable (or wireless connection) between universal ports (e.g., PCIe ports) on each computer. A timing protocol utility runs on each computer to time schedule operations performed by its respective computer. Because the system clocks on each peer computer operate independently (asynchronously), they may vary somewhat from each other. To support time synchronized peer-to-peer operations, paired clock value (one for each peer computer) are generated continually and independently by each peer system. Each peer system periodically supplies the paired clock values to its associated timing protocol utility, which uses the paired clock values to time synchronize peer-to-peer computer operations. The timing protocol utilities may also exchange the paired clock values with each other for integrity checking and other operations.
    Type: Application
    Filed: May 1, 2014
    Publication date: November 5, 2015
    Applicant: International Buisness Machines Corporation
    Inventors: Richard K. Errickson, Thomas A. Gregg, Kulwant M. Pandey
  • Publication number: 20150263942
    Abstract: Embodiments relate to path selection for packet transfer in a network. An aspect includes a method of selecting a path among a plurality of paths in a network for transfer of a packet from a first system to a second system in the network. The method includes storing, in a memory device, a static path performance vector indicating a tier among a plurality of tiers corresponding with each of the plurality of paths, each of the plurality of tiers corresponding with a relative performance level. The method also includes maintaining a path availability bit vector indicating an availability of each of the plurality of paths, and selecting, using a processor, the path among the plurality of paths based on the path performance vector and the path availability bit vector.
    Type: Application
    Filed: March 12, 2014
    Publication date: September 17, 2015
    Applicant: International Business Machines Corporation
    Inventors: Ping T. Chan, Richard K. Errickson, Peter K. Szwed, Ambrose A. Verdibello, JR.
  • Publication number: 20150263956
    Abstract: Embodiments are directed to a computer system for managing data transfer. The computer system includes a memory, a processor communicatively coupled to the memory, a send component and a receive component having a message queue and a controller. A link interface communicatively couples the send component to the receive component. The link interface includes a mainline channel and a sideband channel, and the computer system is configured to perform a method. The method includes transmitting mainline channel messages over the mainline channel from the send component to the receive component. The method further includes transmitting sideband channel messages over the sideband channel from the send component to the message queue of the receive component. The method further includes utilizing the controller to control a flow of the sideband channel messages to the message queue without relying on sending feedback to the send component about the flow.
    Type: Application
    Filed: March 14, 2014
    Publication date: September 17, 2015
    Applicant: International Business Machines Corporation
    Inventors: Richard K. Errickson, Thomas A. Gregg, Leonard W. Helmer, JR., Michael P. Lyons, Kulwant M. Pandey, Peter K. Szwed
  • Patent number: 8949468
    Abstract: Disclosed are a method of and system for providing time synchronization among first and second computer systems, where each of the computer systems includes hardware, operating system software and a layer of microcode operating between said hardware and said software. The method comprises the steps of using the microcode of the first computer system to provide a first timestamp, using the microcode of the second computer system to provide a second timestamp and a third timestamp, and using the microcode of the first computer system to provide a fourth timestamp. The method comprises the further steps of using the first, second, third and fourth timestamps to determine a timing difference between the first and second computer systems, and adjusting the timing among said first and second computer systems on the basis of said determined timing difference.
    Type: Grant
    Filed: October 11, 2005
    Date of Patent: February 3, 2015
    Assignee: International Business Machines Corporation
    Inventors: Scott M. Carlson, David A. Elko, Richard K. Errickson
  • Publication number: 20150012667
    Abstract: Disclosed are a method of and system for providing time synchronization among first and second computer systems, where each of the computer systems includes hardware, operating system software and a layer of microcode operating between said hardware and said software. The method comprises the steps of using the microcode of the first computer system to provide a first timestamp, using the microcode of the second computer system to provide a second timestamp and a third timestamp, and using the microcode of the first computer system to provide a fourth timestamp. The method comprises the further steps of using the first, second, third and fourth timestamps to determine a timing difference between the first and second computer systems, and adjusting the timing among said first and second computer systems on the basis of said determined timing difference.
    Type: Application
    Filed: September 22, 2014
    Publication date: January 8, 2015
    Inventors: Scott M. Carlson, David A. Elko, Richard K. Errickson
  • Patent number: 8793699
    Abstract: A computer program product, apparatus and method for negating initiative for select entries from a shared, strictly FIFO initiative queue in a multi-tasking multi-processor environment. An exemplary embodiment includes a computer program product for negating initiative for select entries from a shared initiative queue in a multi-tasking multi-processor environment, the computer program product including a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method including identifying an element within the environment that has failed and recovered, not removing the element from the shared initiative queue and entering a boundary element entry into the shared initiative queue.
    Type: Grant
    Filed: March 19, 2008
    Date of Patent: July 29, 2014
    Assignee: International Business Machines Corporation
    Inventors: Richard K. Errickson, Geoffrey A. Crew, Welela Haileselaissie, Robert M. Whalen, Jr.
  • Patent number: 8762125
    Abstract: A computer program product, apparatus and method for emulating channels in a multi-tasking multi-processor environment, including identifying a plurality of physical channels having an associated physical channel identifier for each of the plurality of physical channels, associating an emulated channel from a plurality of emulated channels for each of the plurality of physical channels, thereby generating a plurality of emulated channels, each of the plurality of emulated channels having a virtual channel identifier, mapping the plurality of emulated channels on a communications link, thereby generating an emulated channel path for each of the plurality of emulated channels, defining a queue pair link buffer from a plurality of queue pair link buffers for each of the emulated channels and increasing a number of queue pair link buffers.
    Type: Grant
    Filed: February 25, 2008
    Date of Patent: June 24, 2014
    Assignee: International Business Machines Corporation
    Inventors: Richard K. Errickson, Thomas A. Gregg, John S. Houston, Ambrose A. Verdibello, Jr.
  • Patent number: 8432793
    Abstract: A computer program product, apparatus and method for managing recovery of a link in a multi-tasking multi-processor environment. An exemplary embodiment includes shutting off timers for a failed channel associated with the communications link, storing a loss of link condition in a data structure, disabling communications on the failed channel and sending an external notification of the loss of link condition.
    Type: Grant
    Filed: March 19, 2008
    Date of Patent: April 30, 2013
    Assignee: International Business Machines Corporation
    Inventors: Richard K. Errickson, Leonard W. Helmer, Jr., John S. Houston
  • Patent number: 8225280
    Abstract: A computer program product for incorporating state machine controls into existing non-state machine environments includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes determining a state machine representation for an existing environment, assigning state indicators to each state of the state machine, transcoding existing software flags of the environment into modifier values associated with the state indicators, assigning state values based on the modifier values and the state indicators, assigning event identifiers for transitions from the state values, and creating a tabular representation of the determined state machine, the tabular representation providing next state information based on the event identifiers and the state values.
    Type: Grant
    Filed: March 28, 2008
    Date of Patent: July 17, 2012
    Assignee: International Business Machines Corporation
    Inventors: Richard K. Errickson, Leonard W. Helmer, Jr., John S. Houston, R. Timothy Tomaselli, Ambrose A. Verdibello, Jr.
  • Patent number: 8065279
    Abstract: A computer program product, apparatus and method for providing a performance neutral heartbeat in a computer communication system, the computer program product including a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method including maintaining a send flag, maintaining a receive flag, determining that a heartbeat timer has activated, checking a state of the send flag to determine if packets have been sent since a prior heartbeat timer activation and checking a state of the receive flag to determine if packets have been received since a prior heartbeat timer activation.
    Type: Grant
    Filed: February 25, 2008
    Date of Patent: November 22, 2011
    Assignee: International Business Machines Corporation
    Inventors: Richard K. Errickson, Leornard W. Helmer, Jr., John S. Houston
  • Patent number: 8009589
    Abstract: A computer program product for subnet management in virtual host channel adapter topologies includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving a request to add a new logical host channel adapter (HCA) to the subnet, updating a logical switch port topology control block to reflect a pointer to the new logical HCA, and updating a port topology control block of the logical HCA to reflect a pointer to the logical switch port.
    Type: Grant
    Filed: February 25, 2008
    Date of Patent: August 30, 2011
    Assignee: International Business Machines Corporation
    Inventors: Stephen R. Burrow, Richard K. Errickson
  • Patent number: 7962564
    Abstract: A computer program product, apparatus and method for identifying processors in a multi-tasking multiprocessor network, the computer program product including a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method including storing a service record for a port to which an LID has been assigned, retrieving service records for nodes to which channel paths may connect, retrieving path records that provide address destinations for the nodes identified in the service records, initiating channel initialization for the channel paths defined for the port and removing the service record for the port.
    Type: Grant
    Filed: February 25, 2008
    Date of Patent: June 14, 2011
    Assignee: International Business Machines Corporation
    Inventors: Richard K. Errickson, Welela Haileselaissie, Leornard W. Helmer, Jr., John S. Houston, An Zhu
  • Patent number: 7895462
    Abstract: A computer program product, apparatus and method for managing recovery and control of a communications link via out-of-band signaling. An exemplary embodiment includes sending a command, sending an invalidate request to a buffer associated with the command and receiving a response to the invalidate request at least one of prior to the command reaching the recipient and after the command reaching the recipient.
    Type: Grant
    Filed: March 19, 2008
    Date of Patent: February 22, 2011
    Assignee: International Business Machines Corporation
    Inventors: Richard K. Errickson, Leonard W. Helmer, Jr., John S. Houston
  • Patent number: 7797414
    Abstract: A technique for establishing a logical path between two servers in a coordinated timing network of a processing environment is provided. The technique includes the exchange of command and response message pairs by a server and an attached server, via a physical link. The server transmits a command message to an attached server to establish a server-time-protocol (STP) logical path and receives a response from the attached server. The technique also includes the server receiving a request transmitted by the attached server to establish an STP logical path to the server and transmitting a response to the attached server's request. A logical path between the server and the attached server is established if the attached server's response indicates that the server's request was accepted by the attached server and if the server's response indicates that the attached server's request was accepted by the server.
    Type: Grant
    Filed: October 22, 2007
    Date of Patent: September 14, 2010
    Assignee: International Business Machines Corporation
    Inventors: Scott M. Carlson, Dennis J. Dahlen, Richard K. Errickson
  • Patent number: 7668207
    Abstract: A system, method, and article of manufacture for synchronizing first and second time-of-day clocks on first and second computers, respectively, are provided. The first and second computers have first and second network interface cards with third and fourth clocks, respectively, thereon. The system utilizes time stamp values generated by the third and fourth clocks to synchronize the first and second time-of-day clocks.
    Type: Grant
    Filed: October 17, 2007
    Date of Patent: February 23, 2010
    Assignee: International Business Machines Corporation
    Inventors: David F. Craddock, Richard K. Errickson, Thomas A. Gregg, Bruce Marshall Walk
  • Patent number: 7606965
    Abstract: A communication port of a communications interface of an information handling system comprises a plurality of virtual ports. A first command is issued to obtain information indicating a number of images of virtual ports supportable by the communications interface. A second command is then issued requesting the communications interface to virtualize the communication port. In response to the second command, one or more virtual switches are then configured to connect to the communication port, each virtual switch including a plurality of virtual ports, such that the one or more virtual switches are configured in a manner sufficient to support the number of images of virtual ports indicated by the obtained information. Thereafter, upon request via issuance of a third command, a logical link is established between one of the virtual ports of one of the virtual switches and a communicating element of the information handling system.
    Type: Grant
    Filed: February 20, 2007
    Date of Patent: October 20, 2009
    Assignee: International Business Machines Corporation
    Inventors: Ugochukwu Charles Njoku, Frank W. Brice, Jr., David Craddock, Richard K. Errickson, Mark S. Farrell, Charles W. Gainey, Jr., Donald W. Schmidt, Gustav E. Sittmann, III
  • Publication number: 20090217007
    Abstract: A computer program product, apparatus and method for identifying processors in a multi-tasking multiprocessor network, the computer program product including a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method including storing a service record for a port to which an LID has been assigned, retrieving service records for nodes to which channel paths may connect, retrieving path records that provide address destinations for the nodes identified in the service records, initiating channel initialization for the channel paths defined for the port and removing the service record for the port.
    Type: Application
    Filed: February 25, 2008
    Publication date: August 27, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Richard K. Errickson, Welela Haileselaissie, Leonard W. Helmer, JR., John S. Houston, An Zhu
  • Publication number: 20090216893
    Abstract: A computer program product, apparatus and method for buffer discovery in a multi-tasking multi-processor environment. An exemplary embodiment includes establishing a management connection, confirming that end points of the management connection are connected to respective targets, sending a negotiate counts message, including a number and size of buffers associated with parameters of the management connection and receiving a response to the negotiate counts message, the response including at least one of rejection of the management connection and an acceptance of the management connection, including an agreed number and size of the buffers.
    Type: Application
    Filed: March 19, 2008
    Publication date: August 27, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Richard K. Errickson, Leonard W. Helmer, JR., John S. Houston, Ambrose A. Verdibello, JR.
  • Publication number: 20090216927
    Abstract: A computer program product, apparatus and method for managing recovery and control of a communications link via out-of-band signaling. An exemplary embodiment includes sending a command, sending an invalidate request to a buffer associated with the command and receiving a response to the invalidate request at least one of prior to the command reaching the recipient and after the command reaching the recipient.
    Type: Application
    Filed: March 19, 2008
    Publication date: August 27, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Richard K. Errickson, Leonard W. Helmer, JR., John S. Houston