IP Library Granted Patent US 11,100,033
Granted Patent B1
US 11,100,033 · App. 16/862,986 · Granted Aug 24, 2021

Single-root input/output virtualization-based storage solution for software defined storage

Inventors: Chandrashekar Nelogal (Round Rock, TX); Syama S. Poluri (Round Rock, TX); Vijay B. Nijhawan (Austin, TX)
Assignee: Dell Products L.P.
G06F13/4068G06F3/0604G06F3/0631G06F3/0664G06F3/0673G06F9/4406G06F9/45558G06F13/4221G06F2009/45579G06F2009/45583G06F2213/0024
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 11,100,033
App. No.
16/862,986
Granted
Aug 24, 2021
Kind
B1
Abstract

A system for processing data may include a plurality of storage resources coupled to a backplane, a storage controller coupled to the backplane and configured to couple to an information handling system. The storage controller may configured to implement, using single-root input/output virtualization a first virtual function allocated to a first set of one or more of the plurality of storage resources and allocated to a software-defined storage virtual machine executing on a hypervisor of the information handling system and one of a physical function and a second virtual function allocated to a second set of one or more of the plurality of storage resources and allocated to the hypervisor.

Claims (37)

1. A system for processing data, comprising:

a plurality of storage resources coupled to a backplane;

a storage controller, coupled to the backplane, to manage communication of data between a processor of an information handling system and the plurality of storage drives, wherein the storage controller is configured to couple to an information handling system, the storage controller configured to implement, using single-root input/output virtualization:

a first virtual function allocated to a first set of one or more of the plurality of storage drives and allocated to a software-defined storage virtual machine executing on a hypervisor of the information handling system; and

one of a physical function and a second virtual function allocated to a second set of one or more of the plurality of storage drives and allocated to the hypervisor.

2. The system of claim 1 , wherein the second set of one or more of the plurality of storage drives comprises computer-readable code for booting the hypervisor.

3. The system of claim 1 , the storage controller further configured to instantiate a virtual storage controller allocated to the first virtual function and emulating the storage controller.

4. The system of claim 1 , wherein the second virtual function is allocated to the second set of one or more of the plurality of storage drives, and the storage controller further is configured to instantiate a virtual storage controller allocated to the first virtual function and emulating the storage controller.

5. The system of claim 1 , wherein the second virtual function is allocated to the second set of one or more of the plurality of storage drives, and the physical function is allocated to monitoring the storage controller and the plurality of storage drives.

6. The system of claim 1 , wherein the physical function is further allocated to communication with a management controller of the information handling system.

7. The system of claim 1 , wherein the first virtual function is implemented in accordance with Peripheral Component Interconnect.

8. A method for processing data in a system comprising a plurality of storage drives coupled to a storage controller, the method comprising:

implementing with the storage controller, using single-root input/output virtualization:

a first virtual function allocated to a first set of one or more of the plurality of storage drives and allocated to a software-defined storage virtual machine executing on a hypervisor of an information handling system to which the storage controller is communicatively coupled; and

one of a physical function and a second virtual function allocated to a second set of one or more of the plurality of storage drives and allocated to the hypervisor.

9. The method of claim 8 , wherein the second set of one or more of the plurality of storage drives comprises computer-readable code for booting the hypervisor.

10. The method of claim 8 , further comprising instantiating on the storage controller a virtual storage controller allocated to the first virtual function and emulating the storage controller.

11. The method of claim 8 , further comprising:

allocating, with the storage controller, the second virtual function to the second set of one or more of the plurality of storage drives; and

instantiating on the storage controller a virtual storage controller allocated to the first virtual function and emulating the storage controller.

12. The method of claim 8 , further comprising:

allocating, with the storage controller, the second virtual function to the second set of one or more of the plurality of storage drives;

allocating, with the storage controller, the physical function to monitoring the storage controller and the plurality of storage drives.

13. The method of claim 8 , further comprising allocating, with the storage controller, the physical function to communication with a management controller of the information handling system.

14. The method of claim 8 , further comprising implementing, with the storage controller, the first virtual function in accordance with Peripheral Component Interconnect.

15. A storage controller configured to:

communicatively couple to an information handling system;

communicatively couple to a plurality of storage drives; and

implement, using single-root input/output virtualization:

a first virtual function allocated to a first set of one or more of the plurality of storage drives and allocated to a software-defined storage virtual machine executing on a hypervisor of the information handling system; and

one of a physical function and a second virtual function allocated to a second set of one or more of the plurality of storage drives and allocated to the hypervisor.

16. The storage controller of claim 15 , wherein the second set of one or more of the plurality of storage drives comprises computer-readable code for booting the hypervisor.

17. The storage controller of claim 15 , further configured to instantiate a virtual storage controller allocated to the first virtual function and emulating the storage controller.

18. The storage controller of claim 15 , wherein the second virtual function is allocated to the second set of one or more of the plurality of storage drives, and the storage controller further is configured to instantiate a virtual storage controller allocated to the first virtual function and emulating the storage controller.

19. The storage controller of claim 15 , wherein the second virtual function is allocated to the second set of one or more of the plurality of storage drives, and the physical function is allocated to monitoring the storage controller and the plurality of storage drives.

20. The storage controller of claim 15 , wherein the physical function is further allocated to communication with a management controller of the information handling system.

21. The storage controller of claim 15 , wherein the first virtual function is implemented in accordance with Peripheral Component Interconnect.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2020
From: NELOGAL, CHANDRASHEKAR; POLURI, SYAMA S.; NIJHAWAN, VIJAY B.
To: DELL PRODUCTS L.P.
Reel/Frame 052538/0141 →