Patents by Inventor Maneesh Pusalkar
Maneesh Pusalkar 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: 11372951Abstract: An apparatus includes a first host device comprising a first multi-path input-output (MPIO) driver configured to discover additional MPIO drivers of additional host devices of an enterprise system that utilize a given piece of software for controlling delivery of input-output operations to a storage system over selected ones of a plurality of paths through a network, the given software being licensed by a license server external to the enterprise system. The first MPIO driver is also configured to obtain a pool of licenses for the given software from the license server and to receive from a given one of the additional MPIO drivers a request for a license to utilize the given software. The first MPIO driver is further configured to check out one of the pool of licenses and enable use of the given software by the given additional MPIO based at least in part on the checked-out license.Type: GrantFiled: December 12, 2019Date of Patent: June 28, 2022Assignee: EMC IP Holding Company LLCInventors: Mahalakshmi Sokkalal, Maneesh Pusalkar, Vigneshwaran Rajasekaran, Surendra Singh Chauhan, Udit Tyagi, Nagaveni Bhavi, Gopinath Marappan
-
Patent number: 11050825Abstract: An apparatus comprises a first host device that is configured to communicate over a network with a storage system. The first host device is configured to obtain information on a bandwidth usage by a second host device of one or more ports of the storage system and to determine a bandwidth limit of the one or more ports of the storage system. The first host device is further configured to submit data to the one or more ports at a given bandwidth that is determined based at least in part on the obtained information and the determined bandwidth limit of the one or more ports of the storage system.Type: GrantFiled: January 30, 2020Date of Patent: June 29, 2021Assignee: EMC IP Holding Company LLCInventors: Gopinath Marappan, Sanjib Mallick, Maneesh Pusalkar
-
Publication number: 20210182365Abstract: An apparatus includes a first host device comprising a first multi-path input-output (MPIO) driver configured to discover additional MPIO drivers of additional host devices of an enterprise system that utilize a given piece of software for controlling delivery of input-output operations to a storage system over selected ones of a plurality of paths through a network, the given software being licensed by a license server external to the enterprise system. The first MPIO driver is also configured to obtain a pool of licenses for the given software from the license server and to receive from a given one of the additional MPIO drivers a request for a license to utilize the given software. The first MPIO driver is further configured to check out one of the pool of licenses and enable use of the given software by the given additional MPIO based at least in part on the checked-out license.Type: ApplicationFiled: December 12, 2019Publication date: June 17, 2021Inventors: Mahalakshmi Sokkalal, Maneesh Pusalkar, Vigneshwaran Rajasekaran, Surendra Singh Chauhan, Udit Tyagi, Nagaveni Bhavi, Gopinath Marappan
-
Patent number: 10911402Abstract: A storage system in one embodiment comprises at least one storage array comprising a plurality of storage devices. The storage array is configured to communicate over one or more networks with a plurality of host devices. The storage array is further configured to receive one or more commands from a given one of the host devices directing that a particular user-defined name be assigned to a particular one of the storage devices, and responsive to receipt of the one or more commands, to determine if any other user-defined name is already assigned to the particular storage device, and if there is no other user-defined name already assigned to the particular storage device, to assign the particular user-defined name to the particular storage device and to store information characterizing the assignment of the particular user-defined name to the particular storage device in persistent memory of the storage array.Type: GrantFiled: March 12, 2020Date of Patent: February 2, 2021Assignee: EMC IP Holding Company LLCInventors: Maneesh Pusalkar, Arieh Don, Vinay Rao, Yaron Dar
-
Patent number: 10757189Abstract: An apparatus in one embodiment comprises a host device that includes a set of input-output (IO) queues and a multi-path input-output (MPIO) driver that selects IO operations from the set of IO queues for delivery to a storage system over a network. The MPIO driver determines service level objectives (SLOs) for respective sources of the IO operations, determines latencies of storage devices of the storage system, assigns an initial time-to-become-urgent (TTBU) value to each of at least a subset of the IO operations based at least in part on the SLO of its source and one or more of the determined latencies, adjusts at least a subset of the TTBU values based at least in part on amounts of time spent by the corresponding IO operations in the set of IO queues, and selects IO operations from the set of IO queues for delivery to the storage system based at least in part on their respective TTBU values as adjusted.Type: GrantFiled: April 30, 2018Date of Patent: August 25, 2020Assignee: EMC IP Holding Company LLCInventors: Sanjib Mallick, Vinay G. Rao, Maneesh Pusalkar, Arieh Don
-
Publication number: 20200213274Abstract: A storage system in one embodiment comprises at least one storage array comprising a plurality of storage devices. The storage array is configured to communicate over one or more networks with a plurality of host devices. The storage array is further configured to receive one or more commands from a given one of the host devices directing that a particular user-defined name be assigned to a particular one of the storage devices, and responsive to receipt of the one or more commands, to determine if any other user-defined name is already assigned to the particular storage device, and if there is no other user-defined name already assigned to the particular storage device, to assign the particular user-defined name to the particular storage device and to store information characterizing the assignment of the particular user-defined name to the particular storage device in persistent memory of the storage array.Type: ApplicationFiled: March 12, 2020Publication date: July 2, 2020Inventors: Maneesh Pusalkar, Arieh Don, Vinay Rao, Yaron Dar
-
Patent number: 10652206Abstract: A storage system in one embodiment comprises at least one storage array comprising a plurality of storage devices. The storage array is configured to communicate over one or more networks with a plurality of host devices. The storage array is further configured to receive one or more commands from a given one of the host devices directing that a particular user-defined name be assigned to a particular one of the storage devices, and responsive to receipt of the one or more commands, to determine if any other user-defined name is already assigned to the particular storage device, and if there is no other user-defined name already assigned to the particular storage device, to assign the particular user-defined name to the particular storage device and to store information characterizing the assignment of the particular user-defined name to the particular storage device in persistent memory of the storage array.Type: GrantFiled: October 27, 2017Date of Patent: May 12, 2020Assignee: EMC IP Holding Company LLCInventors: Maneesh Pusalkar, Arieh Don, Vinay Rao, Yaron Dar
-
Patent number: 10474367Abstract: A storage array in one embodiment is configured to communicate over one or more networks with a plurality of host devices. The storage array is further configured to detect process tags assigned to respective input-output operations by a given one of the host devices, the process tags being of at least first and second distinct types so as to distinguish at least respective first and second distinct processes generating corresponding ones of the input-output operations on the given host device. Responsive to a particular one of the detected process tags being of the first type, the storage array provides a first level of priority for processing of the corresponding input-output operation, and responsive to a particular one of the detected process tags being of the second type, the storage array provides a second level of priority different than the first level of priority for processing of the corresponding input-output operation.Type: GrantFiled: December 21, 2017Date of Patent: November 12, 2019Assignee: EMC IP Holding Company LLCInventors: Sanjib Mallick, Krishna Deepak Nuthakki, Vinay Rao, Arieh Don, Maneesh Pusalkar
-
Publication number: 20190334987Abstract: An apparatus in one embodiment comprises a host device that includes a set of input-output (IO) queues and a multi-path input-output (MPIO) driver that selects IO operations from the set of IO queues for delivery to a storage system over a network. The MPIO driver determines service level objectives (SLOs) for respective sources of the IO operations, determines latencies of storage devices of the storage system, assigns an initial time-to-become-urgent (TTBU) value to each of at least a subset of the IO operations based at least in part on the SLO of its source and one or more of the determined latencies, adjusts at least a subset of the TTBU values based at least in part on amounts of time spent by the corresponding IO operations in the set of IO queues, and selects IO operations from the set of IO queues for delivery to the storage system based at least in part on their respective TTBU values as adjusted.Type: ApplicationFiled: April 30, 2018Publication date: October 31, 2019Inventors: Sanjib Mallick, Vinay G. Rao, Maneesh Pusalkar, Arieh Don
-
Patent number: 10360085Abstract: A method and apparatus for identifying process use on storage array resources is provided. A first process (e.g. an IO driver such as an MPIO driver) on each host collects process information of application processes running on that host. The process/device information is forwarded to the storage array where it is added to a process correlation data structure and correlated with assigned devices of the storage array. The host name that provided the process information is also added to the process correlation data structure. A name of the application is also correlated to the process name in the process correlation data structure. The date the device was last used is periodically updated in the process correlation data structure. The process correlation data structure may then be used to identify devices that have not recently been used and to identify the host, application, and process that uses the devices.Type: GrantFiled: December 27, 2016Date of Patent: July 23, 2019Assignee: EMC IP Holding Company LLCInventors: Sanjib Mallick, Maneesh Pusalkar, G Vinay Rao, Subin George, Arieh Don
-
Patent number: 9111015Abstract: Various systems and methods selectively generate a point-in-time copy of less than all of the data items within a collectively-managed set of data items. One method involves detecting a modification to a first unit of data within a collectively managed set, subsequent to generation of a selective snapshot of the collectively managed set, and then accesses a first tag associated with the first unit of data. Based on a value of the first tag, the method determines whether the first unit of data is included in a subset of the collectively managed set. The subset includes at least two of the units of data and fewer than all of the units of data in the collectively managed set. Based upon whether the unit of data is included in the subset, the method selects whether to preserve an original value of the first unit of data.Type: GrantFiled: September 29, 2010Date of Patent: August 18, 2015Assignee: Symantec CorporationInventors: Dilip Madhusudan Ranade, Kedar Shrikrishna Patwardhan, Maneesh Pusalkar
-
Patent number: 8818970Abstract: A process for reading entries in a directory is initiated. A first index is maintained to indicate how far the read has progressed in the directory. If, during execution of the process, the directory is partitioned into subdirectories, then a second index is maintained for each of the subdirectories to indicate how far the read has progressed in each of the subdirectories. A third index that indicates how far the read has progressed in the partitioned directory is also maintained.Type: GrantFiled: April 8, 2011Date of Patent: August 26, 2014Assignee: Symantec CorporationInventors: Anindya Banerjee, Maneesh Pusalkar
-
Publication number: 20120259823Abstract: A process for reading entries in a directory is initiated. A first index is maintained to indicate how far the read has progressed in the directory. If, during execution of the process, the directory is partitioned into subdirectories, then a second index is maintained for each of the subdirectories to indicate how far the read has progressed in each of the subdirectories. A third index that indicates how far the read has progressed in the partitioned directory is also maintained.Type: ApplicationFiled: April 8, 2011Publication date: October 11, 2012Applicant: SYMANTEC CORPORATIONInventors: Anindya Banerjee, Maneesh Pusalkar