IP Library Granted Patent US 11,853,267
Granted Patent B2
US 11,853,267 · App. 16/734,277 · Granted Dec 26, 2023

Uninterrupted file level backup operation using a virtual object file queue

Inventors: Mahesh Reddy Appireddygari Venkataramana (Bangalore, IN); Chetan Battal (Banglore, IN); Mahantesh Ambaljeri (Banglore, IN); Swaroop Shankar DH (Bangalore, IN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F16/188G06F11/1464G06F2201/815
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,853,267
App. No.
16/734,277
Granted
Dec 26, 2023
Kind
B2
Abstract

Embodiments are described for performing an uninterrupted backup in a storage system responsive to an abort event. A backup agent receives a plurality of file objects to be backed up on a target device during a first backup session. The backup agent initiates a parent interrupt service routine (ISR), which generates a plurality of child ISRs. Each of the plurality of child ISRs monitors a backup state of a corresponding file object. The parent ISR generates a virtual file object queue (VFOQ) to store a current backup state of each of the plurality of file objects. When an abort occurs, the current backup state of each of the plurality of file objects is saved in a respective child ISR of that file object. During a subsequent backup session, backup of the plurality of file objects commences based on the current backup state of each of the plurality of file objects.

Claims (55)

1. A method comprising:

receiving a plurality of file objects to be backed up on a target device during a first backup session;

starting a parent interrupt service routine (ISR), wherein the parent ISR generates a plurality of child ISRs, each of the plurality of child ISRs to monitor a backup state of a corresponding file object among the plurality of file objects;

generating a virtual file object queue (VFOQ) to store a current backup state of each of the plurality of file objects;

in response to detecting an abort of the first backup session, saving a current state of the VFOQ as a whole and using the VFOQ to track the current backup state of each of the plurality of file objects, and saving the current backup state of each of the plurality of file objects in a respective child ISR of that file object; and

during a subsequent backup session, resuming backup of the plurality of file objects based on the current backup state of each of the plurality of file objects as indicated by the VFOQ.

2. The method of claim 1 , wherein resuming backup of the plurality of file objects comprises:

identifying, based on the VFOQ, one or more file objects that were not completely backed up during the first backup session; and

instructing the child ISR for each of the one or more file objects to enforce their saved current backup state on the corresponding file object.

3. The method of claim 2 , further comprising:

receiving an acknowledgement that a file object was received by the target device; and

in response to receiving the acknowledgement, updating a current backup state of the file object in the VFOQ to indicate that the file object has been successfully backed up.

4. The method of claim 3 , further comprising:

in response to updating a current backup state of the file object in the VFOQ to indicate that the file object has been successfully backed up, terminating a child ISR corresponding to the file object.

5. The method of claim 4 , further comprising:

in response to determining that all child ISRs have been terminated, terminating the parent ISR.

6. The method of claim 1 , wherein the current backup state of a file object corresponds to a backup process the file object is currently undergoing.

7. The method of claim 1 , wherein the VFOQ is generated and monitored by the parent ISR.

8. A system comprising:

a memory to store a plurality of objects to be backed up on a target device during a first backup session; and

a processor to:

receive a plurality of file objects to be backed up on a target device during a first backup session;

start a parent interrupt service routine (ISR), wherein the parent ISR generates a plurality of child ISRs, each of the plurality of child ISRs to monitor a backup state of a corresponding file object among the plurality of file objects;

generate a virtual file object queue (VFOQ) to store a current backup state of each of the plurality of file objects;

in response to detecting an abort of the first backup session, save a current state of the VFOQ as a whole and use the VFOQ to track the current backup state of each of the plurality of file objects, and save the current backup state of each of the plurality of file objects in a respective child ISR of that file object; and

during a subsequent backup session, resume backup of the plurality of file objects based on the current backup state of each of the plurality of file objects as indicated by the VFOQ.

9. The system of claim 8 , wherein to resume backup of the plurality of file objects, the processor is to:

identify, based on the VFOQ, one or more file objects that were not completely backed up during the first backup session; and

instruct the child ISR for each of the one or more file objects to enforce their saved current backup state on the corresponding file object.

10. The system of claim 9 , wherein the processor is further to:

receive an acknowledgement that a file object was received by the target device; and

in response to receiving the acknowledgement, update a current backup state of the file object in the VFOQ to indicate that the file object has been successfully backed up.

11. The system of claim 10 , wherein the processor is further to:

in response to updating a current backup state of the file object in the VFOQ to indicate that the file object has been successfully backed up, terminate a child ISR corresponding to the file object.

12. The system of claim 11 , wherein the processor is further to:

in response to determining that all child ISRs have been terminated, terminate the parent ISR.

13. The system of claim 8 , wherein the current backup state of a file object corresponds to a backup process the file object is currently undergoing.

14. The system of claim 8 , wherein the processor generates and monitors the VFOQ using the parent ISR.

15. A non-transitory computer readable medium, having instructions stored thereon that, when executed by a processor, cause the processor to:

receive a plurality of file objects to be backed up on a target device during a first backup session;

start a parent interrupt service routine (ISR), wherein the parent ISR generates a plurality of child ISRs, each of the plurality of child ISRs to monitor a backup state of a corresponding file object among the plurality of file objects;

generate a virtual file object queue (VFOQ) to store a current backup state of each of the plurality of file objects;

in response to detecting an abort of the first backup session, save a current state of the VFOQ as a whole and use the VFOQ to track the current backup state of each of the plurality of file objects, and save the current backup state of each of the plurality of file objects in a respective child ISR of that file object; and

during a subsequent backup session, resume backup of the plurality of file objects based on the current backup state of each of the plurality of file objects as indicated by the VFOQ.

16. The non-transitory computer readable medium of claim 15 , wherein to resume backup of the plurality of file objects, the processor is to:

identify, based on the VFOQ, one or more file objects that were not completely backed up during the first backup session; and

instruct the child ISR for each of the one or more file objects to enforce their saved current backup state on the corresponding file object.

17. The non-transitory computer readable medium of claim 16 , wherein the processor is further to:

receive an acknowledgement that a file object was received by the target device; and

in response to receiving the acknowledgement, update a current backup state of the file object in the VFOQ to indicate that the file object has been successfully backed up.

18. The non-transitory computer readable medium of claim 17 , wherein the processor is further to:

in response to updating a current backup state of the file object in the VFOQ to indicate that the file object has been successfully backed up, terminate a child ISR corresponding to the file object.

19. The non-transitory computer readable medium of claim 18 , wherein the processor is further to:

in response to determining that all child ISRs have been terminated, terminate the parent ISR.

20. The non-transitory computer readable medium of claim 15 , wherein the current backup state of a file object corresponds to a backup process the file object is currently undergoing.

Assignments (9)
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 (052216/0758) 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 060438/0680 →
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 AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
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 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 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 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2020
From: VENKATARAMANA, MAHESH REDDY APPIREDDYGARI; BATTAL, CHETAN; AMBALJERI, MAHANTESH; SHANKAR DH, SWAROOP
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051435/0044 →
Continuity (1)
Related Publication 20210209068A1 · Jul 8, 2021