Virtual device timeout by memory offlining

US9575796B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9575796-B2
Application numberUS-201514623071-A
CountryUS
Kind codeB2
Filing dateFeb 16, 2015
Priority dateFeb 16, 2015
Publication dateFeb 21, 2017
Grant dateFeb 21, 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.

A system, methods, and apparatus for virtual device timeout by memory offlining. A hypervisor receives a message from a source virtual machine to be transmitted to a destination machine and reserves a block of memory associated with the message. The message received from the source virtual machine is transmitted to the destination machine. The hypervisor then determines whether to reclaim the block of memory. If reclaiming the block of memory, the hypervisor offlines the block of memory by offlining one or more pages corresponding to the block of memory and/or offlining all memory corresponding to the source virtual machine. The hypervisor then indicates to the source virtual machine that the block of memory is accessible.

First claim

Opening claim text (preview).

The invention is claimed as follows: 1. A system comprising: a memory; one or more processors, in communication with the memory; one or more virtual machines executing on the one or more processors; and a hypervisor executing on the one or more processors to: receive, by the hypervisor, a message from a source virtual machine to be transmitted to a destination machine; reserve, by the hypervisor, a first block of memory associated with the message; transmit the message received from the source virtual machine to the destination machine with a zero copy operation; after the message is transmitted to the destination machine, determine, by the hypervisor, whether to reclaim the first block of memory, a determination to reclaim the first block of memory being made by the hypervisor responsive to an amount of time exceeding a maximum time out value having elapsed since the message was transmitted without at least one of receiving a response and completing a task having occurred; responsive to the determination to reclaim the first block of memory and in response to receiving a request to reset the source virtual machine, offlining, by the hypervisor, one or more pages corresponding to the first block of memory; and indicate, by the hypervisor, to the source virtual machine that the first block of memory is accessible. 2. The system of claim 1 , wherein reserving the first block of memory includes pinning the first block of memory. 3. The system of claim 1 , wherein the maximum time out value is provided to the hypervisor by the source virtual machine. 4. The system of claim 1 , wherein the hypervisor, reclaims the first block of memory upon receiving a request from the source virtual machine to reclaim the first block of memory. 5. The system of claim 4 , wherein the request from the source virtual machine is transmitted upon determining that an amount of time exceeds a maximum time out value, wherein the amount of time is the time that has elapsed since the message was transmitted to the destination machine without at least one of receiving a response and completing a task. 6. The system of claim 4 , wherein the request from the source virtual machine is a request to disable access to the first block of memory. 7. The system of claim 1 , wherein prior to offlining the first block of memory, copying, by the hypervisor, the message to a second block of memory. 8. The system of claim 1 , wherein the hypervisor offlines all memory corresponding to the source virtual machine. 9. The system of claim 8 , wherein the source virtual machine transmits the request to reset the source virtual machine to the hypervisor and the hypervisor offlines all memory corresponding to the source virtual machine responsive to the request to reset the source virtual machine. 10. A method, comprising: receiving, by a hypervisor executing on a computer system, a message from a source virtual machine to be transmitted to a destination machine; reserving, by the hypervisor, a first block of memory associated with the message; transmitting the message received from the source virtual machine to the destination machine with a zero copy operation; after the message is transmitted to the destination machine, determining, by the hypervisor, whether to reclaim the first block of memory, a determination to reclaim the memory being made by the hypervisor responsive to an amount of time exceeding a maximum time out value having elapsed since the message was transmitted without at least one of receiving a response and completing a task having occurred; responsive to the determination to reclaim the first block of memory and in response to receiving a request to reset the source virtual machine, offlining, by the hypervisor, one or more pages corresponding to the first block of memory; and indicating, by the hypervisor, to the source virtual machine that the first block of memory is accessible. 11. The method of claim 10 , wherein reserving the first block of memory includes pinning the first block of memory. 12. The method of claim 10 , wherein the maximum time out value is provided to the hypervisor by the source virtual machine. 13. The method of claim 10 , wherein the first block of memory is reclaimed upon receiving a request from the source virtual machine to reclaim the first block of memory. 14. The method of claim 13 , wherein the request from the source virtual machine is transmitted upon determining that an amount of time exceeds a maximum time out value, wherein the amount of time is the time that has elapsed since the message was transmitted to the destination machine without at least one of receiving a response and completing a task. 15. The method of claim 10 , wherein prior to offlining the first block of memory, copying, by the hypervisor, the message to a second block of memory. 16. A computer-readable non-transitory storage medium comprising executable instructions that, when executed by a computer system, cause the computer system to: receive, by a hypervisor executing on a computer system, a message from a source virtual machine to be transmitted to a destination machine; reserve, by the hypervisor, a first block of memory associated with the message; transmit the message received from the source virtual machine to the destination machine with a zero copy operation; after the message is transmitted to the destination machine, determine, by the hypervisor, whether to reclaim the first block of memory, a determination to reclaim the first block of memory being made by the hypervisor responsive to an amount of time exceeding a maximum time out value having elapsed since the message was transmitted without at least one of receiving a response and completing a task having occurred; responsive to the determination to reclaim the first block of memory and in response to receiving a request to reset the source virtual machine, offlining, by the hypervisor, one or more pages corresponding to the first block of memory; and indicate, by the hypervisor, to the source virtual machine that the first block of memory is accessible. 17. The computer-readable non-transitory storage medium of claim 16 , wherein reserving the first block of memory includes pinning the first block of memory. 18. The computer-readable non-transitory storage medium of claim 16 , wherein the maximum time out value is provided to the hypervisor by the source virtual machine. 19. The computer-readable non-transitory storage medium of claim 16 , wherein the first block of memory is reclaimed upon receiving a request from the source virtual machine to reclaim the first block of memory. 20. The computer-readable non-transitory storage medium of claim 19 , wherein the request from the source virtual machine is transmitted upon determining that an amount of time exceeds a maximum time out value, wherein the amount of time is the time that has elapsed since the message was transmitted to the destination machine without at least one of receiving a response and completing a task.

Assignees

Inventors

Classifications

  • I/O management, e.g. providing access to device drivers or storage · CPC title

  • the resource being the memory · CPC title

  • Memory management, e.g. access or allocation · CPC title

  • Hypervisor-specific management and integration aspects · 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 US9575796B2 cover?
A system, methods, and apparatus for virtual device timeout by memory offlining. A hypervisor receives a message from a source virtual machine to be transmitted to a destination machine and reserves a block of memory associated with the message. The message received from the source virtual machine is transmitted to the destination machine. The hypervisor then determines whether to reclaim the b…
Who is the assignee on this patent?
Red Hat Israel Ltd, Red Hat Isreal Ltd
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 21 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).