Patent classifications
G06F3/0662
Data validity tracking in a non-volatile memory
A computer device reads an indicator from a configuration file that identifies a granularity of units of data at which to track validity. The granularity is one of a plurality of granularities ranging from one unit of data to many units of data. The computer device generates a machine-readable file configured to cause a processing device of a memory system to track validity at the identified granularity using a plurality of data validity counters with each data validity counter in the plurality of data validity counters tracking validity of a group of units of data at the identified granularity. The computer device transfers the machine-readable file to a memory of the memory system.
COMMUNICATION DEVICE AND SYSTEM WITH GROUND POTENTIAL DIFFERENCE COMPENSATION
A communication device for connection with a power source and a host device is provided. The communication device comprises a device controller and a converter circuit. The device controller is adapted for data communication with the host device and the converter circuit is configured to provide a virtual device ground at least to the device controller, so as to compensate a ground potential difference between the host device and the communication device.
Memory protection in virtualized computer systems using shadow page tables
Aspects of the disclosure provide for mechanisms for memory protection of virtual machines in a computer system. A method of the disclosure includes: obtaining, by a hypervisor, a guest page table associated with a virtual machine, wherein the guest page table comprises a first guest page table entry associated with a privilege flag indicating that a first virtual page of a guest memory of the virtual machine is accessible to unprivileged code; and in view of a determination that the virtual machine is running in a kernel mode, generating a first host page table in view of the guest page table, wherein the first host page table comprises a first host page table entry corresponding to the first guest page table entry, and wherein the first host page table entry is associated with a privilege flag indicating that the first virtual page is not accessible to the unprivileged code.
Online cluster expansion for storage system with decoupled logical and physical capacity
An apparatus in one embodiment comprises at least one processing device comprising a processor coupled to a memory. The processing device is configured, in conjunction with an online cluster expansion process for a clustered storage system having an address space distributed across a set of storage controllers each associated with one or more storage devices, to modify the distribution of the address space across the set of storage controllers responsive to adding at least one of compute and storage capacity to the set of storage controllers of the clustered storage system. The processing device is also configured to identify a set of pending input-output requests directed to deletion of data in the clustered storage system, and to execute the set of pending input-output requests prior to relocating data in the clustered storage system based at least in part on the modified distribution of the address space.
Virtual application delivery using synthetic block devices
Embodiments described herein are related to performing virtual application delivery. In some embodiments, a method includes accessing, at a computing device, a datastore comprising a first virtual disk file mapped to a plurality of virtual disk files separate from the first virtual disk file, wherein each of the plurality of virtual disk files comprises at least one application stored thereon. The method further includes receiving, at the computing device, one or more operations for accessing the first virtual disk file, the one or more operations corresponding to a first application stored on a second virtual disk file of the plurality of virtual disk files. The method further includes redirecting the one or more operations for accessing the first virtual disk file to the second virtual disk file.
APPLYING VIRTUAL MACHINE PERFORMANCE OBJECTIVES ON A STORAGE SYSTEM
Service level objectives (SLOs) defined for a storage system are associated with VMs running on hosts. For an I/O operation for a virtual machine (VM) running on a host system, storage processing is performed on the I/O operation in accordance with the SLO defined for the VM. The same storage system-defined SLOs may be applied to VMs running on multiple host systems. SLOs may be maintained by the storage array and shared with one or more host systems in I/O communication with the storage system. SLOs may be defined using a user interface of a storage system, host system, virtualizer control station or other component of a storage network, and communicated to the storage system, which may maintain the SLOs, and may disseminate them to one or more hosts. The SLOs then may be associated with VMs running on the hosts and tagged to I/O communications corresponding to the VMs.
Storage system
A storage system monitors the first access frequency of occurrence which is the access frequency of occurrence from a host device during a first period, and the second access frequency of occurrence which is the access frequency of occurrence from a host device during a second period shorter than the first period. Along with performing data relocation among the tiers (levels) in the first period cycle based on the first access frequency of occurrence, the storage system performs a decision whether or not to perform a second relocation based on the first access frequency of occurrence and the second access frequency of occurrence, synchronously with access from a host device. Here the threshold value utilized in a decision on whether or not to perform the first relocation is different from the threshold value utilized in a decision on whether or not to perform the second relocation.
Storage controller sub-LUN ownership mapping and alignment
A sub-LUN ownership mapping for multiple storage controllers of a first storage array is generated. The sub-LUN ownership mapping indicates ownership of sub-LUNs by the multiple storage controllers of the first storage array. The sub-LUN ownership mapping is transmitted to a storage controller of a second storage array. A request to align sub-ownership is sent to the storage controller of the second storage array. Ownership is aligned for one or more sub-LUNS for multiple storage controllers of the second storage array.
METHODS AND SYSTEMS FOR SECURELY AND EFFICIENTLY CLUSTERING DISTRIBUTED PROCESSES USING A CONSISTENT DATABASE
Certain embodiments described herein are directed to methods and systems for adding one or more nodes to a first cluster including a first node in a computer system. A method performed by the first node comprises receiving a first request from a second node to join the first cluster. The method also comprises retrieving a first cluster configuration associated with the first cluster from a distributed database through a first database server (DBS) and creating a second cluster configuration using the first cluster configuration and information received from the second node as part of the request. The method further comprises populating a first one or more local trust stores of a first one or more processes executing on the first node with a second one or more security certificates of a second one or more processes executing on the second node. The method further comprises writing the second cluster configuration to the distributed database and returning the second cluster configuration to the second node.
Centralized, quorum-aware handling of device reservation requests in a storage system
A method for device reservations in a storage system, performed by the storage system is provided. The method includes maintaining a list of a plurality of storage devices of the storage system or slots for the storage devices, and a status of each of the plurality of storage devices or slots for the storage devices. The method includes determining whether granting a request for a reservation of one of the plurality of storage devices or slots would result in the storage system having less than a quorum of online storage devices, and granting or rejecting the reservation, based on the determining.