Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1472074

[PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings

From Toshi Kani <toshi.kani@hpe.com>
Newsgroups linux.kernel
Subject [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings
Date 2016-08-29 21:20 +0200
Message-ID <sbAg9-2S5-3@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


When CONFIG_FS_DAX_PMD is set, DAX supports mmap() using pmd page
size.  This feature relies on both mmap virtual address and FS
block (i.e. physical address) to be aligned by the pmd page size.
Users can use mkfs options to specify FS to align block allocations.
However, aligning mmap address requires code changes to existing
applications for providing a pmd-aligned address to mmap().

For instance, fio with "ioengine=mmap" performs I/Os with mmap() [1].
It calls mmap() with a NULL address, which needs to be changed to
provide a pmd-aligned address for testing with DAX pmd mappings.
Changing all applications that call mmap() with NULL is undesirable.

This patch-set extends filesystems to align an mmap address for
a DAX file so that unmodified applications can use DAX pmd mappings.

[1]: https://github.com/axboe/fio/blob/master/engines/mmap.c

RESEND:
 - Rebased to 4.8.0-rc4, and drop blk as BLK_DEV_DAX was removed.

v4:
 - Use loff_t for offset and cast before shift (Jan Kara)
 - Remove redundant paranthesis (Jan Kara)
 - Allow integration with huge page cache support (Matthew Wilcox)
 - Prepare for PUD mapping support (Mike Kravetz, Matthew Wilcox)

v3:
 - Check overflow condition to offset + length. (Matthew Wilcox)
 - Remove indent by using gotos. (Matthew Wilcox)
 - Define dax_get_unmapped_area to NULL when CONFIG_FS_DAX is unset.
   (Matthew Wilcox)
 - Squash all filesystem patches together. (Matthew Wilcox)

v2:
 - Change filesystems to provide their get_unmapped_area().
   (Matthew Wilcox)
 - Add more description about the benefit. (Matthew Wilcox)

---
Toshi Kani (2):
 1/2 thp, dax: add thp_get_unmapped_area for pmd mappings
 2/2 ext2/4, xfs, blk: call thp_get_unmapped_area() for pmd mappings

---
 fs/ext2/file.c          |  1 +
 fs/ext4/file.c          |  1 +
 fs/xfs/xfs_file.c       |  1 +
 include/linux/huge_mm.h |  7 +++++++
 mm/huge_memory.c        | 43 +++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 53 insertions(+)

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings Toshi Kani <toshi.kani@hpe.com> - 2016-08-29 21:20 +0200
  Re: [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings "Kirill A. Shutemov" <kirill@shutemov.name> - 2016-08-29 22:50 +0200
    Re: [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings "Kani, Toshimitsu" <toshi.kani@hpe.com> - 2016-08-29 23:40 +0200
      Re: [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings "Kani, Toshimitsu" <toshi.kani@hpe.com> - 2016-08-30 00:40 +0200
        Re: [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings "Kirill A. Shutemov" <kirill@shutemov.name> - 2016-09-08 13:00 +0200
          Re: [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings "Kani, Toshimitsu" <toshi.kani@hpe.com> - 2016-09-08 15:50 +0200
            Re: [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings "Kani, Toshimitsu" <toshi.kani@hpe.com> - 2016-09-09 01:40 +0200
              Re: [PATCH v4 RESEND 0/2] Align mmap address for DAX pmd mappings "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-09-09 14:40 +0200

csiph-web