Patents by Inventor Ram Kesavan
Ram Kesavan 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: 11397534Abstract: Techniques are provided for data management across a persistent memory tier and a file system tier. A block within a persistent memory tier of a node is determined to have up-to-date data compared to a corresponding block within a file system tier of the node. The corresponding block may be marked as a dirty block within the file system tier. Location information of a location of the block within the persistent memory tier is encoded into a container associated with the corresponding block. In response to receiving a read operation, the location information is obtained from the container. The up-to-date data is retrieved from the block within the persistent memory tier using the location information for processing the read operation.Type: GrantFiled: July 29, 2020Date of Patent: July 26, 2022Assignee: NetApp Inc.Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Ram Kesavan, Vinay Devadas
-
Patent number: 11340804Abstract: Techniques are provided for block allocation for persistent memory during aggregate transition. In a high availability pair including first and second nodes, the first node makes a determination that control of a first aggregate is to transition from the first node to the second node. A portion of available free storage space is allocated from a first persistent memory of the first node as allocated pages within the first persistent memory. Metadata information for the allocated pages is updated with an identifier of the first aggregate to create updated metadata information reserving the allocated pages for the first aggregate. The updated metadata information is mirrored to the second node, so that the second node also reserves those pages. Control of the first aggregate is transitioned to the second node. As a result, the nodes do not attempt allocating the same free pages to different aggregates during a transition.Type: GrantFiled: June 25, 2020Date of Patent: May 24, 2022Assignee: NetApp Inc.Inventors: Abdul Basit, Ananthan Subramanian, Ram Kesavan, Matthew Fontaine Curtis-Maury
-
Patent number: 11341056Abstract: Techniques are provided for atomic writes for persistent memory. In response to receiving a write operation, a new per-page structure with a new page block number is allocated. New data of the write operation is persisted to a new page of the persistent memory having the new page block number, and the new per-page structure is persisted to the persistent memory. If the write operation targets a hole after the new data and the new per-page structure have been persisted, then a new per-page structure identifier of the new per-page structure is inserted into a parent indirect page of a page comprising the new data. If the write operation targets old data after the new data and the new per-page structure have been persisted, then an old per-page structure of the old data is updated with the new page block number.Type: GrantFiled: April 20, 2020Date of Patent: May 24, 2022Assignee: NetApp Inc.Inventors: Matthew Fontaine Curtis-Maury, Vinay Devadas, Ananthan Subramanian, Ram Kesavan
-
Publication number: 20220147428Abstract: Failover methods and systems for a storage environment are provided. During a takeover operation to take over storage of a first storage system node by a second storage system node, the second storage system node copies information from a first storage location to a second storage location. The first storage location points to an active file system of the first storage system node, and the second storage location is assigned to the second storage system node for the takeover operation. The second storage system node quarantines storage space likely to be used by the first storage system node for a write operation, while the second storage system node attempts to take over the storage of the first storage system node. The second storage system node utilizes information stored at the second storage location during the takeover operation to give back control of the storage to the first storage system node.Type: ApplicationFiled: January 20, 2022Publication date: May 12, 2022Applicant: NETAPP, INC.Inventors: Ratnesh Gupta, Kalaivani Arumugham, Ram Kesavan, Ravikanth Dronamraju
-
Publication number: 20220138052Abstract: Techniques are provided for implementing a persistent memory storage tier to manage persistent memory of a node. The persistent memory is managed by the persistent memory storage tier at a higher level within a storage operating system storage stack than a level at which a storage file system of the node is managed. The persistent memory storage tier intercepts an operation targeting the storage file system. The persistent memory storage tier retargets the operation from targeting the storage file system to targeting the persistent memory. The operation is transmitted to the persistent memory.Type: ApplicationFiled: January 16, 2022Publication date: May 5, 2022Inventors: Ananthan Subramanian, Ram Kesavan, Matthew Fontaine Curtis-Maury, Mark Smith
-
Publication number: 20220083422Abstract: Techniques are provided for persistent memory file system reconciliation. As part of the persistent memory file system reconciliation, high level file system metadata associated with a persistent memory file system of persistent memory is reconciled. Client access to the persistent memory file system is inaccessible until reconciliation of the high level file system metadata has completed. A first scanner is executed to traverse pages of the persistent memory in order to fix local inconsistencies associated with the pages. A local inconsistency of a first set of metadata or data of a page is fixed using a second set of metadata or data of the page. The first scanner is executed asynchronously in parallel with processing client I/O directed to the persistent memory file system.Type: ApplicationFiled: September 11, 2020Publication date: March 17, 2022Inventors: Matthew Fontaine Curtis-Maury, Ram Kesavan, Ananthan Subramanian, Abdul Basit, Vinay Devadas, Yash Hetal Trivedi
-
Publication number: 20220083279Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.Type: ApplicationFiled: November 29, 2021Publication date: March 17, 2022Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian
-
Patent number: 11249869Abstract: Failover methods and systems for a storage environment are provided. During a takeover operation to take over storage of a first storage system node by a second storage system node, the second storage system node copies information from a first storage location to a second storage location. The first storage location points to an active file system of the first storage system node, and the second storage location is assigned to the second storage system node for the takeover operation. The second storage system node quarantines storage space likely to be used by the first storage system node for a write operation, while the second storage system node attempts to take over the storage of the first storage system node. The second storage system node utilizes information stored at the second storage location during the takeover operation to give back control of the storage to the first storage system node.Type: GrantFiled: September 21, 2020Date of Patent: February 15, 2022Assignee: NETAPP, INC.Inventors: Ratnesh Gupta, Kalaivani Arumugham, Ram Kesavan, Ravikanth Dronamraju
-
Publication number: 20220035524Abstract: Techniques are provided for data management across a persistent memory tier and a file system tier. A block within a persistent memory tier of a node is determined to have up-to-date data compared to a corresponding block within a file system tier of the node. The corresponding block may be marked as a dirty block within the file system tier. Location information of a location of the block within the persistent memory tier is encoded into a container associated with the corresponding block. In response to receiving a read operation, the location information is obtained from the container. The up-to-date data is retrieved from the block within the persistent memory tier using the location information for processing the read operation.Type: ApplicationFiled: July 29, 2020Publication date: February 3, 2022Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Ram Kesavan, Vinay Devadas
-
Patent number: 11226869Abstract: Techniques are provided for implementing a persistent memory storage tier to manage persistent memory of a node. The persistent memory is managed by the persistent memory storage tier at a higher level within a storage operating system storage stack than a level at which a storage file system of the node is managed. The persistent memory storage tier intercepts an operation targeting the storage file system. The persistent memory storage tier retargets the operation from targeting the storage file system to targeting the persistent memory. The operation is transmitted to the persistent memory.Type: GrantFiled: April 20, 2020Date of Patent: January 18, 2022Assignee: NetApp, Inc.Inventors: Ananthan Subramanian, Ram Kesavan, Matthew Fontaine Curtis-Maury, Mark Smith
-
Publication number: 20210405894Abstract: Techniques are provided for block allocation for persistent memory during aggregate transition. In a high availability pair including first and second nodes, the first node makes a determination that control of a first aggregate is to transition from the first node to the second node. A portion of available free storage space is allocated from a first persistent memory of the first node as allocated pages within the first persistent memory. Metadata information for the allocated pages is updated with an identifier of the first aggregate to create updated metadata information reserving the allocated pages for the first aggregate. The updated metadata information is mirrored to the second node, so that the second node also reserves those pages. Control of the first aggregate is transitioned to the second node. As a result, the nodes do not attempt allocating the same free pages to different aggregates during a transition.Type: ApplicationFiled: June 25, 2020Publication date: December 30, 2021Inventors: Abdul Basit, Ananthan Subramanian, Ram Kesavan, Matthew Fontaine Curtis-Maury
-
Patent number: 11188266Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.Type: GrantFiled: April 20, 2020Date of Patent: November 30, 2021Assignee: NetApp Inc.Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian
-
Publication number: 20210328593Abstract: Techniques are provided for implementing a file system format for persistent memory. A node, comprising persistent memory, receives an operation comprising a file identifier and file system instance information. A list of file system info objects are evaluated to identify a file system info object matching the file system instance information. An inofile, identified by the file system info object as being associated with inodes of files within an instance of the file system targeted by the operation, is traversed to identify an inode matching the file identifier. If the inode comprises an indicator that the file is tiered into the persistent memory, then the inode it utilized to facilitate execution of the operation upon the persistent memory. Otherwise, the operation is routed to a storage file system tier for execution by a storage file system upon storage associated with the node.Type: ApplicationFiled: July 1, 2021Publication date: October 21, 2021Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian, Mark Smith
-
Publication number: 20210326065Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.Type: ApplicationFiled: April 20, 2020Publication date: October 21, 2021Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian
-
Publication number: 20210326266Abstract: Techniques are provided for atomic writes for persistent memory. In response to receiving a write operation, a new per-page structure with a new page block number is allocated. New data of the write operation is persisted to a new page of the persistent memory having the new page block number, and the new per-page structure is persisted to the persistent memory. If the write operation targets a hole after the new data and the new per-page structure have been persisted, then a new per-page structure identifier of the new per-page structure is inserted into a parent indirect page of a page comprising the new data. If the write operation targets old data after the new data and the new per-page structure have been persisted, then an old per-page structure of the old data is updated with the new page block number.Type: ApplicationFiled: April 20, 2020Publication date: October 21, 2021Inventors: Matthew Fontaine Curtis-Maury, Vinay Devadas, Ananthan Subramanian, Ram Kesavan
-
Publication number: 20210326216Abstract: Techniques are provided for implementing a persistent memory storage tier to manage persistent memory of a node. The persistent memory is managed by the persistent memory storage tier at a higher level within a storage operating system storage stack than a level at which a storage file system of the node is managed. The persistent memory storage tier intercepts an operation targeting the storage file system. The persistent memory storage tier retargets the operation from targeting the storage file system to targeting the persistent memory. The operation is transmitted to the persistent memory.Type: ApplicationFiled: April 20, 2020Publication date: October 21, 2021Inventors: Ananthan Subramanian, Ram Kesavan, Matthew Fontaine Curtis-Maury, Mark Smith
-
Patent number: 11063601Abstract: Techniques are provided for implementing a file system format for persistent memory. A node, with persistent memory, receives an operation associated with a file identifier and file system instance information. A list of file system info objects are evaluated to identify a file system info object matching the file system instance information. An inofile, identified by the file system info object as being associated with inodes of files within an instance of the file system targeted by the operation, is traversed to identify an inode matching the file identifier. If the inode has an indicator that the file is tiered into the persistent memory, then the inode it utilized to facilitate execution of the operation upon the persistent memory. Otherwise, the operation is routed to a storage file system tier for execution by a storage file system upon storage associated with the node.Type: GrantFiled: April 20, 2020Date of Patent: July 13, 2021Assignee: NetApp, Inc.Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian, Mark Smith
-
Patent number: 10983709Abstract: Methods, non-transitory computer readable media, and computing devices that execute a storage operation, without journaling the storage operation in a log, and withhold from a file system a list of freed inodes including an indication of an inode freed as a result of the execution of the storage operation. A consistency point operation is then initiated that retrieves storage operations logged as journal entries in the log and commits a result of each of the storage operations to data storage devices. A list of available inodes is updated based on the list of freed inodes, when the consistency point operation is determined to be complete. This technology reduces the number of storage operations that are required to be journaled to maintain consistency of a file system, thereby reducing the runtime resources required to facilitate the journaling and replay resource required to replay the storage operations following a recovery.Type: GrantFiled: January 30, 2020Date of Patent: April 20, 2021Assignee: NETAPP, INC.Inventors: Ram Kesavan, Ananthan Subramanian, Hiroshi Ishii, Abdul Basit, Joseph Brown, Rohit Singh
-
Patent number: 10769024Abstract: One or more techniques and/or systems are provided for incremental transfer with unused data block reclamation. For example, source volume of a source storage filer may have a physical replication relationship with a destination volume of a destination storage filer. Snapshots of a file system of the source volume may be used to identify new data blocks (e.g., data blocks allocated or reallocated to a new snapshot) and/or unused data blocks (e.g., data blocks of a deleted snapshot) used to incrementally update the destination volume so that the destination volume is a mirrored replication of the source volume. In this way, new data blocks may be updated and unused data blocks may be punched out (e.g., deallocated) of the destination volume during execution of an incremental update.Type: GrantFiled: September 22, 2015Date of Patent: September 8, 2020Assignee: NetApp Inc.Inventors: Ananthan Subramanian, Rimas Svarcas, Ram Kesavan, Srishylam Simharajan, John Frederick Destefano
-
Publication number: 20200167084Abstract: Methods, non-transitory computer readable media, and computing devices that execute a storage operation, without journaling the storage operation in a log, and withhold from a file system a list of freed inodes including an indication of an inode freed as a result of the execution of the storage operation. A consistency point operation is then initiated that retrieves storage operations logged as journal entries in the log and commits a result of each of the storage operations to data storage devices. A list of available inodes is updated based on the list of freed inodes, when the consistency point operation is determined to be complete. This technology reduces the number of storage operations that are required to be journaled to maintain consistency of a file system, thereby reducing the runtime resources required to facilitate the journaling and replay resource required to replay the storage operations following a recovery.Type: ApplicationFiled: January 30, 2020Publication date: May 28, 2020Inventors: Ram Kesavan, Ananthan Subramanian, Hiroshi Ishii, Abdul Basit, Joseph Brown, Rohit Singh