Patents by Inventor Gordon James Coleman

Gordon James Coleman 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: 11922070
    Abstract: A method includes, responsive to receiving a modified first reservation command from a storage controller, identifying, by a storage drive, a first range of storage based on a first range identifier of the modified reservation command. The method also includes granting, by the storage drive, a reservation for access to the storage drive on behalf of a first host controller by associating the reservation for the first range with a second range of storage.
    Type: Grant
    Filed: November 18, 2022
    Date of Patent: March 5, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Gordon James Coleman, Peter E. Kirkpatrick, Roland Dreier
  • Publication number: 20240020227
    Abstract: A storage array controller may receive a write request comprising data to be stored at one or more solid-state storage devices. A write granularity associated with the write request may be generated that is less than a logical block size associated with the storage array controller. The data associated with the write request may be segmented based on the generated write granularity. The write request may be executed to store the segmented data at the one or more solid-state storage devices.
    Type: Application
    Filed: July 27, 2023
    Publication date: January 18, 2024
    Inventors: GORDON JAMES COLEMAN, ERIC SEPPANEN
  • Patent number: 11868309
    Abstract: A priority queue including an order of local data relocation operations to be performed by a plurality of solid-state storage devices is maintained. An indication of a new local data relocation operation is received from a solid-state storage device of the plurality of solid-state storage devices for data stored at the solid-state storage device, the indication including information associated with the data. The new local data relocation operation is inserted into a position in the order of the priority queue based on the information associated with the data.
    Type: Grant
    Filed: December 6, 2021
    Date of Patent: January 9, 2024
    Assignee: PURE STORAGE, INC.
    Inventors: Sankara Vaideeswaran, Hari Kannan, Gordon James Coleman
  • Publication number: 20230418496
    Abstract: One or more performance parameters associated with data stored at a storage device of a plurality of storage devices are received by a storage controller. A first number of blocks of the storage device to a high resiliency portion and a second number of blocks of the storage device to a low resiliency portion of the storage device are allocated based on the one or more performance parameters.
    Type: Application
    Filed: September 1, 2023
    Publication date: December 28, 2023
    Inventors: HARI KANNAN, GORDON JAMES COLEMAN, YIJIE ZHAO, PETER E. KIRKPATRICK, ROBERT LEE, YUHONG MAO, BORIS FEIGIN
  • Patent number: 11847013
    Abstract: Data associated with a write request is stored at a storage device of multiple solid-state storage devices. A determination as to whether the data stored at the storage device is readable is made by determining whether a number of subsequent programming operations have been performed since the data was stored at the storage device. A notification that the stored data is readable from the storage device is generated upon determining that the data is readable.
    Type: Grant
    Filed: January 6, 2022
    Date of Patent: December 19, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Gordon James Coleman, Andrew R. Bernat, Peter E. Kirkpatrick
  • Patent number: 11846968
    Abstract: A command to relocate data is transmitted by a storage controller. The command includes first address information associated with a first set of blocks storing the data at one or more storage devices using a first programming mode and second address information associated with a second set of blocks at the one or more storage devices to store the relocated data using a second programming mode. The command causes the relocation of the data from the first set of blocks to the second set of blocks while bypassing sending the data to the storage controller. An acknowledgement is received that the relocated data has been stored at the second number of blocks.
    Type: Grant
    Filed: November 4, 2022
    Date of Patent: December 19, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew R. Bernat, Peter E. Kirkpatrick, Gordon James Coleman, Wei Tang, John Roper
  • Patent number: 11847331
    Abstract: A storage unit has one or more processing devices, a solid-state drive and an open blocks cache memory. The open blocks cache memory holds open blocks of data or metadata and holds closed blocks of data or metadata pending writing to the solid-state drive. Closed blocks of data or metadata are written to the solid-state drive and open blocks of data or metadata are written to the open blocks cache memory. Values for open blocks in the open blocks cache memory are tracked. The values are adjusted in a first direction when an open block is written to the open blocks cache memory, and the values are adjusted in a second direction when an open block in the open blocks cache memory is closed and written from the open blocks cache memory to the solid-state drive.
    Type: Grant
    Filed: December 12, 2019
    Date of Patent: December 19, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew R. Bernat, Wei Tang, Phillip Hord, Gordon James Coleman
  • Patent number: 11789626
    Abstract: One or more performance parameters associated with data stored at a storage device of a plurality of storage devices are received by a storage controller. A first number of blocks of the storage device to a high resiliency portion and a second number of blocks of the storage device to a low resiliency portion of the storage device are allocated based on the one or more performance parameters.
    Type: Grant
    Filed: September 28, 2022
    Date of Patent: October 17, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Hari Kannan, Gordon James Coleman, Yijie Zhao, Peter E. Kirkpatrick, Robert Lee, Yuhong Mao, Boris Feigin
  • Publication number: 20230306010
    Abstract: Characteristics associated with a device are received from the device. Firmware for the device is generated based on the received characteristics.
    Type: Application
    Filed: June 1, 2023
    Publication date: September 28, 2023
    Inventors: Gordon James Coleman, Peter E. Kirkpatrick, Eric D. Seppanen
  • Patent number: 11741003
    Abstract: A storage array controller may receive a write request comprising data to be stored at one or more solid-state storage devices. A write granularity associated with the write request may be generated that is less than a logical block size associated with the storage array controller. The data associated with the write request may be segmented based on the generated write granularity. The write request may be executed to store the segmented data at the one or more solid-state storage devices.
    Type: Grant
    Filed: February 10, 2022
    Date of Patent: August 29, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Gordon James Coleman, Eric Seppanen
  • Publication number: 20230229552
    Abstract: An indication is received from a storage device that an attempt to read a portion of data from a block of the storage device has failed. A command is transmitted to the storage device to perform a scan on data stored at the block comprising the portion of data to acquire failure information associated with a plurality of subsets of the data stored at the block. The failure information associated with the plurality of subsets of the data stored at the block is received from the storage device.
    Type: Application
    Filed: February 24, 2023
    Publication date: July 20, 2023
    Inventors: DAMIAN YURZOLA, VIDYABHUSHAN MOHAN, GORDON JAMES COLEMAN, MELISSA KIMBLE, HARI KANNAN
  • Patent number: 11681448
    Abstract: Fabric modules in a storage system offer differing device IDs from a deterministic sequence to a storage device being added to the storage system. The storage device that is being added accepts a device ID that is higher in the deterministic sequence. The fabric module that offered the device ID same as was accepted by the storage device determines to proceed with initializing the storage device.
    Type: Grant
    Filed: October 12, 2021
    Date of Patent: June 20, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Ian Juch, Hao Liu, Boris Feigin, Haijie Xiao, Gordon James Coleman
  • Patent number: 11656961
    Abstract: Failure information associated with a plurality of blocks of a solid-state storage device of a plurality of solid-state storage devices is received. One or more blocks of the plurality of blocks storing uncorrectable data are identified based on the received failure information. A partial deallocation of the one or more blocks of the plurality of blocks is issued, the partial deallocation indicating that the one or more blocks store uncorrectable data. A remedial action associated with the one or more blocks of the plurality of blocks is performed.
    Type: Grant
    Filed: November 12, 2021
    Date of Patent: May 23, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Damian Yurzola, Gordon James Coleman, Vidyabhushan Mohan, Melissa Kimble
  • Publication number: 20230084818
    Abstract: A method includes, responsive to receiving a modified first reservation command from a storage controller, identifying, by a storage drive, a first range of storage based on a first range identifier of the modified reservation command. The method also includes granting, by the storage drive, a reservation for access to the storage drive on behalf of a first host controller by associating the reservation for the first range with a second range of storage.
    Type: Application
    Filed: November 18, 2022
    Publication date: March 16, 2023
    Inventors: Gordon James Coleman, Peter E. Kirkpatrick, Roland Dreier
  • Patent number: 11604690
    Abstract: An indication is received from a storage device that an attempt to read a portion of data from a block of the storage device has failed. A command is transmitted to the storage device to perform a scan on data stored at the block comprising the portion of data to acquire failure information associated with a plurality of subsets of the data stored at the block. The failure information associated with the plurality of subsets of the data stored at the block is received from the storage device.
    Type: Grant
    Filed: December 13, 2019
    Date of Patent: March 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Damian Yurzola, Vidyabhushan Mohan, Gordon James Coleman, Melissa Kimble, Hari Kannan
  • Publication number: 20230061949
    Abstract: A command to relocate data is transmitted by a storage controller. The command includes first address information associated with a first set of blocks storing the data at one or more storage devices using a first programming mode and second address information associated with a second set of blocks at the one or more storage devices to store the relocated data using a second programming mode. The command causes the relocation of the data from the first set of blocks to the second set of blocks while bypassing sending the data to the storage controller. An acknowledgement is received that the relocated data has been stored at the second number of blocks.
    Type: Application
    Filed: November 4, 2022
    Publication date: March 2, 2023
    Inventors: Andrew R. Bernat, Peter E. Kirkpatrick, Gordon James Coleman, Wei Tang, John Roper
  • Publication number: 20230024480
    Abstract: One or more performance parameters associated with data stored at a storage device of a plurality of storage devices are received by a storage controller. A first number of blocks of the storage device to a high resiliency portion and a second number of blocks of the storage device to a low resiliency portion of the storage device are allocated based on the one or more performance parameters.
    Type: Application
    Filed: September 28, 2022
    Publication date: January 26, 2023
    Inventors: Hari Kannan, Gordon James Coleman, Yijie Zhao, Peter E. Kirkpatrick, Robert Lee, Yuhong Mao, Boris Feigin
  • Patent number: 11537322
    Abstract: A method includes, responsive to receiving a modified first reservation command from a storage controller, identifying, by a storage drive, a first range of storage based on a first range identifier of the modified reservation command. The method also includes granting, by the storage drive, a reservation for access to the storage drive on behalf of a first host controller by associating the reservation for the first range with a second range of storage.
    Type: Grant
    Filed: October 7, 2020
    Date of Patent: December 27, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Gordon James Coleman, Roland Dreier, Peter E. Kirkpatrick
  • Patent number: 11520514
    Abstract: A command is transmitted to a storage device to relocate first data that partially fills a first erase block of the storage device and second data that partially fills a second erase block of the storage device to a third erase block of the storage device, wherein the command causes the relocation of the first data and the second data while bypassing sending the data to the storage controller. An acknowledgement that the first data and the second data have been stored at the third erase block is received from the storage device.
    Type: Grant
    Filed: July 20, 2021
    Date of Patent: December 6, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Zoltan DeWitt, Gordon James Coleman, Benjamin Scholbrock, Rongjin Qiao
  • Patent number: 11513974
    Abstract: A block of a storage device of a plurality of storage devices is allocated for storage of data, wherein the allocation comprises identifying a nonce associated with the block of the storage device. An erase command for the block is transmitted to the storage device, the erase command comprising the nonce, wherein the storage device is to erase the block upon determining that the nonce matches a corresponding nonce stored locally at the storage device.
    Type: Grant
    Filed: September 8, 2020
    Date of Patent: November 29, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Andrew R. Bernat, Grigori Inozemtsev, Gordon James Coleman, Yuhong Mao