Patents by Inventor Eric D. Seppanen

Eric D. Seppanen 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: 20240134569
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Application
    Filed: July 12, 2023
    Publication date: April 25, 2024
    Inventors: ERIC D. SEPPANEN, ANDREW R. BERNAT, TIMOTHY W. BRENNAN, MARK L. McAULIFFE, NEIL BUDA VACHHARAJANI
  • Patent number: 11868625
    Abstract: Dynamically managing control information in a storage device, including: querying, by an array management module executing on a storage array controller, the storage device for a location of control information for the storage device, the control information describing the state of one or more memory blocks in the storage device; and issuing, by the array management module in dependence upon the location of the control information for the storage device, a request to retrieve the control information for the storage device.
    Type: Grant
    Filed: September 29, 2021
    Date of Patent: January 9, 2024
    Assignee: PURE STORAGE, INC.
    Inventor: Eric D. Seppanen
  • 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
  • Publication number: 20230244382
    Abstract: A first data block on a storage device including a data structure of deallocated data blocks on the storage device and a corresponding program erase count value for each of the deallocated data blocks is identified. A determination as to whether a second data block from the data structure of deallocated data blocks remains deallocated after being added to the data structure of deallocated data blocks based on the program erase count value is made. The data is stored at the second data block upon determining that the second data block remains deallocated after being added to the data structure of deallocated data blocks.
    Type: Application
    Filed: April 6, 2023
    Publication date: August 3, 2023
    Inventors: ERIC D. SEPPANEN, NEIL BUDA VACHHARAJANI, NIDHI PANKAJ DOSHI
  • Patent number: 11704066
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Grant
    Filed: June 15, 2021
    Date of Patent: July 18, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Patent number: 11640244
    Abstract: A first data block on a storage device including a data structure of deallocated data blocks on the storage device and a corresponding program erase count value for each of the deallocated data blocks is identified. A determination as to whether a second data block from the data structure of deallocated data blocks remains deallocated after being added to the data structure of deallocated data blocks based on the program erase count value is made. The data is stored at the second data block upon determining that the second data block remains deallocated after being added to the data structure of deallocated data blocks.
    Type: Grant
    Filed: August 13, 2021
    Date of Patent: May 2, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Eric D. Seppanen, Neil Buda Vachharajani, Nidhi Pankaj Doshi
  • Publication number: 20220317894
    Abstract: Supporting a stateless controller in a storage system, including: sending, from a storage system controller to a storage device, a request for one or more locations of control information for the storage device, the storage system controller being external to the storage device; receiving, from the storage device, the one or more locations of one or more memory blocks that include the control information; and retrieving, from the storage device, the control information from the one or more memory blocks.
    Type: Application
    Filed: June 21, 2022
    Publication date: October 6, 2022
    Inventor: ERIC D. SEPPANEN
  • Patent number: 11385801
    Abstract: Offloading device management responsibilities from a storage device in an array of storage devices, including: retrieving, from the storage device, control information describing the state of one or more memory blocks in the storage device; and performing, in dependence upon the control information, a storage device management operation.
    Type: Grant
    Filed: March 29, 2019
    Date of Patent: July 12, 2022
    Assignee: PURE STORAGE, INC.
    Inventor: Eric D. Seppanen
  • Publication number: 20220019359
    Abstract: Dynamically managing control information in a storage device, including: querying, by an array management module executing on a storage array controller, the storage device for a location of control information for the storage device, the control information describing the state of one or more memory blocks in the storage device; and issuing, by the array management module in dependence upon the location of the control information for the storage device, a request to retrieve the control information for the storage device.
    Type: Application
    Filed: September 29, 2021
    Publication date: January 20, 2022
    Inventor: ERIC D. SEPPANEN
  • Publication number: 20210373762
    Abstract: A first data block on a storage device including a data structure of deallocated data blocks on the storage device and a corresponding program erase count value for each of the deallocated data blocks is identified. A determination as to whether a second data block from the data structure of deallocated data blocks remains deallocated after being added to the data structure of deallocated data blocks based on the program erase count value is made. The data is stored at the second data block upon determining that the second data block remains deallocated after being added to the data structure of deallocated data blocks.
    Type: Application
    Filed: August 13, 2021
    Publication date: December 2, 2021
    Inventors: Eric D. Seppanen, Neil Buda Vachharajani, Nidhi Pankaj Doshi
  • Publication number: 20210311667
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Application
    Filed: June 15, 2021
    Publication date: October 7, 2021
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Patent number: 11137918
    Abstract: Dynamically managing control information in a storage device, including: querying, by an array management module executing on a storage array controller, the storage device for a location of control information for the storage device, the control information describing the state of one or more memory blocks in the storage device; and issuing, by the array management module in dependence upon the location of the control information for the storage device, a request to retrieve the control information for the storage device.
    Type: Grant
    Filed: June 10, 2019
    Date of Patent: October 5, 2021
    Assignee: Pure Storage, Inc.
    Inventor: Eric D. Seppanen
  • Patent number: 11119657
    Abstract: A storage controller coupled to a storage array comprising one or more storage devices receive a request to write data to one of the storage devices. The storage controller determines a first data block on the storage device comprising a list of deallocated data blocks on the storage device, the list comprising a block number of each deallocated data block and an access operation count value at which each deallocated data block was deallocated. The storage controller identifies a second data block from the list of deallocated data blocks on the storage device based on a corresponding access operation count value from the list and writes the data to the second data block.
    Type: Grant
    Filed: October 17, 2019
    Date of Patent: September 14, 2021
    Assignee: PURE STORAGE, INC.
    Inventors: Nidhi Pankaj Doshi, Eric D. Seppanen, Neil Buda Vachharajani
  • Patent number: 11080254
    Abstract: Maintaining data associate with a storage device is described. A method may include receiving, by an application executed by a storage array controller of a host server of a solid-state storage array comprising a plurality of solid-state storage devices, an indication of a change in state of a solid-state storage device of the plurality of solid-state storage devices. In response to receiving the indication, the method may also include retrieving a plurality of tables stored at a volatile memory of the solid-state storage device, the plurality of tables comprising information associated with characteristics of a plurality of data blocks of the solid-state storage device. The method may also include identifying one or more rules associated with the plurality of tables and creating, by the storage array controller, a new plurality of tables based on the one or more rules.
    Type: Grant
    Filed: January 11, 2018
    Date of Patent: August 3, 2021
    Assignee: Pure Storage, Inc.
    Inventors: Gordon James Coleman, Eric D. Seppanen, Wei Tang
  • Patent number: 11074016
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Grant
    Filed: December 2, 2019
    Date of Patent: July 27, 2021
    Assignee: Pure Storage, Inc.
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Publication number: 20200394304
    Abstract: A topology of a solid-state storage device of a storage system is received from a storage controller. A plurality of schedulable units of the solid-state storage device that are configured to perform parallel access operations are identified based on the topology. A determination as to which of the plurality of schedulable units are associated with other access operations that have been scheduled to be performed by the solid-state storage device is made. A write operation is scheduled to be performed by one or more of the plurality of schedulable units that are not associated with the other access operations that have been scheduled to be performed by the solid-state storage device. The write operation is performed to store data at the solid-state storage device based on the scheduling.
    Type: Application
    Filed: June 3, 2020
    Publication date: December 17, 2020
    Inventors: Gordon James Coleman, Peter E. Kirkpatrick, Eric D. Seppanen
  • Publication number: 20200104077
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Application
    Filed: December 2, 2019
    Publication date: April 2, 2020
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Publication number: 20200050361
    Abstract: A storage controller coupled to a storage array comprising one or more storage devices receive a request to write data to one of the storage devices. The storage controller determines a first data block on the storage device comprising a list of deallocated data blocks on the storage device, the list comprising a block number of each deallocated data block and an access operation count value at which each deallocated data block was deallocated. The storage controller identifies a second data block from the list of deallocated data blocks on the storage device based on a corresponding access operation count value from the list and writes the data to the second data block.
    Type: Application
    Filed: October 17, 2019
    Publication date: February 13, 2020
    Inventors: Nidhi Pankaj Doshi, Eric D. Seppanen, Neil Buda Vachharajani
  • Patent number: 10496330
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Grant
    Filed: October 31, 2017
    Date of Patent: December 3, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Eric D. Seppanen, Neil Buda Vachharajani
  • Patent number: 10481798
    Abstract: A storage controller coupled to a storage array comprising one or more storage devices receive a request to write data to one of the storage devices. The storage controller determines a first data block on the storage device comprising a list of deallocated data blocks on the storage device, the list comprising a block number of each deallocated data block and an access operation count value at which each deallocated data block was deallocated. The storage controller identifies a second data block from the list of deallocated data blocks on the storage device based on a corresponding access operation count value from the list and writes the data to the second data block.
    Type: Grant
    Filed: October 28, 2016
    Date of Patent: November 19, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Nidhi Pankaj Doshi, Eric D. Seppanen, Neil Buda Vachharajani