Patents by Inventor Robert L. Fair
Robert L. Fair 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: 9235450Abstract: A computer-implemented method to reduce slow or stuck SCSI commands at a SCSI target is disclosed. The method starts with initiating a first request to acquire an exclusive lock for a first service daemon of a SCSI target to shut down a first service, where the SCSI target offers a plurality of services, and where each service corresponds to a service daemon. The first service daemon receives a first rejection of the exclusive lock for the first request as the exclusive lock is currently held by a second service daemon corresponding to a second service. Then the first service daemon initiates a second request to acquire the exclusive lock in an attempt to shut down the first service again after a delay period. In response to a second rejection, execution of SCSI commands associated with the second service currently possessing the exclusive lock is terminated.Type: GrantFiled: June 26, 2013Date of Patent: January 12, 2016Assignee: EMC CorporationInventors: Robert L. Fair, Shobhan Kumar Chinnam
-
Publication number: 20150339221Abstract: A data storage system can automatically improve the layout of data blocks on a mass storage subsystem by collecting optimization information during both read and write activities, then processing the optimization information to limit the impact of optimization activities on the system's response to client requests. Processing read-path optimization information and write-path optimization information through shared rate-limiting logic simplifies system administration and promotes phased implementation, which can reduce the difficulty of developing a self-optimizing storage server.Type: ApplicationFiled: August 4, 2015Publication date: November 26, 2015Inventor: Robert L. Fair
-
Patent number: 9152352Abstract: A method of an aspect includes receiving a request to move between filemarks at a network interface. A filemark cache is accessed with an offset into an open virtual tape file based on the received request. A determination is made that the offset is in the filemark cache. Filemark metadata corresponding to the offset is read from the filemark cache. The filemark cache is separate from the open virtual tape file. Other methods, apparatus, and articles are also disclosed.Type: GrantFiled: September 14, 2012Date of Patent: October 6, 2015Assignee: EMC CorporationInventor: Robert L. Fair
-
Patent number: 9152565Abstract: A storage system implements a storage operating system configured to concurrently perform speculative readahead for a plurality of different read streams. Unlike previous implementations, the operating system manages a separate set of readahead metadata for each of the plurality of read streams. Consequently, the operating system can “match” a received client read request with a corresponding read stream, then perform readahead operations for the request in accordance with the read stream's associated set of metadata. Because received client read requests are matched to their corresponding read streams on a request-by-request basis, the operating system can concurrently perform readahead operations for multiple read streams, regardless of whether the read streams' file read requests are received by the storage system in sequential, nearly-sequential or random orders.Type: GrantFiled: February 6, 2008Date of Patent: October 6, 2015Assignee: NetApp, Inc.Inventor: Robert L. Fair
-
Patent number: 9152503Abstract: A system and method efficiently calculates an estimated amount of storage required to split a clone volume from its parent volume. The system and method is illustratively embodied as a command line interface (CLI) command, i.e., a clone split estimate command, executed by an estimation module of a storage system. Notably, the estimation module cooperates with a file system of the storage system to quickly access data structures containing information used to perform the storage calculation without the need to access each block of the clone and parent volumes.Type: GrantFiled: May 20, 2010Date of Patent: October 6, 2015Assignee: NetApp, Inc.Inventor: Robert L. Fair
-
Patent number: 9110599Abstract: A system and method for thin provisioning in a virtual tape library. In one embodiment, a method includes the operations of receiving, from a user entity, a first request to create a pool of virtual tapes for the user entity, wherein data for the pool of virtual tapes is stored on physical storage; creating the pool of virtual tapes for the user entity according to the first request such that a provisioned capacity of data storage for the pool of virtual tapes exceeds an actual capacity of data storage available to the pool of virtual tapes on the physical storage; and presenting the pool of virtual tapes to a second system as physical tape storage having the provisioned capacity available for data storage and not the actual capacity.Type: GrantFiled: May 10, 2013Date of Patent: August 18, 2015Assignee: EMC CorporationInventor: Robert L. Fair
-
Patent number: 9098419Abstract: A data storage system can automatically improve the layout of data blocks on a mass storage subsystem by collecting optimization information during both read and write activities, then processing the optimization information to limit the impact of optimization activities on the system's response to client requests. Processing read-path optimization information and write-path optimization information through shared rate-limiting logic simplifies system administration and promotes phased implementation, which can reduce the difficulty of developing a self-optimizing storage server.Type: GrantFiled: January 18, 2013Date of Patent: August 4, 2015Assignee: NetApp, Inc.Inventor: Robert L. Fair
-
Patent number: 9063842Abstract: A system and method for enforcing quotas in a data storage system. In one embodiment, a method includes the operations of receiving a first request that defines a storage quota for a pool of virtual tapes that is allocated to a user entity; defining the storage quota for the pool of virtual tapes according to the request, wherein the defined storage quota limits a quantity of data that the user entity can store in physical storage of the storage system; receiving a second request from the user entity to write data to the virtual tape of the pool of virtual tapes; and returning a first status that indicates the data to be written from the second request cannot be written and failing the second request where a quantity of the data from the user entity's second request exceeds the defined storage quota.Type: GrantFiled: May 10, 2013Date of Patent: June 23, 2015Assignee: EMC CorporationInventors: Robert L. Fair, Imran Khan, Pranay Singh
-
Patent number: 9009742Abstract: According to one embodiment, a virtual tape library (VTL) receives a plurality of small computer system interface (SCSI) data objects, and translates the SCSI data objects into a first set of one or more remote procedure call (RPC) data objects having a first size, wherein the first size of the first RPC data set is based on a current limit maintained by the VTL. The VTL writes the first RPC data set and a first RPC commit request to a file system. The VTL receives a first RPC status corresponding to the first RPC commit from the file system, and determines a first latency time between writing the first RPC commit and receiving the first RPC status. The VTL updates the current limit based on the first latency time in order to optimize a second latency time between a second RPC commit request and a corresponding second RPC status.Type: GrantFiled: May 10, 2013Date of Patent: April 14, 2015Assignee: EMC CorporationInventors: Robert L. Fair, Imran Khan
-
Patent number: 8935470Abstract: A method of an aspect includes determining to prune a filemark cache. The filemark cache has entries that each store filemark metadata for a different corresponding filemark of a plurality of open virtual tape files. The method also includes pruning the filemark cache by removing a portion of the entries of the filemark cache. Other methods, apparatus, and articles are also disclosed.Type: GrantFiled: September 14, 2012Date of Patent: January 13, 2015Assignee: EMC CorporationInventor: Robert L. Fair
-
Publication number: 20150006777Abstract: A computer-implemented method to reduce slow or stuck SCSI commands at a SCSI target is disclosed. The method starts with initiating a first request to acquire an exclusive lock for a first service daemon of a SCSI target to shut down a first service, where the SCSI target offers a plurality of services, and where each service corresponds to a service daemon. The first service daemon receives a first rejection of the exclusive lock for the first request as the exclusive lock is currently held by a second service daemon corresponding to a second service. Then the first service daemon initiates a second request to acquire the exclusive lock in an attempt to shut down the first service again after a delay period. In response to a second rejection, execution of SCSI commands associated with the second service currently possessing the exclusive lock is terminated.Type: ApplicationFiled: June 26, 2013Publication date: January 1, 2015Inventors: Robert L. Fair, Shobhan Kumar Chinnam
-
Patent number: 8838840Abstract: A computer-implemented method to recover from slow or stuck SCSI commands is disclosed. The method starts with monitoring execution time of an operation by a small computer system interface (SCSI) target processor within a SCSI target, where the SCSI target is communicatively coupled with a SCSI initiator through a set of communication links, where the operation is associated with a service offered by the SCSI target, and where the operation is performed for executing SCSI commands associated with the service. When the execution time of the operation exceeds a first threshold, the method proceeds with performing a first escalating action to reduce workload of the SCSI target processor. When the execution time of the operation exceeds a second threshold, the method further proceeds with performing a second escalating action that is different from the first escalating action to reduce workload of the SCSI target processor.Type: GrantFiled: June 26, 2013Date of Patent: September 16, 2014Assignee: EMC CorporationInventors: Robert L. Fair, Shobhan Kumar Chinnam
-
Publication number: 20140156600Abstract: A method of making a foreign law in usable in a network storage controller includes transparently converting the foreign logical unit to the native format of the file system in place, by progressively increasing the binding between the file system of the storage controller and the foreign logical unit, while the foreign logical unit remains online, without requiring copying of the foreign logical unit.Type: ApplicationFiled: August 20, 2013Publication date: June 5, 2014Applicant: NetApp, Inc.Inventors: Robert L. Fair, Rebecca S. Beaman
-
Patent number: 8515917Abstract: A method of making a foreign law in usable in a network storage controller includes transparently converting the foreign logical unit to the native format of the file system in place, by progressively increasing the binding between the file system of the storage controller and the foreign logical unit, while the foreign logical unit remains online, without requiring copying of the foreign logical unit.Type: GrantFiled: April 30, 2008Date of Patent: August 20, 2013Assignee: NetApp, Inc.Inventors: Robert L. Fair, Rebecca S. Beaman
-
Patent number: 8359430Abstract: A data storage system can automatically improve the layout of data blocks on a mass storage subsystem by collecting optimization information during both read and write activities, then processing the optimization information to limit the impact of optimization activities on the system's response to client requests. Processing read-path optimization information and write-path optimization information through shared rate-limiting logic simplifies system administration and promotes phased implementation, which can reduce the difficulty of developing a self-optimizing storage server.Type: GrantFiled: August 30, 2007Date of Patent: January 22, 2013Assignee: Network Appliance, Inc.Inventor: Robert L. Fair
-
Patent number: 8117396Abstract: Methods and apparatuses provide a multi-level buffer cache having queues corresponding to different priority levels of queuing within the buffer cache. One or more data blocks are buffered in the buffer cache. In one embodiment, an initial level of queue is identified for a data block to be buffered in the buffer cache. The initial level of queue can be modified higher or lower depending on a value of a cache property associated with the data block. In one embodiment, the data block is monitored for data access in a queue, and the data block is aged and moved to higher level(s) of queuing based on rules for the data block. The rules can apply to the queue in which the data block is buffered, to a data type of the data block, or to a logical partition to which the data block belongs.Type: GrantFiled: October 10, 2006Date of Patent: February 14, 2012Assignee: Network Appliance, Inc.Inventors: Robert L. Fair, Matti A. Vanninen
-
Patent number: 7996445Abstract: A data storage system pre-fetches data blocks from a mass storage device, then determines whether reallocation of the pre-fetched blocks would improve access to them. If access would be improved, the pre-fetched blocks are written to different areas of the mass storage device. Several different implementations of such data storage systems are described.Type: GrantFiled: April 27, 2007Date of Patent: August 9, 2011Assignee: Network Appliance, Inc.Inventors: Robert L. Fair, Robert M. English
-
Patent number: 7979402Abstract: A system and method for managing data during consistency points in a storage system is provided. A buffer data control structure is modified to include a flags array that tracks various status flags for both a current and a next consistency point (CP). By utilizing multiple pointers within a buffer control structure, the storage system may permit write operations to continue to a data container undergoing write allocation. Received writes during a write allocation procedure are stored in raw data buffers and the buffer control structure is marked as being dirty for a next CP.Type: GrantFiled: April 30, 2010Date of Patent: July 12, 2011Assignee: NetApp, Inc.Inventors: Eric Hamilton, Jeffrey S. Kimmel, Robert L. Fair, Ashish Prakash
-
Patent number: 7873963Abstract: Provided is a method and system for detecting languishing messages of a storage operating system. Requests to access or manipulate data are received as messages by the storage operating system. The messages are processed after the acquisition of resources. If the resources cannot be acquired, then the messages wait on data structures of the storage operating system. An independent thread of the storage operating system identifies messages that are languishing. Information related to the languishing message is recorded and actions to permit messages to continue waiting or cause storage operating system downtime result.Type: GrantFiled: October 25, 2005Date of Patent: January 18, 2011Assignee: NetApp, Inc.Inventor: Robert L. Fair
-
Patent number: 7827349Abstract: A storage system, such as a storage server, receives a list of volume block numbers (VBNs) in a multi-block read request. In response to the request, the storage system coalesces the list into one or more chains of sequential VBNs. The storage system issues each chain to the storage subsystem.Type: GrantFiled: June 1, 2009Date of Patent: November 2, 2010Assignee: Network Appliance, Inc.Inventor: Robert L. Fair