[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

option for memory backed by hugepages?


  • To: xen-users@xxxxxxxxxxxxxxxxxxxx
  • From: John Wilkes <john@xxxxxxxxxx>
  • Date: Thu, 14 Oct 2021 10:20:21 -0700
  • Autocrypt: addr=john@xxxxxxxxxx; keydata= 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
  • Delivery-date: Thu, 14 Oct 2021 18:37:42 +0000
  • List-id: Xen user discussion <xen-users.lists.xenproject.org>

I need to guarantee that allocating 2MB using mmap() with the MAP_HUGETLB flag on a HVM will get a contiguous 2MB huge page in system memory.  HAP is enabled.  This is for some specialized hardware that requires 2MB of contiguous DRAM, and it will not function properly if the allocated memory uses 4KB pages that appear contiguous in virtual space but are not physically contiguous in system DRAM.

It functions correctly running in a non-virtualized host environment if a sufficient number of huge pages is reserved in /proc/sys/vm/nr_hugepages.

There is a qemu configuration option for guest memory to be backed by huge pages:

  <memoryBacking>
    <hugepages/>
  </memoryBacking>

I have confirmed that contiguous 2MB pages are allocated in system physical memory with mmap() and MAP_HUGETLB on a guest VM if the qemu guest's memory is configured to be backed by hugepages.

Is there a similar mechanism in Xen that will guarantee that a HVM will get a contiguous 2MB huge page in system DRAM?

John



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.