lkml.org 
[lkml]   [2021]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v1 0/5] mm/madvise: introduce MADV_POPULATE_(READ|WRITE) to prefault/prealloc memory
From
Date
On 17.03.21 12:06, David Hildenbrand wrote:
> Excessive details on MADV_POPULATE_(READ|WRITE) can be found in patch #2.
>
> Now accompanied by minor adjustments and selftests/vm tests.
>
> RFCv2 -> v1
> - "mm: fix variable name in declaration of populate_vma_page_range()"
> -- Added
> - "mm/madvise: introduce MADV_POPULATE_(READ|WRITE) to prefault ..."
> -- Fix detection of memory holes when we have to re-lookup the VMA
> -- Return -EHWPOISON to user space when we hit HW poisoned pages
> -- Make variable names in definition and declaration consistent
> - "MAINTAINERS: add tools/testing/selftests/vm/ to MEMORY MANAGEMENT"
> -- Added
> - "selftests/vm: add protection_keys_32 / protection_keys_64 to gitignore"
> -- Added
> - "selftests/vm: add test for MADV_POPULATE_(READ|WRITE)"
> -- Added
>
> RFC -> RFCv2:
> - Fix re-locking (-> set "locked = 1;")
> - Don't mimic MAP_POPULATE semantics:
> --> Explicit READ/WRITE request instead of selecting it automatically,
> which makes it more generic and better suited for some use cases (e.g., we
> usually want to prefault shmem writable)
> --> Require proper access permissions
> - Introduce and use faultin_vma_page_range()
> --> Properly handle HWPOISON pages (FOLL_HWPOISON)
> --> Require proper access permissions (!FOLL_FORCE)
> - Let faultin_vma_page_range() check for compatible mappings/permissions
> - Extend patch description and add some performance numbers
>
> David Hildenbrand (5):
> mm: make variable names for populate_vma_page_range() consistent
> mm/madvise: introduce MADV_POPULATE_(READ|WRITE) to prefault/prealloc
> memory
> MAINTAINERS: add tools/testing/selftests/vm/ to MEMORY MANAGEMENT
> selftests/vm: add protection_keys_32 / protection_keys_64 to gitignore
> selftests/vm: add test for MADV_POPULATE_(READ|WRITE)
>
> MAINTAINERS | 1 +
> arch/alpha/include/uapi/asm/mman.h | 3 +
> arch/mips/include/uapi/asm/mman.h | 3 +
> arch/parisc/include/uapi/asm/mman.h | 3 +
> arch/xtensa/include/uapi/asm/mman.h | 3 +
> include/uapi/asm-generic/mman-common.h | 3 +
> mm/gup.c | 54 ++++
> mm/internal.h | 5 +-
> mm/madvise.c | 69 +++++
> tools/testing/selftests/vm/.gitignore | 3 +
> tools/testing/selftests/vm/Makefile | 1 +
> tools/testing/selftests/vm/madv_populate.c | 342 +++++++++++++++++++++
> tools/testing/selftests/vm/run_vmtests.sh | 16 +
> 13 files changed, 505 insertions(+), 1 deletion(-)
> create mode 100644 tools/testing/selftests/vm/madv_populate.c
>

Gentle ping.

--
Thanks,

David / dhildenb

\
 
 \ /
  Last update: 2021-03-30 10:59    [W:0.057 / U:0.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site