Patents by Inventor Matthew J. Kalos

Matthew J. Kalos 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: 10223012
    Abstract: A determination is made that data stored in an extent of a first storage resource is to be moved to an extent of a second storage resource. Operations that are still awaiting to start execution in the first storage resource after the data stored in the extent of the first storage resource has been moved to the extent of the second storage resource, are configured for execution in the second storage resource.
    Type: Grant
    Filed: March 2, 2017
    Date of Patent: March 5, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Clint A. Hardy, Matthew J. Kalos, Karl A. Nielsen, Richard B. Stelmach, Hui Zhang
  • Patent number: 10223220
    Abstract: Provided are a computer program product, system, and method for processing a health condition message on a health condition to determine whether to perform a swap operation. A health condition message is received from a first server indicating an estimated Input/Output (I/O) delay to access a first storage resulting from a health condition experienced at the first server. A determination is made as to whether the estimated I/O delay exceeds a threshold response time for the first storage. A swap operation is performed to redirect I/O requests to data from the first server to the second server to access the data at the second storage in response to determining that the estimated I/O delay exceeds the threshold response time.
    Type: Grant
    Filed: October 13, 2016
    Date of Patent: March 5, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Clint A. Hardy, Matthew J. Kalos
  • Patent number: 10216429
    Abstract: A storage controller receives one or more host writes to a log file. A track is allocated to the log file. In response to completion of the one or more host writes to the log file, a determination is made that the track has remaining space. Data structures are reserved to avoid releasing the track having the remaining space to accommodate potential future writes to the log file in the remaining space of the track.
    Type: Grant
    Filed: June 26, 2015
    Date of Patent: February 26, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos
  • Publication number: 20190050339
    Abstract: Provided are a computer program product, system, and method for invalidating track format information for tracks demoted from cache. Demoted tracks demoted from the cache are indicated in a demoted track list. Track format information is saved for the demoted tracks. The track format information indicates a layout of data in the demoted tracks, wherein the track format information for the demoted tracks is used when the demoted tracks are staged back into the cache. An operation is initiated to invalidate a metadata track of the metadata tracks in the storage. Demoted tracks indicated in the demoted track list having metadata in the metadata track to invalidate are removed. The track format information for the demoted tracks having metadata in the metadata track to invalidate is removed.
    Type: Application
    Filed: August 9, 2017
    Publication date: February 14, 2019
    Inventors: Kyler A. Anderson, Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos
  • Publication number: 20190050340
    Abstract: Provided are a computer program product, system, and method for invalidating track format information for tracks in cache. Demoted tracks demoted from the cache are indicated in a demoted track list. Track format information is saved for the demoted tracks. The track format information indicates a layout of data in the demoted tracks, wherein the track format information for the demoted tracks is used when the demoted tracks are staged back into the cache. An operation is initiated to invalidate a metadata track of the metadata tracks in the storage. Demoted tracks indicated in the demoted track list having metadata in the metadata track to invalidate are removed. The track format information for the demoted tracks having metadata in the metadata track to invalidate is removed.
    Type: Application
    Filed: August 9, 2017
    Publication date: February 14, 2019
    Inventors: Kyler A. Anderson, Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos
  • Patent number: 10204060
    Abstract: Provided are a computer program product, system, and method for determining memory access categories to use to assign tasks to processor cores to execute. A computer system has a plurality of cores, each core is comprised of a plurality of processing units and at least one cache memory shared by the processing units on the core to cache data from a memory. At task is processed to determine one of the cores on which to dispatch the task. A memory access category of a plurality of memory access categories is determined to which the processed task is assigned. The processed task is dispatched to the core assigned the determined memory access category.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: February 12, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M Gupta, Matthew J. Kalos, Trung N. Nguyen
  • Publication number: 20190042115
    Abstract: In response to determining, by a storage controller, that a first process is to perform a write operation, a customer data track in a cache is configured for exclusive access while waiting for the write operation on the customer data track to be performed by the first process. In response to configuring the customer data track for the exclusive access, a copy of a metadata track is generated, wherein the metadata track stores metadata information of the customer data track and is configured for shared access. The copy of the metadata track is configured to provide exclusive access to a second process to perform operations on the copy of the metadata track, wherein the first process is able to perform the write operation on the customer data track that causes the metadata track to be updated while the second process performs the operations on the copy of the metadata track.
    Type: Application
    Filed: August 1, 2017
    Publication date: February 7, 2019
    Inventors: Kyler A. Anderson, Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos, Beth A. Peterson
  • Publication number: 20190034304
    Abstract: Provided are a computer program product, system, and method for using a track format code in a cache control block for a track in a cache to process read and write requests to the track in the cache. A track format table associates track format codes with track format metadata. A determination is made as to whether the track format table has track format metadata matching track format metadata of a track staged into the cache. A determination is made as to whether a track format code from the track format table for the track format metadata in the track format table matches the track format metadata of the track staged. A cache control block for the track being added to the cache is generated including the determined track format code when the track format table has the matching track format metadata.
    Type: Application
    Filed: July 27, 2017
    Publication date: January 31, 2019
    Inventors: Kyler A. Anderson, Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos, Beth A. Peterson
  • Publication number: 20190004951
    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.
    Type: Application
    Filed: September 7, 2018
    Publication date: January 3, 2019
    Inventors: Kevin J. Ash, Matthew G. Borlick, Lokesh M. Gupta, Matthew J. Kalos, Brian A. Rinaldi
  • Patent number: 10162535
    Abstract: A method is provided for identifying a lethargic drive. The method includes identifying a timing bucket unique to a drive located in a redundant array of independent disks (RAID) configuration, computing a delta-count for the timing bucket at a predetermined time, including determining a difference between a counter for the timing bucket at the predetermined time and the counter for the timing bucket at a time when the drive was replaced within the RAID configuration, comparing the delta-count for the timing bucket to a predetermined threshold, and determining whether the drive is lethargic, based on the comparing.
    Type: Grant
    Filed: June 6, 2017
    Date of Patent: December 25, 2018
    Assignee: International Business Machines Corporation
    Inventors: Matthew J. Kalos, Karl A. Nielsen
  • Patent number: 10157150
    Abstract: A control unit monitors a number of transfer ready operations and a number of retry operations during a monitoring period during communication with a plurality of channels. Based, on the monitoring, a number of buffer credits for communication with the plurality of channels is adjusted.
    Type: Grant
    Filed: December 14, 2017
    Date of Patent: December 18, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Roger G. Hathorn, Bret W. Holley, Matthew J. Kalos
  • Patent number: 10146452
    Abstract: A method for maintaining intelligent write ordering in an asynchronous data replication system is disclosed. In one embodiment, such a method includes performing the following, in order, for each extent of each rank of the primary storage device: (1) determining which primary volume the extent is associated with on the primary storage device; (2) if the primary volume that is associated with the extent is in a mirroring relationship with a corresponding secondary volume on the secondary storage device, scanning an out-of sync bitmap associated with the primary volume; and (3) sending, from the primary volume to the secondary volume, tracks in the extent having corresponding bits set in the out-of sync bitmap. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: April 22, 2016
    Date of Patent: December 4, 2018
    Assignee: International Business Machines Corporation
    Inventors: Kevin J. Ash, Matthew J. Kalos, Brian A. Rinaldi
  • Publication number: 20180341541
    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
  • 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: 10140236
    Abstract: A channel of a host computational device sends a command to transfer data to a control unit included in a storage controller. The channel of the host computational device receives a number of buffer credits from the control unit for communication with the control unit, where the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with a plurality of channels that includes the channel.
    Type: Grant
    Filed: November 29, 2017
    Date of Patent: November 27, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Roger G. Hathorn, Bret W. Holley, Matthew J. Kalos
  • Patent number: 10133691
    Abstract: A computer-implemented method for synchronous input/output (I/O) cache line padding is described. The cache line padding occurs between a server having a processor executing an operating system and a recipient control unit. The method can include receiving, via the processor at the recipient control unit, a partial line direct memory access (DMA) write request; fetching, via the processor, a device table entry (DTE) associated with the partial line DMA write request; determining, via the processor, a cache line size for a synchronous input/output (I/O) cache line; and writing a full cache line DMA write request by padding, via the processor, the partial line DMA write request with a padded portion, where the padded portion is based on the cache line size.
    Type: Grant
    Filed: June 23, 2016
    Date of Patent: November 20, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Scott A. Brewer, David F. Craddock, Matthew J. Kalos, Matthias Klein, Eric N. Lais
  • 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: 10120716
    Abstract: Mechanisms for improving computing system performance by a processor device. System resources are organized into a plurality of groups. Each of the plurality of groups is assigned one of a plurality of predetermined task pools. Each of the predetermined task pools has a plurality of tasks. Each of the plurality of groups corresponds to at least one physical boundary of the system resources such that a speed of an execution of those of the plurality of tasks for a particular one of the plurality of predetermined task pools is optimized by a placement of an association with the at least one physical boundary and the plurality of groups.
    Type: Grant
    Filed: October 2, 2014
    Date of Patent: November 6, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Seamus J. Burke, Lokesh M. Gupta, Clint A. Hardy, Matthew J. Kalos, Trung N. Nguyen, Karl A. Nielsen, Louis A. Rasor, David B. Whitworth
  • Patent number: 10114753
    Abstract: Provided are a computer program product, system, and method for using cache lists for multiple processors to cache and demote tracks in a storage system. Tracks in the storage stored in the cache are indicated in lists, wherein there is one list for each of a plurality of processors. Each of the processors processes the list for that processor to process the tracks in the cache indicated on the list. A determination is made of one of the lists from which to select one of the tracks in the cache indicated in the determined list to demote. The selected track is demoted from the cache.
    Type: Grant
    Filed: August 21, 2015
    Date of Patent: October 30, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Matthew G. Borlick, Lokesh M. Gupta, Matthew J. Kalos
  • Patent number: 10108552
    Abstract: Provided are a computer program product, system, and method for using cache lists for processors to determine tracks in a storage to demote from a cache. Tracks in the storage stored in the cache are indicated in lists. There is one list for each of a plurality of processors. Each of the processors processes the list for that processor to process the tracks in the cache indicated on the list. There is a timestamp for each of the tracks indicated in the lists indicating a time at which the track was added to the cache. Tracks indicated in each of the lists having timestamps that fall within a range of timestamps are demoted.
    Type: Grant
    Filed: August 21, 2015
    Date of Patent: October 23, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Matthew G. Borlick, Lokesh M. Gupta, Matthew J. Kalos