Detecting and preventing virtual disk storage linkage faults

US9519496B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9519496-B2
Application numberUS-201113094620-A
CountryUS
Kind codeB2
Filing dateApr 26, 2011
Priority dateApr 26, 2011
Publication dateDec 13, 2016
Grant dateDec 13, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In an exemplary embodiment, a virtual disk file can be assigned an identifier and a virtual disk files that is dependent on the virtual disk file can include a copy of the identifier. In the instance that the virtual disk file is opened and data is modified that causes the contents of a virtual disk extent to change the identifier can be changed. If the virtual disk file and the dependent virtual disk file are used to instantiate a virtual disk the difference between identifiers can be detected, which is indicative of the fact that the virtual disk may be corrupted. Other techniques are described in the detailed description, claims, and figures that form a part of this document.

First claim

Opening claim text (preview).

What is claimed: 1. A non-transitory computer-readable storage media tangibly embodying instructions that upon execution by a processor cause the processor to: open a virtual disk file, the virtual disk file including a unique identifier identifying the virtual disk file and virtual disk extent data that forms at least a part of the data in a virtual disk, wherein a first unique identifier is stored as the unique identifier; overwrite the first unique identifier stored as the unique identifier in the virtual disk file with a second unique identifier in response to detecting an attempt to write information to the virtual disk file that affects how virtual disk extent data is interpreted; determine that the second unique identifier was written to a persistent copy of the virtual disk file; and write the information to the virtual disk file in response to determining that the second unique identifier was written to the persistent copy of the virtual disk file. 2. The non-transitory computer-readable storage media of claim 1 , the instructions that upon execution cause the processor to overwrite the first unique identifier further comprising instructions that upon execution cause the processor to: overwrite the first unique identifier in response to detecting the attempt to write to a bit pattern of a virtual disk extent. 3. The non-transitory computer-readable storage media of claim 1 , further comprising instructions that upon execution cause the processor to: deny a request to instantiate the virtual disk in response to a determination that the second unique identifier obtained from the virtual disk file is not equal to a unique identifier stored in a parent virtual disk file of the virtual disk file. 4. The non-transitory computer-readable storage media of claim 1 , further comprising instructions that upon execution cause the processor to: change the second unique identifier to the first unique identifier in response to user input. 5. The non-transitory computer-readable storage media of claim 1 , further comprising instructions that upon execution cause the processor to: associate a number with information identifying virtual disk extents in a group that are completely described by a child virtual disk file; update a copy of the number in the child virtual disk file to a second number in response to a determination that data in the virtual disk file was modified; and update the number associated with the information to the second number in response to a determination that the information accurately reflects a state of the virtual disk extents in the group. 6. The non-transitory computer-readable storage media of claim 1 , further comprising instructions that upon execution cause the processor to: access sector bitmaps for a group of virtual disk extents written to a section of the virtual disk file, the section of the virtual disk file having a virtual disk file offset selected such that the section is aligned with sectors of a storage device configured to store the virtual disk file. 7. A computer system, comprising: a processor; and a memory, the memory in electronic communication with the processor when powered, the memory including instructions that upon execution by the processor cause the processor to: instantiate a virtual disk, the virtual disk including a group of virtual disk extents described by a first virtual disk file, the first virtual disk file including a unique identifier identifying the first virtual disk file, wherein a first identifier is stored as the unique identifier; load information identifying virtual disk extents in the group that are completely described by the first virtual disk file into random access memory, the information associated with a copy of the first identifier; change the first identifier in to a second identifier after opening the first virtual disk file; and change the copy of the first identifier associated with the information to the second identifier in response to a determination that the information accurately reflects a state of the virtual disk extents in the group. 8. The computer system of claim 7 , the instructions that upon execution cause the processor to instantiate the virtual disk further comprising instructions that upon execution cause the processor to: instantiate the virtual disk in response to a determination that the unique identifier in the first virtual disk file matches a unique identifier located in a parent virtual disk file. 9. The computer system of claim 7 , the instructions that upon execution cause the processor to instantiate the virtual disk further comprising instructions that upon execution cause the processor to: deny a request to instantiate the virtual disk in response to a determination that the unique identifier in the first virtual disk file does not match a unique identifier located in a parent virtual disk file. 10. The computer system of claim 7 , the instructions that upon execution cause the processor to change the first identifier in the first virtual disk file further comprise instructions that upon execution cause the processor to: change the first identifier in the first virtual disk file to the second identifier in response to a determination that a virtual disk extent in the group was modified. 11. The computer system of claim 7 , the instructions that upon execution cause the processor to change the copy of the first identifier associated with the information further comprise instructions that upon execution cause the processor to: change the copy of the first identifier associated with information to the second identifier during a procedure to close the virtual disk file. 12. The computer system of claim 7 , the instructions that upon execution cause the processor to change the copy of the first identifier associated with the information further comprise instructions that upon execution cause the processor to: change the copy of the first identifier associated with the information to the second identifier in response to the determination that the virtual disk file was modified; and log modifications made to the information. 13. The computer system of claim 7 , further comprising instructions that upon execution cause the processor to: access sector bitmaps for the group of virtual disk extents written to a section of the virtual disk file, the section of the virtual disk file having a virtual disk file offset selected such that the section is aligned with sectors of a storage device configured to store the virtual disk file. 14. The computer system of claim 7 , further comprising instructions that upon execution cause the processor to: detect an attempt to modify information in a parent virtual disk file that affects how virtual disk extent data of the virtual disk based on the parent virtual disk file is interpreted, the parent virtual disk file including a first random value; overwrite the first random value in the parent virtual disk file with a second random value; flush the second random value to a persistent copy of the virtual disk file; and modify the information in the parent virtual disk file in response to receipt of a signal indicating that the flush completed. 15. The computer system of claim 7 , further comprising instructions that upon execution cause the processor to: derive updated information in response to a determination that the information is associated with a copy of the first identifier and the first virtual disk file includes the second identifier. 16. A computer implemented method, comprising: opening a parent virtual disk file, t

Assignees

Inventors

Classifications

  • G06F9/455Primary

    Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines · CPC title

  • Disk arrays, e.g. RAID, JBOD · CPC title

  • G06F3/0619Primary

    in relation to data integrity, e.g. data losses, bit errors · CPC title

  • Management of space entities, e.g. partitions, extents, pools · CPC title

  • Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9519496B2 cover?
In an exemplary embodiment, a virtual disk file can be assigned an identifier and a virtual disk files that is dependent on the virtual disk file can include a copy of the identifier. In the instance that the virtual disk file is opened and data is modified that causes the contents of a virtual disk extent to change the identifier can be changed. If the virtual disk file and the dependent virtu…
Who is the assignee on this patent?
Starks John A, Green Dustin L, Harris Todd William, and 4 more
What technology area does this patent fall under?
Primary CPC classification G06F9/455. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 13 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).