IP Library Granted Patent US 11,347,404
Granted Patent B2
US 11,347,404 · App. 16/529,386 · Granted May 31, 2022

System and method for sharing spare storage capacity between a log structured file system and RAID

Inventors: Vamsi Vankamamidi (Hopkinton, MA); Philippe Armangau (Acton, MA); Shuyu Lee (Acton, MA)
Assignee: EMC IP HOLDING COMPANY, LLC
G06F3/0619G06F3/065G06F3/0631G06F3/0653G06F3/0689G06F11/1088
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,347,404
App. No.
16/529,386
Filed
Aug 1, 2019
Granted
May 31, 2022
Kind
B2
Examiner
LI, HEWY H
Art Unit
2136
USPC
711/114
Abstract

A method, computer program product, and computer system for identifying, by a computing device, a first amount of storage space reserved by RAID for a RAID rebuild of a failed drive. A second amount of the storage space reserved by a file system may be identified, wherein the storage space may be shared between the RAID and the file system. The RAID rebuild of the failed drive may be performed. The first amount of the storage space may be allocated to the RAID from the second amount of the storage space reserved by the file system.

Claims (41)

1. A computer-implemented method comprising:

identifying, by a computing device, a first amount of a storage space, wherein the first amount of the storage space is reserved by RAID for a RAID rebuild of a first failed drive, wherein the RAID includes a RAID controller card and a plurality of storage hard disk drives;

identifying a second amount of the storage space reserved by a file system, wherein the storage space, including the first amount of the storage space and the second amount of the storage space, is shared between the RAID and the file system;

performing the RAID rebuild of the first failed drive; and

in response to performing the RAID rebuild of the first failed drive, allocating a third amount of the storage space to the RAID for a RAID rebuild of a second failed drive from the second amount of the storage space reserved by the file system, wherein the third amount of storage space is created through garbage collection on the second amount of storage space reserved by the file system, wherein allocating the third amount of the storage space to the RAID for the RAID rebuild of the second failed drive from the second amount of the storage space reserved by the file system includes:

merging one or more partially populated physical large blocks (PLBs) into a new PLB,

increasing a generation index of one or more virtual large blocks (VLBs) associated with the one or more partially populated PLBs, and

linking, with a redirection table, the one or more VLBs associated with the one or more partially populated PLBs to a new VLB associated with the new PLB.

2. The computer-implemented method of claim 1 wherein allocating the third amount of the storage space to the RAID for the RAID rebuild of the second failed drive from the second amount of the storage space reserved by the file system includes performing garbage collection on the shared storage space.

3. The computer-implemented method of claim 1 wherein all of the second amount of the storage space reserved by the file system is consumed by the file system.

4. The computer-implemented method of claim 1 wherein the first amount of the storage space is equal to an amount of data written into the RAID.

5. The computer-implemented method of claim 1 wherein the file system is a log structured file system.

6. The computer-implemented method of claim 1 wherein the first amount of the storage space is allocated to the RAID from the second amount of the storage space reserved by the file system based upon, at least in part, performing the RAID rebuild of the first failed drive.

7. The computer-implemented method of claim 1 wherein the first amount of the storage space combined with the second amount of the storage space is a total capacity of the storage space shared between the RAID and the file system.

8. A computer program product residing on a non-transitory computer readable storage medium having a plurality of instructions stored thereon which, when executed across one or more processors, causes at least a portion of the one or more processors to perform operations comprising:

identifying a first amount of a storage space, wherein the first amount of the storage space is reserved by RAID for a RAID rebuild of a first failed drive, wherein the RAID includes a RAID controller card and a plurality of storage hard disk drives;

identifying a second amount of the storage space reserved by a file system, wherein the storage space, including the first amount of the storage space and the second amount of the storage space, is shared between the RAID and the file system;

performing the RAID rebuild of the first failed drive; and

in response to performing the RAID rebuild of the first failed drive, allocating a third amount of the storage space to the RAID for a RAID rebuild of a second failed drive from the second amount of the storage space reserved by the file system, wherein the third amount of storage space is created through garbage collection on the second amount of storage space reserved by the file system, wherein allocating the third amount of the storage space to the RAID for the RAID rebuild of the second failed drive from the second amount of the storage space reserved by the file system includes:

merging one or more partially populated physical large blocks (PLBs) into a new PLB,

increasing a generation index of one or more virtual large blocks (VLBs) associated with the one or more partially populated PLBs, and

linking, with a redirection table, the one or more VLBs associated with the one or more partially populated PLBs to a new VLB associated with the new PLB.

9. The computer program product of claim 8 wherein allocating the third amount of the storage space to the RAID for the RAID rebuild of the second failed drive from the second amount of the storage space reserved by the file system includes performing garbage collection on the shared storage space.

10. The computer program product of claim 8 wherein all of the second amount of the storage space reserved by the file system is consumed by the file system.

11. The computer program product of claim 8 wherein the first amount of the storage space is equal to an amount of data written into the RAID.

12. The computer program product of claim 8 wherein the file system is a log structured file system.

13. The computer program product of claim 8 wherein the first amount of the storage space is allocated to the RAID from the second amount of the storage space reserved by the file system based upon, at least in part, performing the RAID rebuild of the first failed drive.

14. The computer program product of claim 8 wherein the first amount of the storage space combined with the second amount of the storage space is a total capacity of the storage space shared between the RAID and the file system.

15. A computing system including one or more processors and one or more memories configured to perform operations comprising:

identifying a first amount of a storage space, wherein the first amount of the storage space is reserved by RAID for a RAID rebuild of a first failed drive, wherein the RAID includes a RAID controller card and a plurality of storage hard disk drives;

identifying a second amount of the storage space reserved by a file system, wherein the storage space, including the first amount of the storage space and the second amount of the storage space, is shared between the RAID and the file system;

performing the RAID rebuild of the first failed drive; and

in response to performing the RAID rebuild of the first failed drive, allocating a third amount of the storage space to the RAID for a RAID rebuild of a second failed drive from the second amount of the storage space reserved by the file system, wherein the third amount of storage space is created through garbage collection on the second amount of storage space reserved by the file system, wherein allocating the third amount of the storage space to the RAID for the RAID rebuild of the second failed drive from the second amount of the storage space reserved by the file system includes:

merging one or more partially populated physical large blocks (PLBs) into a new PLB,

increasing a generation index of one or more virtual large blocks (VLBs) associated with the one or more partially populated PLBs, and

linking, with a redirection table, the one or more VLBs associated with the one or more partially populated PLBs to a new VLB associated with the new PLB.

16. The computing system of claim 15 wherein allocating the third amount of the storage space to the RAID for the RAID rebuild of the second failed drive from the second amount of the storage space reserved by the file system includes performing garbage collection on the shared storage space.

17. The computing system of claim 15 wherein all of the second amount of the storage space reserved by the file system is consumed by the file system.

18. The computing system of claim 15 wherein the first amount of the storage space is equal to an amount of data written into the RAID.

19. The computing system of claim 15 wherein the first amount of the storage space is allocated to the RAID from the second amount of the storage space reserved by the file system based upon, at least in part, performing the RAID rebuild of the first failed drive.

20. The computing system of claim 15 wherein the first amount of the storage space combined with the second amount of the storage space is a total capacity of the storage space shared between the RAID and the file system.

Assignments (9)
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 (053311/0169) 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 CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC CORPORATION; DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 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 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
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 053311/0169 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
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 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2019
From: VANKAMAMIDI, VAMSI; ARMANGAU, PHILIPPE; LEE, SHUYU
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 049935/0368 →
Continuity (1)
Related Publication 20210034255A1 · Feb 4, 2021