Patents by Inventor Raghuraman Govindasamy

Raghuraman Govindasamy 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: 10445004
    Abstract: A storage server includes a first controller, a second controller and physical drives. The first controller receives a request to store data in a virtual block address (VBA) of a virtual drive, determines a physical block address (PBA) of a physical drive on which to store the data, and sends to the physical drive a command to store the data at the PBA. The first controller generates a first metadata update for a first metadata table associated with the virtual drive, wherein the first metadata update indicates a mapping of the VBA to the PBA. The first controller generates a second metadata update for a second metadata table that identifies statuses of PBAs, wherein the second metadata update indicates that the PBA is valid. The first controller writes an entry to a cache in a memory, the entry comprising the first metadata update and the second metadata update.
    Type: Grant
    Filed: March 30, 2017
    Date of Patent: October 15, 2019
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Suhas Dantkale, Venkeepuram R. Satish, Raghuraman Govindasamy
  • Patent number: 10348830
    Abstract: A processing device receives an input/output (I/O) command generated by a process, the I/O command directed to a virtual storage provided to a host executing the process, wherein the virtual storage comprises a virtual non-volatile memory express (NVMe) drive. The processing device generates a new I/O command based on the received I/O command and encapsulates the new I/O command into a message. The processing device sends the message to at least one of a remote NVMe storage device or a storage server comprising one or more remote NVMe storage devices.
    Type: Grant
    Filed: July 17, 2017
    Date of Patent: July 9, 2019
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Patent number: 10235098
    Abstract: A processing device generates a clone of a first volume of storage, the first volume comprising a plurality of storage blocks, wherein the clone is a second volume that is writable and that references the plurality of storage blocks. The processing device increments a global volume count that represents a number of volumes. For each storage block of the plurality of storage blocks, the processing device postpones an update to metadata of the storage block until an event that causes any volume to stop referencing the storage block, wherein the metadata indicates volumes that reference the storage block.
    Type: Grant
    Filed: January 10, 2017
    Date of Patent: March 19, 2019
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Raghuraman Govindasamy, Venkeepuram R. Satish, Muthukumar Ratty
  • Patent number: 10191812
    Abstract: A storage server includes an IO controller, a management controller and physical drives. The IO controller generates multiple metadata updates and writes a cache entry that includes the multiple metadata updates to a first cache in memory of the management controller. The IO controller additionally writes a copy of the cache entry to a second cache in a memory of the IO controller and increments a commit pointer in the first and second caches to indicate that the metadata updates are committed.
    Type: Grant
    Filed: March 30, 2017
    Date of Patent: January 29, 2019
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Suhas Dantkale, Venkeepuram R. Satish, Raghuraman Govindasamy
  • Publication number: 20180284995
    Abstract: A storage server includes a first controller, a second controller and physical drives. The first controller receives a request to store data in a virtual block address (VBA) of a virtual drive, determines a physical block address (PBA) of a physical drive on which to store the data, and sends to the physical drive a command to store the data at the PBA. The first controller generates a first metadata update for a first metadata table associated with the virtual drive, wherein the first metadata update indicates a mapping of the VBA to the PBA. The first controller generates a second metadata update for a second metadata table that identifies statuses of PBAs, wherein the second metadata update indicates that the PBA is valid. The first controller writes an entry to a cache in a memory, the entry comprising the first metadata update and the second metadata update.
    Type: Application
    Filed: March 30, 2017
    Publication date: October 4, 2018
    Inventors: Suhas Dantkale, Venkeepuram R. Satish, Raghuraman Govindasamy
  • Publication number: 20180285198
    Abstract: A storage server includes an IO controller, a management controller and physical drives. The IO controller generates multiple metadata updates and writes a cache entry that includes the multiple metadata updates to a first cache in memory of the management controller. The IO controller additionally writes a copy of the cache entry to a second cache in a memory of the IO controller and increments a commit pointer in the first and second caches to indicate that the metadata updates are committed.
    Type: Application
    Filed: March 30, 2017
    Publication date: October 4, 2018
    Inventors: Suhas Dantkale, Venkeepuram R. Satish, Raghuraman Govindasamy
  • Patent number: 10079889
    Abstract: A solid state drive (SSD) comprises a storage area, a network interface controller (NIC) and a storage controller operatively coupled to the storage area. The storage controller comprises a mapping between the storage area and a virtual storage device that is accessible to a remote computing device. The storage controller is configured to receive a message encapsulating an input/output (I/O) command from a remote computing device via the NIC, wherein the I/O command is directed to the virtual storage device. The storage controller is further configured to determine one or more logical addresses of the virtual storage device specified in the I/O command, translate the one or more logical addresses of the virtual storage device into one or more physical addresses of the storage area, and access the one or more physical addresses of the storage area.
    Type: Grant
    Filed: February 27, 2018
    Date of Patent: September 18, 2018
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Patent number: 9936024
    Abstract: A storage server generates a device tree representing a maximal topology of the storage server, wherein the maximal topology is a maximum number of storage controllers and solid state drives (SSDs) that are supported by the storage server, and wherein a plurality of entries in the device tree contain placeholder information. The storage server discovers one or more SSDs of the storage server and determines drive information for the one or more SSDs that have been discovered. The storage server replaces the placeholder information in one or more of the plurality of entries in the device tree with the drive information for the one or more SSDs.
    Type: Grant
    Filed: February 6, 2017
    Date of Patent: April 3, 2018
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Patent number: 9727456
    Abstract: A processing device identifies a plurality of solid state storage devices arranged in an array and determines, for at least one solid state storage device of the plurality of solid state storage devices, a first time window during which the at least one solid state storage device is permitted to perform one or more garbage collection operations. The processing device then sends, to the at least one solid state storage device, a message comprising the first time window allocated to the at least one storage device, wherein the at least one solid state storage device is to perform the garbage collection operations during the first time window allocated to the at least one solid state storage device.
    Type: Grant
    Filed: November 3, 2014
    Date of Patent: August 8, 2017
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Patent number: 9712619
    Abstract: A processing device receives an input/output (I/O) command generated by a process, the I/O command directed to a virtual storage provided to a host executing the process, wherein the virtual storage comprises a virtual non-volatile memory express (NVMe) drive. The processing device generates a new I/O command based on the received I/O command and encapsulates the new I/O command into a message. The processing device sends the message to at least one of a remote NVMe storage device or a storage server comprising one or more remote NVMe storage devices.
    Type: Grant
    Filed: November 4, 2014
    Date of Patent: July 18, 2017
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Publication number: 20170149897
    Abstract: A processing device receives a message encapsulating an input/output (I/O) command from a remote computing device. The processing device identifies one or more physical storage devices to be accessed to satisfy the I/O command. The processing device then sends, to each physical storage device of the one or more physical storage devices, one or more non-volatile memory express (NVMe) commands directed to that physical storage device.
    Type: Application
    Filed: February 6, 2017
    Publication date: May 25, 2017
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Patent number: 9565269
    Abstract: A processing device receives a message encapsulating an input/output (I/O) command from a remote computing device. The processing device identifies one or more physical storage devices to be accessed to satisfy the I/O command. The processing device then sends, to each physical storage device of the one or more physical storage devices, one or more non-volatile memory express (NVMe) commands directed to that physical storage device.
    Type: Grant
    Filed: November 4, 2014
    Date of Patent: February 7, 2017
    Assignee: Pavilion Data Systems, Inc.
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Publication number: 20160127492
    Abstract: A processing device receives a message encapsulating an input/output (I/O) command from a remote computing device. The processing device identifies one or more physical storage devices to be accessed to satisfy the I/O command. The processing device then sends, to each physical storage device of the one or more physical storage devices, one or more non-volatile memory express (NVMe) commands directed to that physical storage device.
    Type: Application
    Filed: November 4, 2014
    Publication date: May 5, 2016
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Publication number: 20160127468
    Abstract: A processing device receives an input/output (I/O) command generated by a process, the I/O command directed to a virtual storage provided to a host executing the process, wherein the virtual storage comprises a virtual non-volatile memory express (NVMe) drive. The processing device generates a new I/O command based on the received I/O command and encapsulates the new I/O command into a message. The processing device sends the message to at least one of a remote NVMe storage device or a storage server comprising one or more remote NVMe storage devices.
    Type: Application
    Filed: November 4, 2014
    Publication date: May 5, 2016
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Publication number: 20160124847
    Abstract: A processing device identifies a plurality of solid state storage devices arranged in an array and determines, for at least one solid state storage device of the plurality of solid state storage devices, a first time window during which the at least one solid state storage device is permitted to perform one or more garbage collection operations. The processing device then sends, to the at least one solid state storage device, a message comprising the first time window allocated to the at least one storage device, wherein the at least one solid state storage device is to perform the garbage collection operations during the first time window allocated to the at least one solid state storage device.
    Type: Application
    Filed: November 3, 2014
    Publication date: May 5, 2016
    Inventors: Kiron Balkrishna Malwankar, Raghuraman Govindasamy, Dan M. Melnic
  • Patent number: 9087019
    Abstract: A method of operation of a disk storage system includes: providing a disk storage controller; coupling a first physical disk to the disk storage controller; detecting a failure of the first physical disk; and rebuilding a first logical drive, after replacing the first physical disk, includes: selecting a selected stripe of the first logical drive, reading a selected stripe status of the selected stripe, and marking the selected stripe as on-line in the selected stripe status.
    Type: Grant
    Filed: January 27, 2012
    Date of Patent: July 21, 2015
    Assignee: Promise Technology, Inc.
    Inventors: Raghuraman Govindasamy, Mohan B. Rowlands, Ganesh Kumar
  • Publication number: 20130198563
    Abstract: A method of operation of a disk storage system includes: providing a disk storage controller; coupling a first physical disk to the disk storage controller; detecting a failure of the first physical disk; and rebuilding a first logical drive, after replacing the first physical disk, including: selecting a selected stripe of the first logical drive, detecting a selected stripe status of the selected stripe, and marking the selected stripe as on-line in the selected stripe status.
    Type: Application
    Filed: January 27, 2012
    Publication date: August 1, 2013
    Applicant: Promise Technology, Inc.
    Inventors: Raghuraman Govindasamy, Mohan B. Rowlands, Ganesh Kumar
  • Publication number: 20130024723
    Abstract: A method of operation of a disk storage system includes: providing a disk storage controller; coupling a storage carrier, having a first physical disk and a second physical disk, to the disk storage controller; detecting a failure of the first physical disk; writing a non-volatile memory to show the second physical disk is unavailable when the storage carrier is de-coupled from the disk storage controller; and logging a first written stripe in the non-volatile memory for update when the second physical disk is not available including updating only the written stripe in the second physical disk when the storage carrier is again coupled to the disk storage controller.
    Type: Application
    Filed: July 19, 2011
    Publication date: January 24, 2013
    Applicant: PROMISE TECHNOLOGY, INC.
    Inventor: Raghuraman Govindasamy