Methods for transferring reserves when moving virtual machines across systems

US9852154B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9852154-B2
Application numberUS-201213483731-A
CountryUS
Kind codeB2
Filing dateMay 30, 2012
Priority dateNov 10, 2010
Publication dateDec 26, 2017
Grant dateDec 26, 2017

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.

According to one embodiment, a method includes receiving device information from a source system; building a virtual device on a host system based at least in part on the received device information; at least one of: transferring a reserve of a device stored on a storage device to a target system; and receiving results of transferring the reserve to the target system; determining if the reserve is held by the target system; recording the reserve if the reserve is held by the target system; and sending a notification that the reserve is not held by the target system if the reserve is not held by the target system. Other methods are also described according to various embodiments.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: receiving device information about a first device, the device information being received by a target system from a source system; building a virtual device on the target system that is equivalent to a virtual device on the source system based at least in part on the received device information; setting a flag byte in a command input for a new reserve holder specifying whether a push command or a pull command will transfer a reserve of the first device, wherein the new reserve holder is the target system; initiating, using the target system, transfer of the reserve of the first device from the source system to the target system by sending an indication to the source system that the virtual device build is complete in response to completion of the virtual device build, wherein the reserve of the first device is transferred using a synchronous push command at the source system, the synchronous push command forcing a response that indicates whether the push command was successful or unsuccessful, wherein the transferring the reserve to the target system comprises: retrieving a path group identifier (PGID) for each of: an invoker system, a reserve holder system, and the command input for the new reserve holder; determining whether the PGID of the reserve holder system is the same as the PGID of the invoker system; and in response to a determination that the PGID of the reserve holder system is the same as the PGID of the invoker system: setting the PGID of the reserve holder system to the PGID of the command input for the new reserve holder; and sending a notification to the invoker system that transferring the reserve was successful; receiving results from the source system at the target system of transferring the reserve of the first device to the target system indicating a successful transfer in response to a determination that the synchronous push command was successful and indicating an unsuccessful transfer in response to a determination that the synchronous push command was unsuccessful; recording, in response to receiving the results, the reserve in response to a determination that a status check on the reserve indicates that the reserve is held by the target system; and sending a notification that the reserve is not held by the target system in response to a determination that the status check on the reserve indicates that the reserve is not held by the target system. 2. The method as recited in claim 1 , wherein the indication that the virtual device build is complete is sent prior to receiving the results from the source system. 3. The method as recited in claim 1 , wherein the synchronous push command is an unconditional reserve command issued by the source system to hold the reserve for the target system, and wherein the flag byte in the command input specifies that the synchronous push command will transfer the reserve. 4. The method as recited in claim 3 , wherein the transferring the reserve to the target system further comprises: in response to a determination that the PGID of the reserve holder system is not the same as the PGID of the invoker system, sending a notification to the invoker system that transferring the reserve was not successful, wherein the source system is the invoker system and the reserve holder system. 5. The method as recited in claim 3 , wherein the synchronous push command is delayed until the source system determines that the reserve is available for transferring to the target system. 6. The method as recited in claim 5 , further comprising performing a status check periodically to determine whether the reserve is available for transfer to the target system. 7. The method as recited in claim 3 , wherein an atomic command is used to transfer the reserve to the target system. 8. The method as recited in claim 1 , wherein the synchronous push command is an unconditional reserve command issued by the source system to hold the reserve for the target system, wherein the flag byte in the command input specifies that the synchronous push command will transfer the reserve, wherein the indication that the virtual device build is complete is sent prior to receiving the results from the source system, wherein the method further comprises: delaying the synchronous push command until the source system determines that the reserve is available for transferring to the target system; and performing a status check periodically to determine whether the reserve is available for transfer to the target system, wherein the transferring the reserve to the target system further comprises: in response to a determination that the PGID of the reserve holder system is not the same as the PGID of the invoker system, sending a notification to the invoker system that transferring the reserve was not successful, wherein the source system is the invoker system and the reserve holder system. 9. The method as recited in claim 1 , wherein an atomic command is used to transfer the reserve to the target system, wherein the flag byte in the command input specifies that the synchronous push command will transfer the reserve, wherein the indication that the virtual device build is complete is sent prior to receiving the results from the source system, wherein the method further comprises performing a status check periodically to determine whether the reserve is available for transfer to the target system, wherein the transferring the reserve to the target system further comprises: in response to a determination that the PGID of the reserve holder system is not the same as the PGID of the invoker system, sending a notification to the invoker system that transferring the reserve was not successful, wherein the source system is the invoker system and the reserve holder system. 10. A method, comprising: issuing, from a target system to a source system, a reserve command for a first device; receiving device information about the first device in response to the reserve command, the device information being received by the target system from the source system; building a virtual device on the target system that is equivalent to a virtual device on the source system based at least in part on the received device information; setting a flag byte in a command input for a current reserve holder specifying that a pull command will transfer a reserve of the first device, wherein the current reserve holder is the source system; transferring, using the target system, the reserve of the first device from the source system to the target system using a synchronous pull command, the synchronous pull command forcing a response regarding whether the synchronous pull command was successful or unsuccessful, wherein the transferring the reserve to the target system comprises: retrieving a path group identifier (PGID) for each of: the target system, the source system, and the command input for the current reserve holder; determining whether the PGID of the command input for the current reserve holder is the same as the PGID of the source system; in response to a determination that the PGID of the command input for the current reserve holder is the same as the PGID of the source system: setting the PGID of the command input for the current reserve holder to the PGID of the target system; and sending a notification to the target system that transferring the reserve was successful; receiving results from the source system at the target system of transferring the reserve of the first device to the target system indicating that the reserve is held by the target system in response to a determination that the synchronous pull command was successful and indicating that t

Assignees

Inventors

Classifications

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 US9852154B2 cover?
According to one embodiment, a method includes receiving device information from a source system; building a virtual device on a host system based at least in part on the received device information; at least one of: transferring a reserve of a device stored on a storage device to a target system; and receiving results of transferring the reserve to the target system; determining if the reserve…
Who is the assignee on this patent?
Candelaria Susan K, Gardiner Mark P, Hardy Clint A, and 5 more
What technology area does this patent fall under?
Primary CPC classification G06F17/30233. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 26 2017 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).