Patents by Inventor Clayton A. Curry

Clayton A. Curry 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: 10372537
    Abstract: In some examples, both object data and corresponding metadata are stored on thin provisioned block storage in which blocks for the storage of the object data and the metadata are dynamically provisioned from a shared pool. For instance, the metadata may be stored on the block storage using a tree data structure that may grow proportionally with the corresponding stored object data. The object storage may automatically adapt to the size and number of objects being stored, and storage space for metadata may be allocated dynamically on demand. Additionally, some implementations include storing data across multiple trays. For instance, a plurality of storage extents of an extent group may be allocated across a plurality of storage devices on multiple trays. The extent allocation may be tray-aware by allocating extents to maximize the probability that data remains available/recoverable in the presence of a failure in one or more trays.
    Type: Grant
    Filed: October 7, 2015
    Date of Patent: August 6, 2019
    Assignee: Hitachi Vantara Corporation
    Inventors: Charles C. Bennett, Jr., Nathan W. Clark, Kevin S. Canuette Grimaldi, Morgan Tyler Maxwell, Clayton A. Curry, Robert Barton Cooper
  • Patent number: 10235256
    Abstract: The storage system includes storage devices which have plural storage blocks. A first node with a first processor memory is configured to store first information which manages states of the storage blocks, and a second node including a second processor and memory is configured to store second information which manages the states of the storage blocks are included in the storage system to handle file operations. When a failure occurs on the second node, the first processor is configured to change the state of one or more storage blocks, previously reserved by the second node to be used for storing data by the second node, to one or more garbage blocks and perform garbage resolution processing thereon before becoming available for data storage. This process allows for rapid recovery of the filesystem as the entirety of the filesystem metadata need not be examined.
    Type: Grant
    Filed: August 18, 2014
    Date of Patent: March 19, 2019
    Assignee: Hitachi Vantara Corporation
    Inventors: Kevin Canuette Grimaldi, Morgan Tyler Maxwell, Clayton A Curry
  • Publication number: 20170075779
    Abstract: The storage system includes storage devices which have plural storage blocks. A first node with a first processor memory is configured to store first information which manages states of the storage blocks, and a second node including a second processor and memory is configured to store second information which manages the states of the storage blocks are included in the storage system to handle file operations. When a failure occurs on the second node, the first processor is configured to change the state of one or more storage blocks, previously reserved by the second node to be used for storing data by the second node, to one or more garbage blocks and perform garbage resolution processing thereon before becoming available for data storage. This process allows for rapid recovery of the filesystem as the entirety of the filesystem metadata need not be examined.
    Type: Application
    Filed: August 18, 2014
    Publication date: March 16, 2017
    Inventors: Kevin Canuette GRIMALDI, Morgan Tyler MAXWELL, Clayton A CURRY
  • Publication number: 20170075781
    Abstract: In some examples, both object data and corresponding metadata are stored on thin provisioned block storage in which blocks for the storage of the object data and the metadata are dynamically provisioned from a shared pool. For instance, the metadata may be stored on the block storage using a tree data structure that may grow proportionally with the corresponding stored object data. The object storage may automatically adapt to the size and number of objects being stored, and storage space for metadata may be allocated dynamically on demand. Additionally, some implementations include storing data across multiple trays. For instance, a plurality of storage extents of an extent group may be allocated across a plurality of storage devices on multiple trays. The extent allocation may be tray-aware by allocating extents to maximize the probability that data remains available/recoverable in the presence of a failure in one or more trays.
    Type: Application
    Filed: October 7, 2015
    Publication date: March 16, 2017
    Inventors: Charles C. BENNETT, Jr., Nathan W. CLARK, Kevin S. CANUETTE GRIMALDI, Morgan Tyler MAXWELL, Clayton A. CURRY, Robert Barton COOPER
  • Patent number: 7954034
    Abstract: A method of protecting data during transmission from an ECC protection scheme to a parity protection scheme, including reading a data word and an associated ECC from an upstream device; generating parity for the data word; generating a new ECC from the data word; computing a syndrome of the associated ECC and the new ECC; determining, based on the syndrome, if an error is present in the data word or the associated ECC; correcting a correctable error in the data word; correcting the parity for the data word; and transmitting the corrected data word and the corrected parity for the data word to a downstream device.
    Type: Grant
    Filed: September 30, 2005
    Date of Patent: May 31, 2011
    Assignee: EMC Corporation
    Inventors: Clayton A. Curry, Brian K. Campbell
  • Patent number: 7275201
    Abstract: A system having memory modules for storing nibbles of a word. The nibbles include an error correction/detection code. A memory controller is response to clock pulses to produce a read command. A synchronizer is responsive to the read nibbles and an associated read strobe signal for synchronizing the read nibbles and the read strobes to the clock pulses. A detection section is responsive to the clock pulses and the read command for producing a time window representative of a time duration during which each of the read strobes is expected. The detection system is responsive to each one of the read strobes and the produced time window for producing, for each one of the read strobes, a corresponding one of a plurality of NIBBLE ERROR signals. Each one of the NIBBLE ERROR signals indicates whether the corresponding one of the read strobes is within the produced window or is absent from such window.
    Type: Grant
    Filed: April 13, 2005
    Date of Patent: September 25, 2007
    Assignee: EMC Corporation
    Inventors: Ofer Porat, James Tryhubczak, Brian K. Campbell, Clayton A. Curry
  • Publication number: 20060236032
    Abstract: A memory system includes a bank of memory, an interface to a packet switching network, and a memory controller. The memory system is adapted to receive by the interface a packet based command to access the bank of memory. The memory controller is adapted to execute initialization and configuration cycles for the bank of memory. An embedded central processing unit (CPU) is included in the memory controller and is adapted to execute computer executable instructions. The memory controller is adapted to process the packet based command.
    Type: Application
    Filed: April 13, 2005
    Publication date: October 19, 2006
    Inventors: Brian Campbell, Brian Magnuson, Ofer Porat, David Scheffey, Clayton Curry