1. 09 4月, 2013 2 次提交
  2. 02 1月, 2013 1 次提交
    • S
      dataplane: add host memory mapping code · 185ecf40
      Stefan Hajnoczi 提交于
      The data plane thread needs to map guest physical addresses to host
      pointers.  Normally this is done with cpu_physical_memory_map() but the
      function assumes the global mutex is held.  The data plane thread does
      not touch the global mutex and therefore needs a thread-safe memory
      mapping mechanism.
      
      Hostmem registers a MemoryListener similar to how vhost collects and
      pushes memory region information into the kernel.  There is a
      fine-grained lock on the regions list which is held during lookup and
      when installing a new regions list.
      
      When the physical memory map changes the MemoryListener callbacks are
      invoked.  They build up a new list of memory regions which is finally
      installed when the list has been completed.
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      185ecf40