IP Library Granted Patent US 10,452,294
Granted Patent B1
US 10,452,294 · App. 16/017,189 · Granted Oct 22, 2019

System and method of allocating storage of devices

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,452,294
App. No.
16/017,189
Granted
Oct 22, 2019
Kind
B1
Abstract

In one or more embodiments, one or more systems, methods, and/or processes may configure an input/output memory management unit; may receive, from a device associated with an information handling system, a request for an allocation of storage of a memory medium of the information handling system; may allocate the storage of the memory medium without an interaction with a processor of the information handling system and without an interaction with an operating system executed by the processor; may add a table entry, associated with the allocation of storage of the memory medium, to a page table; may provide update information to the operating system; may provide a success response to the device; may store first data from the device; and may provide second data to the device.

Claims (61)

1. An information handling system, comprising:

at least one processor;

a memory medium, coupled to the at least one processor, that stores instructions executable by the at least one processor; and

an input/output memory management unit (IOMMU) coupled to the memory medium;

wherein, when instructions are executed by the at least one processor, the information handling system is caused to:

configure the IOMMU;

wherein the IOMMU is configured to:

receive, from a device associated with the information handling system, a request for an allocation of storage of the memory medium;

allocate the storage of the memory medium without an interaction with the at least one processor and without an interaction with an operating system executed by the at least one processor;

add a table entry, associated with the allocation of storage of the memory medium, to a page table;

provide update information to the operating system; and

provide a success response to the device; and

wherein the memory medium is configured to:

store first data from the device; and

provide second data to the device.

2. The information handling system of claim 1 , further comprising:

the device.

3. The information handling system of claim 1 ,

wherein the instructions include the operating system; and

wherein, to configure the IOMMU, the operating system causes the information handling system to further configure the IOMMU.

4. The information handling system of claim 1 ,

wherein the instructions include a device driver associated with the device; and

wherein the device driver further causes the information handling system to provide the operating system with configuration information.

5. The information handling system of claim 4 , wherein the configuration information includes one or more of a configuration policy, at least one access control list, and at least one storage allocation limit.

6. The information handling system of claim 1 , wherein the request for the allocation of storage of the memory medium includes a byte alignment.

7. The information handling system of claim 1 , wherein the request for the allocation of storage of the memory medium includes a request for continuous storage.

8. A method, comprising:

configuring an input/output memory management unit (IOMMU) of an information handling system;

the IOMMU receiving, from a device associated with the information handling system, a request for an allocation of storage of a memory medium of the information handling system;

the IOMMU allocating the storage of the memory medium without an interaction with a processor of the information handling system and without an interaction with an operating system executed by the processor;

the IOMMU adding a table entry, associated with the allocation of storage of the memory medium, to a page table;

the IOMMU providing update information to the operating system;

the IOMMU providing a success response to the device;

the memory medium storing first data from the device; and

the memory medium providing second data to the device.

9. The method of claim 8 , wherein the information handling system includes the device.

10. The method of claim 8 , wherein the configuring the IOMMU includes the operating system configuring the IOMMU.

11. The method of claim 8 , further comprising:

a device driver associated with the device providing the operating system with configuration information.

12. The method of claim 11 , wherein the configuration information includes one or more of a configuration policy, at least one access control list, and at least one storage allocation limit.

13. The method of claim 8 , wherein the request for the allocation of storage of the memory medium includes a byte alignment.

14. The method of claim 8 , wherein the request for the allocation of storage of the memory medium includes a request for continuous storage.

15. An input/output memory management unit of an information handling system, configured to:

receive, from a device associated with the information handling system, a request for an allocation of storage of a memory medium of the information handling system;

allocate the storage of the memory medium without an interaction with a processor of the information handling system and without an interaction with an operating system executed by the processor;

add a table entry, associated with the allocation of storage of the memory medium, to a page table;

provide update information to the operating system; and

provide a success response to the device.

16. The input/output memory management unit of claim 15 , wherein the input/output memory management unit is further configured to receive configuration information from an operating system.

17. The input/output memory management unit of claim 15 ,

wherein the request for the allocation of storage of the memory medium includes a byte alignment; and

wherein, to allocate the storage of the memory medium, the input/output memory management unit is further configured to allocate the storage of the memory medium that is associated with the byte alignment.

18. The input/output memory management unit of claim 15 ,

wherein the request for the allocation of storage of the memory medium includes a request for continuous storage; and

wherein, to allocate the storage of the memory medium, the input/output memory management unit is further configured to allocate the storage of the memory medium that is continuous.

19. The input/output memory management unit of claim 15 ,

wherein the request for the allocation of storage of the memory medium includes a request for storage of the memory medium that is affinitized to a first processor of multiple processors of the information handling system; and

wherein, to allocate the storage of the memory medium, the input/output memory management unit is further configured to allocate the storage of the memory medium that is affinitized to the first processor.

20. The input/output memory management unit of claim 15 ,

wherein the request for the allocation of storage of the memory medium includes a request for storage of the memory medium that is of a cache associated with a processor of the information handling system; and

wherein, to allocate the storage of the memory medium, the input/output memory management unit is further configured to allocate the storage of the memory medium that is the cache associated with the processor of the information handling system.

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 (047648/0422) 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
Reel/Frame 060160/0862 →
RELEASE OF SECURITY INTEREST AT REEL 047648 FRAME 0346 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0510 →
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 Oct 12, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 047648/0422 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Oct 12, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047648/0346 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2018
From: IYER, SHYAMKUMAR THIYAGARAJAN; SANKARANARAYANAN, VADHIRAJ
To: DELL PRODUCTS L.P.
Reel/Frame 046192/0573 →