Skip to content

MADV_FREE support

Minchan Kim linux-api linux-arm-kernel linux-mm linuxppc-dev lkml sparclinux 17 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v17 Latest7 patches 25 repliesIn review
  2. v167 patches 4 repliesSuperseded
  3. v157 patches 2 repliesSuperseded
Earlier versions · 14
VersionPostedPatchesRepliesStatus
v148 patches5 repliesSuperseded
v138 patches4 repliesSuperseded
v128 patches5 repliesSuperseded
v117 patches6 repliesSuperseded
v107 patches13 repliesSuperseded
v91 patch8 repliesSuperseded
v81 patch0 repliesSuperseded
v71 patch1 replySuperseded
v61 patch5 repliesSuperseded
v51 patch6 repliesSuperseded
v41 patch1 replySuperseded
v31 patch2 repliesSuperseded
v2 RFC3 patches0 repliesSuperseded
v1 RFC6 patches12 repliesSuperseded

Patches in v17 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/7mm: support madvise(MADV_FREE)include/linux/rmap.h include/linux/vm_event_item.h include/uapi/asm-generic/mman-common.h +4 more+222 -1221 replies
2/7x86: add pmd_[dirty|mkclean] for THParch/x86/include/asm/pgtable.h+10 -00 replies
3/7sparc: add pmd_[dirty|mkclean] for THParch/sparc/include/asm/pgtable_64.h+16 -00 replies
4/7powerpc: add pmd_[dirty|mkclean] for THParch/powerpc/include/asm/pgtable-ppc64.h+2 -00 replies
5/7arm: add pmd_mkclean for THParch/arm/include/asm/pgtable-3level.h+1 -00 replies
6/7arm64: add pmd_[dirty|mkclean] for THParch/arm64/include/asm/pgtable.h+2 -00 replies
7/7mm: Don't split THP page when syscall is calledinclude/linux/huge_mm.h mm/huge_memory.c mm/madvise.c +2 more+83 -132 replies

Reviews trailers per patch

All 7 patches have a Reviewed-by or Acked-by.

PatchRik van RielZhang YanfeiKirill A. ShutemovDavid S. MillerWill DeaconSteve CapperCatalin MarinasAneesh Kumar K.VMichal Hocko
1/7A-b A-b A-b R-b R-b
2/7A-b A-b A-b
3/7A-b
4/7R-b
5/7A-b A-b
6/7A-b A-b A-b
7/7A-b A-b R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 9 reviewers.

Read the v17 thread

Cover letter [PATCH v17 0/7] MADV_FREE support

This patch enable MADV_FREE hint for madvise syscall, which have been supported by other OSes. [PATCH 1] includes the details.

[1] support MADVISE_FREE for !THP page so if VM encounter THP page in syscall context, it splits THP page.
[2-6] is to preparing to call madvise syscall without THP plitting
[7] enable THP page support for MADV_FREE.

* from v16
* Rebased on mmotm-2014-10-15-16-57

* from v15
* Add more Acked-by - Rik van Riel
* Rebased on mmotom-08-29-15-15

* from v14
* Add more Ackedy-by from arch people(sparc, arm64 and arm)
* Drop s390 since pmd_dirty/clean was merged

* from v13
* Add more Ackedy-by from arch people(arm, arm64 and ppc)
* Rebased on mmotm 2014-08-13-14-29

* from v12
* Fix - skip to mark free pte on try_to_free_swap failed page - Kirill
* Add more Acked-by from arch maintainers and Kirill

* From v11
* Fix arm build - Steve
* Separate patch for arm and arm64 - Steve
* Remove unnecessary check - Kirill
* Skip non-vm_normal page - Kirill
* Add Acked-by - Zhang
* Sparc64 build fix
* Pagetable walker THP handling fix

* From v10
* Add Acked-by from arch stuff(x86, s390)
* Pagewalker based pagetable working - Kirill
* Fix try_to_unmap_one broken with hwpoison - Kirill
* Use VM_BUG_ON_PAGE in madvise_free_pmd - Kirill
* Fix pgtable-3level.h for arm - Steve

* From v9
* Add Acked-by - Rik
* Add THP page support - Kirill

* From v8
* Rebased-on v3.16-rc2-mmotm-2014-06-25-16-44

* From v7
* Rebased-on next-20140613

* From v6
* Remove page from swapcache in syscal time
* Move utility functions from memory.c to madvise.c - Johannes
* Rename untilify functtions - Johannes
* Remove unnecessary checks from vmscan.c - Johannes
* Rebased-on v3.15-rc5-mmotm-2014-05-16-16-56
* Drop Reviewe-by because there was some changes since then.

* From v5
* Fix PPC problem which don't flush TLB - Rik
* Remove unnecessary lazyfree_range stub function - Rik
* Rebased on v3.15-rc5

* From v4
* Add Reviewed-by: Zhang Yanfei
* Rebase on v3.15-rc1-mmotm-2014-04-15-16-14

* From v3
* Add "how to work part" in description - Zhang
* Add page_discardable utility function - Zhang
* Clean up

* From v2
* Remove forceful dirty marking of swap-readed page - Johannes
* Remove deactivation logic of lazyfreed page
* Rebased on 3.14
* Remove RFC tag

* From v1
* Use custom page table walker for madvise_free - Johannes
* Remove PG_lazypage flag - Johannes
* Do madvise_dontneed instead of madvise_freein swapless system

Minchan Kim (7):
mm: support madvise(MADV_FREE)
x86: add pmd_[dirty|mkclean] for THP
sparc: add pmd_[dirty|mkclean] for THP
powerpc: add pmd_[dirty|mkclean] for THP
arm: add pmd_mkclean for THP
arm64: add pmd_[dirty|mkclean] for THP
mm: Don't split THP page when syscall is called

 arch/arm/include/asm/pgtable-3level.h    |   1 +
 arch/arm64/include/asm/pgtable.h         |   2 +
 arch/powerpc/include/asm/pgtable-ppc64.h |   2 +
 arch/sparc/include/asm/pgtable_64.h      |  16 ++++
 arch/x86/include/asm/pgtable.h           |  10 ++
 include/linux/huge_mm.h                  |   4 +
 include/linux/rmap.h                     |   9 +-
 include/linux/vm_event_item.h            |   1 +
 include/uapi/asm-generic/mman-common.h   |   1 +
 mm/huge_memory.c                         |  35 +++++++
 mm/madvise.c                             | 159 +++++++++++++++++++++++++++++++
 mm/rmap.c                                |  46 ++++++++-
 mm/vmscan.c                              |  64 +++++++++----
 mm/vmstat.c                              |   1 +
 14 files changed, 331 insertions(+), 20 deletions(-)
Signature · 7 lines
2.0.0

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to [email protected].  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>