Patents by Inventor James M. Holt

James M. Holt 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: 10037289
    Abstract: In a data storage system a host I/O request is received from a host-side interface, the host I/O request specifying a range of logical block addresses (LBAs) of a mapped logical unit (MLU). Mapping information is obtained for a plurality of extents of the underlying logical units of storage. If there are a sufficient number of free sub-I/O request tracking structures to track completion of a plurality of respective sub-I/O requests for the extents, then the sub-I/O requests are concurrently issued to the device-side interface, using the mapping information. Upon receiving transfer initiation responses for the sub-I/O requests to initiate transfer of the respective extents, they are forwarded to the host-side interface to cause the respective extents to be transferred to/from the host. As the transfer initiation responses are forwarded to the host-side interface, the respective sub-I/O request tracking structures are freed for use in processing subsequent host I/O requests.
    Type: Grant
    Filed: December 17, 2015
    Date of Patent: July 31, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Milind M. Koli, Timothy C. Ng, James M. Holt
  • Patent number: 9934172
    Abstract: A method in a data storage system includes receiving a host I/O request from a host-side interface specifying a range of logical block addresses (LBAs) of a mapped logical storage unit (MLU) mapped through a device-side interface to underlying units of storage. Mapping information is obtained for extents of the underlying logical storage units mapped to sub-ranges of the range of LBAs. Sub-I/O requests for the extents are concurrently issued to the device-side interface based on the mapping information, subject to a throttling mechanism to manage performance. The device-side interface provides transfer initiation responses to initiate transfer of the extents, the responses being forwarded to the host-side interface to cause the host-side interface to transfer the extents in a transfer phase. The transfer initiation responses may be re-ordered as necessary to enable the host-side interface to transfer the extents in address order in satisfaction of the host I/O request.
    Type: Grant
    Filed: December 17, 2015
    Date of Patent: April 3, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Milind M. Koli, Timothy C. Ng, James M. Holt
  • Patent number: 9612756
    Abstract: A method in a data storage system includes receiving a host I/O request from a host-side interface that specifies a range of logical block addresses (LBAs) of a mapped logical unit (MLU) of storage that is mapped through a device-side interface to underlying logical units of storage. Mapping information is obtained for extents of the underlying logical units of storage mapped to sub-ranges of the range of LBAs. Sub-I/O requests for the extents are concurrently issued to the device-side interface based on the mapping information. The device-side interface provides transfer initiation responses to initiate transfer of the extents, the responses being received and forwarded to the host-side interface to cause the host-side interface to transfer the extents in a transfer phase. The transfer initiation responses may be re-ordered as necessary to enable the host-side interface to transfer the extents in address order in satisfaction of the host I/O request.
    Type: Grant
    Filed: March 26, 2015
    Date of Patent: April 4, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Milind Koli, Timothy Ng, James M. Holt
  • Patent number: 9558232
    Abstract: Techniques are described for performing a copy operation. A first request is received to perform a copy operation. The first request includes a set of parameters in accordance with a defined interface and include a source area and a target area. The source area includes source ranges and source devices. Each of the source ranges identifies a portion of a logical address range of a different one of the source devices. The target area includes target ranges and target devices. Each of the target ranges identifies a portion of a logical address range of a different one of the target devices. The first request is partitioned in to a plurality of other requests each of which is a request to copy a portion of source data located in the source area to a corresponding location in the target area. The other requests are then issued.
    Type: Grant
    Filed: June 21, 2013
    Date of Patent: January 31, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Alan L. Taylor, James M. Holt, Robert F. Goudreau, Karl M. Owen, Chung-Huy Chen
  • Patent number: 9501290
    Abstract: Techniques are described for generating a unique identifier by a first processor using a plurality of values including a shared value, the first processor's identifier, a container identifier and a time value. The shared value is a common value used by a plurality of processors including the first processor. The container identifier identifies a memory location. The time value denotes an amount of time that has elapsed since the first processor was last booted.
    Type: Grant
    Filed: September 8, 2015
    Date of Patent: November 22, 2016
    Assignee: EMC IP Holding Company LLC
    Inventors: Robert F. Goudreau, James M. Holt, Karl M. Owen, Alan L. Taylor, Chung-Huy Chen
  • Patent number: 9380114
    Abstract: A technique manages peer messaging across multiple SPs of a data storage array. The technique involves using a token, by a first SP of the data storage array, to identify particular data stored at a source storage location on the data storage array. The technique further involves starting, by the first SP, multiple WUT operations which use the token in response to multiple WUT requests, each WUT operation moving the particular data from the source storage location to a respective destination storage location. The technique further involves providing, by the first SP, a single “touch” message in response to starting the multiple WUT operations by the first SP, the single “touch” message informing a set of other SPs of the data storage array that the token which identifies the particular data has been touched.
    Type: Grant
    Filed: June 27, 2013
    Date of Patent: June 28, 2016
    Assignee: EMC Corporation
    Inventors: James M. Holt, Robert F. Goudreau, Karl M. Owen, Alan L. Taylor, Chung-Huy Chen
  • Patent number: 9304699
    Abstract: A technique manages token states across multiple storage processors (SPs) of a data storage array. The technique involves using a token, by a first SP, to identify particular data stored on the array. The technique further involves updating, by the first SP, a first SP-controlled set of token state information for the token, the first SP-controlled set of token state information including (i) a first token state which indicates whether the token is “idle” or “busy” from a perspective of the first SP and (ii) a second token state which indicates whether the token is “idle” or “busy” from a perspective of a second SP. The technique further involves expiring, by the first SP, the token in response to the first SP-controlled set of token state information indicating that the token has remained “idle” for at least a predefined amount of time.
    Type: Grant
    Filed: June 27, 2013
    Date of Patent: April 5, 2016
    Assignee: EMC Corporation
    Inventors: Robert F. Goudreau, James M. Holt, Karl M. Owen, Alan L. Taylor, Chung-Huy Chen
  • Patent number: 9256598
    Abstract: Methods, systems, and computer readable media for copy-on-demand optimization for large writes are disclosed. According to one aspect, a method for copy on demand optimization for large writes includes, in a system having a source data storage entity and a destination data storage entity, receiving a write request to write data to a target portion of the source data storage entity, the target portion of the source data storage entity comprising at least one data storage block. The method includes determining whether the source data storage entity and the destination data storage entity are engaged in a backup operation in which data sufficient to synchronize the source data storage entity to the destination data storage entity is copied from the destination data storage entity to the source data storage entity, and if so, determining whether the target portion of the source data storage entity is not yet synchronized to the destination data storage entity.
    Type: Grant
    Filed: August 19, 2009
    Date of Patent: February 9, 2016
    Assignee: EMC Corporation
    Inventors: James M. Holt, Robert K. Dewitt, David Haase, Somnath A. Gulye, Saurabh M. Pathak
  • Patent number: 9158735
    Abstract: Techniques are described for generating a unique identifier by a first processor using a plurality of values including a shared value, the first processor's identifier, a container identifier and a time value. The shared value is a common value used by a plurality of processors including the first processor. The container identifier identifies a memory location. The time value denotes an amount of time that has elapsed since the first processor was last booted.
    Type: Grant
    Filed: June 21, 2013
    Date of Patent: October 13, 2015
    Assignee: EMC Corporation
    Inventors: Robert F. Goudreau, James M. Holt, Karl M. Owen, Alan L. Taylor, Chung-Huy Chen