Patents by Inventor Morgan Clark
Morgan Clark 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: 11934347Abstract: The technology described herein efficiently determines whether a real inode is shared among views, or owned. In-memory data structures include a view snapshot generation counter that is increased as a snapshot that generates a view is created, and an inode total weight. An in-memory virtual inode cache dataset for a filesystem object associated with the view is instantiated with the value of snapshot generation counter, sharing-related data based on the inode mapping file entry for the object, and an inode access weight. To determine whether the inode is shared (and needs to be split), such as on a write to the object, the in-memory data is evaluated. The real inode is shared if the generation counters are unequal, if the sharing-related data indicates sharing at an intermediate indirect block level, or indicates sharing at the inode level and the inode access weight is less than the inode total weight.Type: GrantFiled: July 23, 2021Date of Patent: March 19, 2024Assignee: EMC IP HOLDING COMPANY LLCInventors: Rohit K. Chawla, Ahsan Rashid, Soumyadeep Sen, Marc A. De Souter, Morgan A. Clark, Alexander S. Mathews
-
Patent number: 11762808Abstract: Technology described herein can perform deletion of a snapshot or portion thereof. In an embodiment, a system can comprise a processor and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations. The operations can comprise, to delete a snapshot, or a portion of a snapshot, of a real filesystem, reading an inode mapping file (IMF) of the snapshot that indexes a virtual inode number (VIN) corresponding to a real inode. The operations further can comprise identifying the real inode of the snapshot referenced by the VIN, identifying a file object corresponding to the real inode, and deleting the file object from the snapshot.Type: GrantFiled: October 20, 2021Date of Patent: September 19, 2023Assignee: EMC IP HOLDING COMPANY LLCInventors: Alexander S. Mathews, Ahsan Rashid, Walter Forrester, Morgan A. Clark, Soumyadeep Sen, Rohit K. Chawla
-
Patent number: 11748313Abstract: Optimizing file system resource reservation is presented herein. The method comprises dividing a virtual file system address space into subspaces, initializing the subspaces with volume slices of a group of volume slices comprising a first volume slice, a second volume slice, and a collection of reserved volume slices allocated based on an allocation pattern that allocates volume slices as a function of a quantitative relationship between a first value associated with a first volume slice and a second value associated with a second volume slice, determining that a data block count is insufficient to service a write operation of user data to the second volume slice; and provisioning a second subspace with a free volume slice obtained from the collection of reserved volume slices, and wherein the provisioning of the second subspace with the free volume slice is performed without invoking a memory exclusion mechanism.Type: GrantFiled: October 22, 2021Date of Patent: September 5, 2023Assignee: EMC IP HOLDING COMPANY LLCInventors: Ahsan Rashid, Morgan A. Clark
-
Publication number: 20230131270Abstract: Optimizing file system resource reservation is presented herein. The method comprises dividing a virtual file system address space into subspaces, initializing the subspaces with volume slices of a group of volume slices comprising a first volume slice, a second volume slice, and a collection of reserved volume slices allocated based on an allocation pattern that allocates volume slices as a function of a quantitative relationship between a first value associated with a first volume slice and a second value associated with a second volume slice, determining that a data block count is insufficient to service a write operation of user data to the second volume slice; and provisioning a second subspace with a free volume slice obtained from the collection of reserved volume slices, and wherein the provisioning of the second subspace with the free volume slice is performed without invoking a memory exclusion mechanism.Type: ApplicationFiled: October 22, 2021Publication date: April 27, 2023Inventors: Ahsan Rashid, Morgan A. Clark
-
Publication number: 20230118349Abstract: Technology described herein can perform deletion of a snapshot or portion thereof. In an embodiment, a system can comprise a processor and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations. The operations can comprise, to delete a snapshot, or a portion of a snapshot, of a real filesystem, reading an inode mapping file (IMF) of the snapshot that indexes a virtual inode number (VIN) corresponding to a real inode. The operations further can comprise identifying the real inode of the snapshot referenced by the VIN, identifying a file object corresponding to the real inode, and deleting the file object from the snapshot.Type: ApplicationFiled: October 20, 2021Publication date: April 20, 2023Inventors: Alexander S. Mathews, Ahsan Rashid, Walter Forrester, Morgan A. Clark, Soumyadeep Sen, Rohit K. Chawla
-
Publication number: 20230027230Abstract: The technology described herein efficiently determines whether a real inode is shared among views, or owned. In-memory data structures include a view snapshot generation counter that is increased as a snapshot that generates a view is created, and an inode total weight. An in-memory virtual inode cache dataset for a filesystem object associated with the view is instantiated with the value of snapshot generation counter, sharing-related data based on the inode mapping file entry for the object, and an inode access weight. To determine whether the inode is shared (and needs to be split), such as on a write to the object, the in-memory data is evaluated. The real inode is shared if the generation counters are unequal, if the sharing-related data indicates sharing at an intermediate indirect block level, or indicates sharing at the inode level and the inode access weight is less than the inode total weight.Type: ApplicationFiled: July 23, 2021Publication date: January 26, 2023Inventors: Rohit K. Chawla, Ahsan Rashid, Soumyadeep Sen, Marc A. De Souter, Morgan A. Clark, Alexander S. Mathews
-
Patent number: 10929342Abstract: Techniques for limiting storage consumed by a file system without shrinking a volume upon which the file system is deployed. The techniques are employed in a clustered environment including multiple NAS nodes, each having access to block storage including multiple storage devices. By deploying the file system on a volume of a NAS node within the clustered environment, setting the value of the FS user size to be equal to the FS volume size, and if, at a later time, it is desired to reduce the file system size, setting the value of the FS user size to a lesser value than the FS volume size, IO requests received at the NAS node can be satisfied within the logical limit of the lesser value of the FS user size without shrinking the local volume, allowing the file system size to be reduced without requiring close coordination with the block storage.Type: GrantFiled: July 30, 2018Date of Patent: February 23, 2021Assignee: EMC IP Holding Company LLCInventors: Ahsan Rashid, Walter C. Forrester, Marc De Souter, Morgan A. Clark
-
Publication number: 20200034445Abstract: Techniques for limiting storage consumed by a file system without shrinking a volume upon which the file system is deployed. The techniques are employed in a clustered environment including multiple NAS nodes, each having access to block storage including multiple storage devices. By deploying the file system on a volume of a NAS node within the clustered environment, setting the value of the FS user size to be equal to the FS volume size, and if, at a later time, it is desired to reduce the file system size, setting the value of the FS user size to a lesser value than the FS volume size, IO requests received at the NAS node can be satisfied within the logical limit of the lesser value of the FS user size without shrinking the local volume, allowing the file system size to be reduced without requiring close coordination with the block storage.Type: ApplicationFiled: July 30, 2018Publication date: January 30, 2020Inventors: Ahsan Rashid, Walter C. Forrester, Marc De Souter, Morgan A. Clark
-
Patent number: 10148662Abstract: Described are methods, systems, and apparatus, including computer program products for de-duplicating access control lists (ACLs). A first ACL associated with a first computer file is received. A first checksum based at least in part on the first ACL is calculated. One or more directory entries based on the first checksum are retrieved from a de-duplication directory, wherein each directory entry of the one or more directory entries comprises a reference to an ACL and a name comprising the first checksum. A directory entry of the one or more directory entries is identified that references a second ACL that specifies the same permissions as the first ACL. A reference to the second ACL of the directory entry is added to the first computer file.Type: GrantFiled: January 21, 2015Date of Patent: December 4, 2018Assignee: EMC IP Holding Company LLCInventors: Morgan A Clark, William C Davenport, Michael D Schouten, Qi Mao, Yingchao Zhou, Yunfei Chen
-
Patent number: 9834362Abstract: A container includes an upper chamber, a lower chamber, and a physical actuator, and may include chambers. Each chamber includes a different substance. Each chamber is sealed off from adjacent chambers and the atmosphere. At least one of the chambers is sealed at below atmospheric pressure, which helps hold that chamber in contact with one or more of the other chambers. When the physical actuator is activated, the seals between the chambers are opened to each other and atmosphere, which causes the substances to mix together in the chamber that was previously maintained at below atmospheric pressure. The change in pressure differential also assists in the mixing.Type: GrantFiled: October 6, 2015Date of Patent: December 5, 2017Assignee: MIXT BEVERAGES, INC.Inventors: Edward Vincent Stilson, Alec Morgan Clark, JoeBen Bevirt, Gregory Cole DiMaggio
-
Patent number: 9430331Abstract: Directory attributes are provided so that the time for creating an incremental backup of a file system by a scan of the file system tree is proportional generally to the number of files that change between backups instead of the number of files in the file system. A tree modification attribute indicates whether or not any file in a directory tree has changed since the last backup. If no file has changed in the directory tree, then the entire tree is skipped during the scan for changed files. In addition, a list is compiled of the files in the directory that represent branches having at least one changed file, so that the list is scanned instead of the directory entries. When a file is changed for the first time since the last backup, the file is queued so that the directory attributes are updated in a background process.Type: GrantFiled: July 16, 2012Date of Patent: August 30, 2016Assignee: EMC CorporationInventors: Ivan Basov, Jean-Pierre Bono, Morgan Clark, Christopher H. Stacey
-
Patent number: 9430492Abstract: An improved technique involves identifying the location of backed free blocks, i.e., blocks within an upper deck file system that have been provisioned from storage devices of a data storage system to a lower deck file system, allocated from the lower deck file system to the upper deck file system, and later freed from the upper deck file system. A storage processor accesses a set of data structures that identifies backed free blocks as opposed to free blocks that have not been written into and thus do not correspond to any allocated blocks in storage. Once the storage processor identifies the backed free blocks, the storage processor frees each block in the lower deck file system from which the respective backed free block was allocated. The storage processor then updates the set of data structures to indicate that the respective backed free block is now simply a free block.Type: GrantFiled: June 28, 2013Date of Patent: August 30, 2016Assignee: EMC CorporationInventors: Jean-Pierre Bono, Morgan Clark, Michael Scheer, William C. Davenport
-
Patent number: 9400792Abstract: A technique for managing storage tiering in a data storage apparatus operates at a fine level of granularity in response to write requests as blocks are allocated for writing. As write requests arrive or are otherwise processed by the data storage apparatus, the data storage apparatus identifies a quality of service to be provided for satisfying each write request and allocates a set of blocks from storage devices of storage tiers that provide the identified quality of service. The data storage apparatus may then store the information specified in the write request in the newly allocated blocks.Type: GrantFiled: June 27, 2013Date of Patent: July 26, 2016Assignee: EMC CorporationInventors: Jean-Pierre Bono, William C. Davenport, Miles A. de Forest, Philippe Armangau, Michael Scheer, Morgan Clark, Ahsan Rashid
-
Patent number: 9355121Abstract: A technique for managing a file system includes dividing the addressable space of a file system into multiple subspaces: a data subspace for user data; an inode subspace for inodes describing the user data; and an MDB (metadata block) subspace for indirect blocks and/or directory structures pertaining to the user data. In response to storage requests to write user files to the file system, the file system stores user data of the files in the data subspace, stores inodes pertaining to the user files in the inode subspace, and stores indirect blocks and/or directories in the MDB subspace.Type: GrantFiled: June 28, 2013Date of Patent: May 31, 2016Assignee: EMC CorporationInventors: Michael Scheer, Morgan Clark, Ahsan Rashid, Srinivasa R. Vempati, Marc DeSouter, Pranit Sethi, Maher Kachmar
-
Patent number: 9317419Abstract: A method, computer program product, and computing system for grouping storage blocks within a file system into a plurality of storage pools including a free-backed storage pool, a free-unbacked storage pool, and an allocated-backed storage pool. The free-backed storage pool identifies unused storage blocks within the file system that are already associated with physical storage space within a backend storage system. The free-unbacked storage pool identifies unused storage blocks within the file system that are not yet associated with physical storage space within the backend storage system. The allocated-backed storage pool identifies used storage blocks within the file system that are already associated with physical storage space within the backend storage system. A request is received for one or more unused storage blocks within the file system.Type: GrantFiled: March 15, 2013Date of Patent: April 19, 2016Assignee: EMC CorporationInventors: Jean-Pierre Bono, Morgan A. Clark, Michael D. Scheer, William C. Davenport, Sairam Veeraswamy
-
Patent number: 9152637Abstract: An improved technique generates formatted file system metadata in increments only when metadata for those increments are specifically requested. A location on a storage volume designated for storing file system metadata is read and tested to determine whether it stores a predetermined pattern indicating an unformatted state. If the pattern is found, metadata for the designated location are generated and returned. Otherwise, metadata are returned as initially read from the storage volume.Type: GrantFiled: August 22, 2012Date of Patent: October 6, 2015Assignee: EMC CorporationInventors: Walter C. Forrester, Marc DeSouter, Michael D. Scheer, Morgan Clark, Pranit Sethi
-
Patent number: 9122689Abstract: An improved technique involves providing a pair of inode numbers in a directory entry for a file in a directory of a target file system. Along these lines, the target file system writes a first inode number and a second inode number to the directory entry for the file. While the client has not yet remounted its file system, that client may continue to use the file handle provided for the original file system. The data storage system continues to refer to a mapping table that cross-references initial inode numbers to target ones, at some cost in performance. Nevertheless, the client has an option to remount the file system at a time that is convenient to the client, so that the client may obtain a new handle. The client may subsequently use the new file handle to access the file.Type: GrantFiled: March 15, 2013Date of Patent: September 1, 2015Assignee: EMC CorporationInventors: Jean-Pierre Bono, Philippe Armangau, Marc DeSouter, William Davenport, Morgan Clark, Michael D. Schouten
-
Patent number: 9104675Abstract: For enabling a fast reverse lookup of parent directories storing records of hard links to a specified regular file, a file system manager maintains a hard link database (HLDB) storing information for addressing hard links to the regular files having multiple hard links. The HLDB contains a corresponding HLDB file for each regular file having multiple hard links. In a preferred implementation, the inode of each regular file stores the addressing information for one hard link to the regular file, a corresponding HLDB file stores the addressing information for other hard links to the regular file, each HLDB file is a directory accessed by invoking file system manager directory access routines, and the HLDB has a directory tree providing a multi-level hash index for searching the HLDB given the inode number of a regular file.Type: GrantFiled: May 1, 2012Date of Patent: August 11, 2015Assignee: EMC CorporationInventors: Morgan Clark, Michael D. Scheer, Michael D. Schouten, Jean-Pierre Bono, Alexander S. Mathews
-
Patent number: 9021303Abstract: A dataset is recovered after a server reboot while clients access the dataset. In response to the reboot, not-yet-completed transactions in a log are parsed to create, for each of the dataset blocks modified by these active transactions, a respective block replay list of the active transactions that modify the block. Once the block replay lists have been created, clients may access specified blocks of the dataset after on-demand recovery of the specified blocks. The on-demand recovery is concurrent with a background recovery task that replays the replay lists. To accelerate log space recovery, the parsing of the log inserts each replay list into a first-in first-out queue serviced by multiple replay threads. The queue can also be used as the cache writeback queue, so that the cache index is used for lookup of the replay list and the recovery state of a given block.Type: GrantFiled: January 29, 2013Date of Patent: April 28, 2015Assignee: EMC CorporationInventors: Marc A. DeSouter, Pranit Sethi, Morgan Clark, Jean-Pierre Bono, Sairam Veeraswamy, Peter C. Bixby, Philippe Armangau
-
Patent number: 8407265Abstract: In a file server, a file system is built upon a volume of data storage. The file system includes multiple cylinder groups. Each cylinder group includes file system blocks. The file system blocks include allocated blocks and free blocks. The volume includes slices of storage, and each slice stores at least one of the cylinder groups. A hierarchical slice map has a top level that includes a count of free blocks in the file system, an upper level that includes a count of free blocks in groups of the slices, an intermediate level that includes a count of the free blocks in sub-groups of the slices, and a bottom level that includes a count of the free blocks in each slice of storage. To find a free block for allocation to a file, the slice map hierarchy is searched in a top-down fashion.Type: GrantFiled: November 19, 2010Date of Patent: March 26, 2013Assignee: EMC CorporationInventors: Michael D. Scheer, Jean-Pierre Bono, Morgan Clark, Hongliang Tang, Sairam Veeraswamy, Pranit Sethi, Alexander S. Mathews