IP Library Granted Patent US 10,782,994
Granted Patent B2
US 10,782,994 · App. 15/846,729 · Granted Sep 22, 2020

Systems and methods for adaptive access of memory namespaces

Inventors: Viswanath Ponnuru (Bangalore, IN); K. N. Ravishankar (Bangalore, IN); Parmeshwr Prasad (Bengaluru, IN); Shekar Babu Suryanarayana (Bangalore, IN)
Assignee: Dell Products L.P.
G06F9/45558G06F12/0238G06F2009/45579G06F2009/45583G06F2212/1004
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,782,994
App. No.
15/846,729
Granted
Sep 22, 2020
Kind
B2
Abstract

In accordance with embodiments of the present disclosure, an information handling system may include a memory subsystem and a processor subsystem communicatively coupled to the memory subsystem and configured to execute a hypervisor, wherein the hypervisor is configured to host a plurality of virtual machines and host an interface to the memory subsystem, wherein the interface is configured to maintain a data structure for mapping at least one namespace instantiated within the memory subsystem to a plurality of access modes for accessing the at least one namespace from the processor subsystem.

Claims (27)

1. An information handling system, comprising:

a memory subsystem; and

a processor subsystem communicatively coupled to the memory subsystem and configured to execute a hypervisor, wherein the hypervisor is configured to host a plurality of virtual machines and host an interface to the memory subsystem, wherein the interface is configured to:

maintain a data structure for mapping at least one namespace instantiated within the memory subsystem to a plurality of access modes for accessing the at least one namespace from the processor subsystem, wherein the plurality of access modes are selected from the group consisting of: a raw mode, a block mode, a sector mode, and a DAX mode;

responsive to receiving a request from a boot service for input/output (I/O) relating to a particular namespace created with an initial access mode, wherein the boot service is associated with a second access mode and wherein the initial access mode and the second access mode differ, provide a mapping between the second access mode and the initial access mode to enable the boot service to access the particular namespace; and

responsive to receiving a request from a runtime service for I/O relating to the particular namespace created with an initial access mode, wherein the runtime service is associated with a third access mode and wherein the initial access mode and the third access mode differ, provide a mapping between the third access mode and the initial access mode to enable the runtime service to access the particular namespace.

2. The information handling system of claim 1 , wherein the memory subsystem comprises persistent memory modules.

3. The information handling system of claim 2 , wherein the persistent memory modules comprise non-volatile dual-inline memory modules (NVDIMMs).

4. The information handling system of claim 3 , wherein the data structure is stored in an NVDIMM Firmware Interface Table.

5. A method comprising:

hosting on a hypervisor a plurality of virtual machines;

hosting on the hypervisor an interface between a processor subsystem upon which the hypervisor executes and a memory subsystem communicatively coupled to the processor subsystem, wherein the interface is configured to maintain a data structure for mapping at least one namespace instantiated within the memory subsystem to a plurality of access modes for accessing the at least one namespace from the processor subsystem, wherein the plurality of access modes are selected from the group consisting of: a raw mode, a block mode, a sector mode, and a DAX mode;

responsive to receiving a request from a boot service for input/output (I/O) relating to a particular namespace created with an initial access mode, wherein the boot service is associated with a second access mode and wherein the initial access mode and the second access mode differ, providing a mapping between the second access mode and the initial access mode to enable the boot service to access the particular namespace; and

responsive to receiving a request from a runtime service for I/O relating to the particular namespace created with an initial access mode, wherein the runtime service is associated with a third access mode and wherein the initial access mode and the third access mode differ, providing a mapping between the third access mode and the initial access mode to enable the runtime service to access the particular namespace.

6. The method of claim 5 , wherein the memory subsystem comprises persistent memory modules.

7. The method of claim 6 , wherein the persistent memory modules comprise non-volatile dual-inline memory modules (NVDIMMs).

8. The method of claim 7 , wherein the data structure is stored as one or more entries in an NVDIMM Firmware Interface Table.

9. An article of manufacture comprising:

a non-transitory computer-readable medium; and

computer-executable instructions carried on the computer-readable medium, the instructions readable by a processor, the instructions, when read and executed, for causing the processor to:

host on a hypervisor a plurality of virtual machines;

host on the hypervisor an interface between a processor subsystem upon which the hypervisor executes and a memory subsystem communicatively coupled to the processor subsystem, wherein the interface is configured to maintain a data structure for mapping at least one namespace instantiated within the memory subsystem to a plurality of access modes for accessing the at least one namespace from the processor subsystem, wherein the plurality of access modes are selected from the group consisting of: a raw mode, a block mode, a sector mode, and a DAX mode;

responsive to receiving a request from a boot service for input/output (I/O) relating to a particular namespace created with an initial access mode, wherein the boot service is associated with a second access mode and wherein the initial access mode and the second access mode differ, provide a mapping between the second access mode and the initial access mode to enable the boot service to access the particular namespace; and

responsive to receiving a request from a runtime service for I/O relating to the particular namespace created with an initial access mode, wherein the runtime service is associated with a third access mode and wherein the initial access mode and the third access mode differ, provide a mapping between the third access mode and the initial access mode to enable the runtime service to access the particular namespace.

10. The article of claim 9 , wherein the memory subsystem comprises persistent memory modules.

11. The article of claim 10 , wherein the persistent memory modules comprise non-volatile dual-inline memory modules (NVDIMMs).

12. The article of claim 11 , wherein the data structure is stored as one or more entries in an NVDIMM Firmware Interface Table.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045482/0131) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 061749/0924 →
RELEASE OF SECURITY INTEREST AT REEL 045482 FRAME 0395 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058298/0314 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 045482/0131 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Mar 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 045482/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2017
From: PONNURU, VISWANATH; RAVISHANKAR, K. N.; PRASAD, PARMESHWR; SURYANARAYANA, SHEKAR BABU
To: DELL PRODUCTS L.P.
Reel/Frame 044434/0790 →
Continuity (1)
Related Publication 20190188020A1 · Jun 20, 2019