Patents by Inventor Brian A. Rinaldi

Brian A. Rinaldi 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).

  • Publication number: 20180341542
    Abstract: Provided are a method, a system, and a computer program product in which a storage controller determines one or more resources that are impacted by an error. A cleanup of tasks associated with the one or more resources that are impacted by the error is performed, to recover from the error, wherein host input/output (I/O) operations continue to be processed, and wherein tasks associated with other resources continue to execute.
    Type: Application
    Filed: August 2, 2018
    Publication date: November 29, 2018
    Inventors: Wang Ping He, Larry Juarez, Matthew J. Kalos, John N. McCauley, Louis A. Rasor, Brian A. Rinaldi, Todd C. Sorenson
  • Patent number: 10127152
    Abstract: Provided are a computer program product, system, and method for populating a second cache with tracks from a first cache when transferring management of the tracks from a first node to a second node. Management of a first group of tracks in the storage managed by the first node is transferred to the second node managing access to a second group of tracks in the storage. After the transferring the management of the tracks, the second node manages access to the first and second groups of tracks and caches accessed tracks from the first and second groups in the second cache of the second node. The second cache of the second node is populated with the tracks in a first cache of the first node.
    Type: Grant
    Filed: October 20, 2015
    Date of Patent: November 13, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Matthew G. Borlick, Lokesh M. Gupta, Matthew J. Kalos, Brian A. Rinaldi
  • Patent number: 10120598
    Abstract: A primary storage controller receives a write command from a host, to write data that is to be controlled by the primary storage controller. The data is written to local storage of the primary storage controller and subsequently the data is destaged from the local storage of the primary storage controller to store the data in an auxiliary storage of the primary storage controller. The data is transmitted to a secondary storage controller for writing the data to local storage of the secondary storage controller and for subsequently destaging the data from the local storage of the secondary storage controller to store the data in an auxiliary storage of the secondary storage controller. The data stored in the auxiliary storage of the primary storage controller is compared to the data stored in the auxiliary storage of the secondary storage controller to determine whether the write command is successfully executed.
    Type: Grant
    Filed: October 27, 2016
    Date of Patent: November 6, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Brian A. Rinaldi, Micah Robison
  • Patent number: 10114633
    Abstract: Provided are techniques for concurrent Input/Output (I/O) enclosure firmware/Field-Programmable Gate Array (FPGA) update in a multi-node environment. First notifications are sent to each I/O enclosure management engine on each of a plurality of server nodes that code activation for a first set of I/O enclosures is starting. An update image is distributed to the first set of I/O enclosures. The update image on the first set of I/O enclosures is activated by sending an activate reset command to each of the first set of I/O enclosures, wherein a reset is not propagated to other devices within each I/O enclosure in the first set of I/O enclosures in response to determining that the reset is an activate reset. In response to the activate reset command completing, second notifications are sent to each I/O enclosure management engine that code activation for the first set of I/O enclosures has completed.
    Type: Grant
    Filed: December 8, 2016
    Date of Patent: October 30, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gary W. Batchelor, Veronica S. Davila, Enrique Q. Garcia, Robin Han, Jay T. Kirch, Ronald D. Martens, Trung N. Nguyen, Brian A. Rinaldi, Todd C. Sorenson
  • Patent number: 10067818
    Abstract: Provided are a method, a system, and a computer program product in which a storage controller determines one or more resources that are impacted by an error. A cleanup of tasks associated with the one or more resources that are impacted by the error is performed, to recover from the error, wherein host input/output (I/O) operations continue to be processed, and wherein tasks associated with other resources continue to execute.
    Type: Grant
    Filed: July 29, 2016
    Date of Patent: September 4, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wang Ping He, Larry Juarez, Matthew J. Kalos, John N. McCauley, Louis A. Rasor, Brian A. Rinaldi, Todd C. Sorenson
  • Patent number: 10063624
    Abstract: A processor may receive a request to transmit a logical volume to a cloud-based server. The logical volume may be stored in a data storage subsystem that includes one or more ranks. Each rank may include one or more extents, which may include one or more stride. The processor may determine an extent of the one or more extents that includes data of the logical volume. The processor may determine a set of strides associated with the extent. The processor may copy the set of strides into a stride buffer and combine the set of strides into a block extent file. The processor may transmit the block extent file to the cloud server.
    Type: Grant
    Filed: December 15, 2017
    Date of Patent: August 28, 2018
    Assignee: International Business Machines Corporation
    Inventors: Xue Dong Gao, Karl A. Nielsen, Yao Peng, Brian A. Rinaldi, Tang Ren Yao
  • Publication number: 20180165082
    Abstract: Provided are techniques for concurrent Input/Output (I/O) enclosure firmware/Field-Programmable Gate Array (FPGA) update in a multi-node environment. First notifications are sent to each I/O enclosure management engine on each of a plurality of server nodes that code activation for a first set of I/O enclosures is starting. An update image is distributed to the first set of I/O enclosures. The update image on the first set of I/O enclosures is activated by sending an activate reset command to each of the first set of I/O enclosures, wherein a reset is not propagated to other devices within each I/O enclosure in the first set of I/O enclosures in response to determining that the reset is an activate reset. In response to the activate reset command completing, second notifications are sent to each I/O enclosure management engine that code activation for the first set of I/O enclosures has completed.
    Type: Application
    Filed: December 8, 2016
    Publication date: June 14, 2018
    Inventors: Gary W. Batchelor, Veronica S. Davila, Enrique Q. Garcia, Robin Han, Jay T. Kirch, Ronald D. Martens, Trung N. Nguyen, Brian A. Rinaldi, Todd C. Sorenson
  • Publication number: 20180129433
    Abstract: A determination is made in a multi-processor system that a cache storage is storing a first type of elements and a second type of elements, wherein on an average each of the first type of elements takes a longer time to destage to secondary storage in comparison to each of the second type of elements. A determination is made of how many tasks to run for scanning the cache storage and destaging the first type of elements and the second type of elements from the cache storage, based on how many of first type of elements and how many of the second type of elements are stored in the cache storage, and how many processors are available in the multi-processor system.
    Type: Application
    Filed: November 10, 2016
    Publication date: May 10, 2018
    Inventors: Kevin J. Ash, Lokesh M. Gupta, Brian A. Rinaldi, Micah Robison
  • Publication number: 20180124152
    Abstract: A processor may receive a request to transmit a logical volume to a cloud-based server. The logical volume may be stored in a data storage subsystem that includes one or more ranks. Each rank may include one or more extents, which may include one or more stride. The processor may determine an extent of the one or more extents that includes data of the logical volume. The processor may determine a set of strides associated with the extent. The processor may copy the set of strides into a stride buffer and combine the set of strides into a block extent file. The processor may transmit the block extent file to the cloud server.
    Type: Application
    Filed: October 31, 2016
    Publication date: May 3, 2018
    Inventors: Xue Dong Gao, Karl A. Nielsen, Yao Peng, Brian A. Rinaldi, Tang Ren Yao
  • Publication number: 20180121107
    Abstract: A primary storage controller receives a write command from a host, to write data that is to be controlled by the primary storage controller. The data is written to local storage of the primary storage controller and subsequently the data is destaged from the local storage of the primary storage controller to store the data in an auxiliary storage of the primary storage controller. The data is transmitted to a secondary storage controller for writing the data to local storage of the secondary storage controller and for subsequently destaging the data from the local storage of the secondary storage controller to store the data in an auxiliary storage of the secondary storage controller. The data stored in the auxiliary storage of the primary storage controller is compared to the data stored in the auxiliary storage of the secondary storage controller to determine whether the write command is successfully executed.
    Type: Application
    Filed: October 27, 2016
    Publication date: May 3, 2018
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Brian A. Rinaldi, Micah Robison
  • Publication number: 20180121114
    Abstract: A peer to peer remote copy operation is performed between a primary storage controller and a secondary storage controller, to establish a peer to peer remote copy relationship between a primary storage volume and a secondary storage volume. Subsequent to indicating completion of the peer to peer remote copy operation to a host, a determination is made as to whether the primary storage volume and the secondary storage volume have identical data, by performing operations of staging data of the primary storage volume from auxiliary storage of the primary storage controller to local storage of the primary storage controller, and transmitting the data of the primary storage volume that is staged, to the secondary storage controller for comparison with data of the secondary storage volume stored in an auxiliary storage of the secondary storage controller.
    Type: Application
    Filed: November 29, 2017
    Publication date: May 3, 2018
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Brian A. Rinaldi, Micah Robison
  • Publication number: 20180124157
    Abstract: A processor may receive a request to transmit a logical volume to a cloud-based server. The logical volume may be stored in a data storage subsystem that includes one or more ranks. Each rank may include one or more extents, which may include one or more stride. The processor may determine an extent of the one or more extents that includes data of the logical volume. The processor may determine a set of strides associated with the extent. The processor may copy the set of strides into a stride buffer and combine the set of strides into a block extent file. The processor may transmit the block extent file to the cloud server.
    Type: Application
    Filed: December 15, 2017
    Publication date: May 3, 2018
    Inventors: Xue Dong Gao, Karl A. Nielsen, Yao Peng, Brian A. Rinaldi, Tang Ren Yao
  • Patent number: 9940198
    Abstract: A data processing apparatus-implemented method, according to one embodiment, includes selecting blocks of data in at least one solid state drive for garbage collection in a garbage collection process, and creating a bitmap indicating which blocks of data are in the garbage collection process. The bitmap has a two bit structure for each of the blocks, where the two bit structure includes a unique pair of bits associated with a logical block address (LBA) of the individual one of the blocks associated with the two bit structure. One bit indicates whether the block is in the garbage collection process. The other bit indicates whether rebuilding of the block has been completed.
    Type: Grant
    Filed: March 13, 2017
    Date of Patent: April 10, 2018
    Assignee: International Business Machines Corporation
    Inventors: Xue Dong Gao, Brian A. Rinaldi, Qian Su, You Wei
  • Publication number: 20180067809
    Abstract: A method for preventing data loss in a RAID includes monitoring storage drives making up a RAID. The method individually tests a storage drive of the RAID by subjecting the storage drive to a stress workload test. This stress workload test may be designed to place additional stress on the storage drive while refraining from adding stress to other storage drives in the RAID. In the event the storage drive fails the stress workload test (e.g., the storage drive cannot adequately handle the additional workload or generates errors in response to the additional workload), the method replaces the storage drive with a spare storage drive and rebuilds the RAID. In certain embodiments, the method tests the storage drive with greater frequency as the age of the storage drive increases. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: November 13, 2017
    Publication date: March 8, 2018
    Applicant: International Business Machines Corporation
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Clint A. Hardy, Karl A. Nielsen, Brian A. Rinaldi
  • Publication number: 20180060158
    Abstract: In one aspect, multiple data path error collection is provided in a storage management system. In one embodiment, an error condition in a main data path between the storage controller and at least one of a host and a storage unit is detected, and in response, a sequence of error data collection operations to collect error data through a main path is initiated. In response to a failure to collect error data at a level of the sequential error data collection operations, error data is collected through an alternate data path as a function of the error data collection level at which the failure occurred. Other aspects are described.
    Type: Application
    Filed: November 6, 2017
    Publication date: March 1, 2018
    Inventors: Gary W. Batchelor, Matthew D. Carson, Enrique Q. Garcia, Larry Juarez, Jay T. Kirch, Tony Leung, Trung N. Nguyen, Brian A. Rinaldi, Todd C. Sorenson
  • Patent number: 9886070
    Abstract: A storage controller determines a presence of an indication from an Input/Output (I/O) enclosure that the I/O enclosure will be powered off after a predetermined amount of time. The storage controller quiesces all I/O adapters of the I/O enclosure, in response to receiving the indication. The storage controller quiesces the I/O enclosure, in response to completion of quiescing of all of the I/O adapters of the I/O enclosure.
    Type: Grant
    Filed: November 20, 2015
    Date of Patent: February 6, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Herve G. P. Andre, Gary W. Batchelor, Scott A. Brewer, Veronica S. Davila, Enrique Q. Garcia, Daniel I. Ibanez, Trung N. Nguyen, Louis A. Rasor, Brian A. Rinaldi, Micah Robison, Todd C. Sorenson
  • Patent number: 9864534
    Abstract: A peer to peer remote copy operation is performed between a primary storage controller and a secondary storage controller, to establish a peer to peer remote copy relationship between a primary storage volume and a secondary storage volume. Subsequent to indicating completion of the peer to peer remote copy operation to a host, a determination is made as to whether the primary storage volume and the secondary storage volume have identical data, by performing operations of staging data of the primary storage volume from auxiliary storage of the primary storage controller to local storage of the primary storage controller, and transmitting the data of the primary storage volume that is staged, to the secondary storage controller for comparison with data of the secondary storage volume stored in an auxiliary storage of the secondary storage controller.
    Type: Grant
    Filed: October 27, 2016
    Date of Patent: January 9, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Brian A. Rinaldi, Micah Robison
  • Patent number: 9858148
    Abstract: A method for preventing data loss in a RAID includes monitoring the age of storage drives making up a RAID. When a storage drive in the RAID reaches a specified age, the method individually tests the storage drive by subjecting the storage drive to a stress workload test. This stress workload test may be designed to place additional stress on the storage drive while refraining from adding stress to other storage drives in the RAID. In the event the storage drive fails the stress workload test (e.g., the storage drive cannot adequately handle the additional workload or generates errors in response to the additional workload), the method replaces the storage drive with a spare storage drive and rebuilds the RAID. In certain embodiments, the method tests the storage drive with greater frequency as the age of the storage drive increases. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: November 22, 2015
    Date of Patent: January 2, 2018
    Assignee: International Business Machines Corporation
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Clint A. Hardy, Karl A. Nielsen, Brian A. Rinaldi
  • Patent number: 9842016
    Abstract: In one aspect, multiple data path error collection is provided in a storage management system. In one embodiment, an error condition in a main data path between the storage controller and at least one of a host and a storage unit is detected, and in response, a sequence of error data collection operations to collect error data through a main path is initiated. In response to a failure to collect error data at a level of the sequential error data collection operations, error data is collected through an alternate data path as a function of the error data collection level at which the failure occurred. Other aspects are described.
    Type: Grant
    Filed: November 12, 2015
    Date of Patent: December 12, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gary W. Batchelor, Matthew D. Carson, Enrique Q. Garcia, Larry Juarez, Jay T. Kirch, Tony Leung, Trung N. Nguyen, Brian A. Rinaldi, Todd C. Sorenson
  • Publication number: 20170315850
    Abstract: For efficient data system error recovery, an error threshold is dynamically adjusted from a default error threshold to one of a plurality of error threshold values comprising at least high threshold values, medium threshold values, and low threshold values, for a particular error associated with an event object indicating a responsive action for handling the particular error in a data system. The responsive action to the event object comprises determining whether the error threshold needs to be adjusted for the particular error, and if it is determined the error threshold for the particular error does not need adjustment, the default error threshold is used.
    Type: Application
    Filed: July 14, 2017
    Publication date: November 2, 2017
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Herve G.P. ANDRE, Larry JUAREZ, Brian A. RINALDI, Todd C. SORENSON, Liang H. WU