IP Library Granted Patent US 11,099,930
Granted Patent B2
US 11,099,930 · App. 16/906,482 · Granted Aug 24, 2021

Detect and triage data integrity issue for virtual machine

Inventors: Man Lv (Beijing, CN); Yong Zou (Beijing, CN); Assaf Natanzon (Tel Aviv, IL); Bing Liu (Tianjin, CN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F11/1004G06F3/064G06F3/067G06F3/0619G06F3/0664
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,099,930
App. No.
16/906,482
Granted
Aug 24, 2021
Kind
B2
Abstract

One example method includes receiving an IO request that specifies an operation to be performed concerning a data block, determining if a policy exists for a device that made the IO request, when a policy is determined to exist for the device, comparing the IO request to the policy, recording the IO request, and passing the IO request to a disk driver regardless of whether the IO request is determined to violate the policy or not.

Claims (30)

1. A method, comprising:

receiving an Input/Output (IO) request that specifies an operation to be performed on a data block;

determining if a policy exists for a device that made the IO request;

when a policy is determined to exist for the device, comparing the IO request to the policy;

recording the IO request by creating a record of the IO request; and

passing the IO request to a disk driver regardless of whether the IO request is determined to violate the policy or not.

2. The method as recited in claim 1 , wherein the method is performed in whole or in part by an access layer in an IO stack of a virtual machine.

3. The method as recited in claim 2 , wherein the access layer is positioned between a block layer of the IO stack and a disk driver layer of the IO stack.

4. The method as recited in claim 1 , wherein the IO request is received from a block layer.

5. The method as recited in claim 1 , wherein when a policy is determined not to exist for the device, the operation specified in the IO request is denied if the operation is a WRITE request.

6. The method as recited in claim 1 , wherein when comparison of the IO request to the policy indicates a violation of the policy, an action is taken concerning the violation.

7. The method as recited in claim 1 , wherein the record of the IO request comprises a combination of any one or more of: a checksum of the data block with which the IO request is concerned; identification of an entity that made the IO request; the operation(s) specified in the IO request; identity of the data block; a time of the IO request; and, address and length of the IO request.

8. The method as recited in claim 1 , wherein the IO request is received from a raw device.

9. The method as recited in claim 1 , wherein the disk driver is associated with a virtual storage disk.

10. The method as recited in claim 1 , wherein the IO request is only recorded when the IO request specifies a WRITE operation.

11. The method as recited in claim 1 , further comprising calculating a checksum of the data block with which the IO request is concerned, wherein calculation of the checksum is performed after receipt of the IO request.

12. The method as recited in claim 1 , further comprising updating an access record associated with the data block identified by the IO request.

13. A non-transitory storage medium having stored therein instructions which are executable by one or more hardware processors to perform operations comprising:

receiving an Input/Output (IO) request that specifies an operation to be performed on a data block;

determining if a policy exists for a device that made the IO request;

when a policy is determined to exist for the device, comparing the IO request to the policy;

recording the IO request by creating a record of the IO request; and

passing the IO request to a disk driver regardless of whether the IO request is determined to violate the policy or not.

14. The non-transitory storage medium as recited in claim 13 , wherein the operations are performed in whole or in part by an access layer in an IO stack of a virtual machine.

15. The non-transitory storage medium as recited in claim 14 , wherein the access layer is positioned between a block layer of the IO stack and a disk driver layer of the IO stack.

16. The non-transitory storage medium as recited in claim 13 , wherein the IO request is received from a block layer or a raw device.

17. The non-transitory storage medium as recited in claim 13 , wherein when a policy is determined not to exist for the device, the operation specified in the IO request is denied if the operation is a WRITE request.

18. The non-transitory storage medium as recited in claim 13 , wherein when comparison of the IO request to the policy indicates a violation of the policy, an action is taken concerning the violation.

19. The non-transitory storage medium as recited in claim 13 , wherein the record of the IO request comprises a combination of any one or more of: a checksum of the data block with which the IO request is concerned; identification of an entity that made the IO request; the operation(s) specified in the IO request; identity of the data block; a time of the IO request; and, address and length of the IO request.

20. The non-transitory storage medium as recited in claim 13 , wherein the IO request is only recorded when the IO request specifies a WRITE operation.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 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 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 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 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 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 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2020
From: LV, MAN; ZOU, YONG; NATANZON, ASSAF; LIU, BING
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052990/0624 →