×

Local access DMA with shared memory pool

  • US 10,157,146 B2
  • Filed: 02/12/2015
  • Issued: 12/18/2018
  • Est. Priority Date: 02/12/2015
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • receiving, by a processing device executing a hypervisor, a first request from a virtual machine to register a memory region with a hardware device, wherein registering the memory region comprises pinning one or more underlying memory pages of the memory region and generating a key for the memory region;

    generating, by the processing device executing the hypervisor, a first key for the memory region, wherein the memory region is not registered with the hardware device;

    generating, by the processing device, a second key to access a shared memory pool, the shared memory pool being pinned and registered to the hardware device;

    generating a mapping of the first key to the second key;

    in response to generating the mapping of the first key to the second key, sending a response to the virtual machine that the memory region has been registered to the hardware device, the response comprising the first key that has been mapped to the second key, the first key comprising an indication that the first key is a virtual key that is to be replaced with the second key that is mapped to the first key;

    receiving a second request for the hardware device to perform an operation associated with the memory region, wherein the request identifies the first key; and

    copying data from a first memory location associated with the first key to a second memory location associated with the second key, wherein the operation is to be performed by the hardware device with the data at the second memory location.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×