mbox series

[v3,0/3] fetch the alignment of device dax

Message ID 20200429085011.63752-1-jingqi.liu@intel.com
Headers show
Series fetch the alignment of device dax | expand

Message

Liu, Jingqi April 29, 2020, 8:50 a.m. UTC
This series adds libdaxctl support and fetchs the alignment of
device dax through libdaxctl [1] APIs.

QEMU uses mmap(2) to maps vNVDIMM backends and aligns the mapping
address to the page size (getpagesize(2)) by default. However, some
types of backends may require an alignment different than the page
size. The 'align' option is provided to memory-backend-file to allow
users to specify the proper alignment.

For device dax (e.g., /dev/dax0.0), the 'align' option needs to
match the alignment requirement of the device dax, which can be fetched
through the APIs of libdaxctl version 57 or up.

[1] Libdaxctl is a part of ndctl project.
The project's repository is: https://github.com/pmem/ndctl

Changelog:
  v3:
  - Per Joao's suggestion, require libdaxctl version 57 or up.
  - Per Joao's suggestion, suggest to query the @align with daxctl tool
    in docs/nvdimm.txt.

  v2:
  - Per Paolo and Dan's suggestions, fetch the alignment of device dax
    through libdaxctl APIs.

  v1:
  - The initial version.
    Fetch the alignment through "/sys/dev/char/%d:%d/device/align".

Jingqi Liu (3):
  exec: fetch the alignment of Linux devdax pmem character device nodes
  docs/nvdimm: add description of alignment requirement of device dax
  configure: add libdaxctl support

 configure       | 29 ++++++++++++++++++++++++++
 docs/nvdimm.txt | 10 +++++++++
 exec.c          | 54 ++++++++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 92 insertions(+), 1 deletion(-)