All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH v13 mm-new 07/16] khugepaged: introduce collapse_max_ptes_none helper function
@ 2025-12-08 18:48 kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2025-12-08 18:48 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
In-Reply-To: <20251201174627.23295-8-npache@redhat.com>
References: <20251201174627.23295-8-npache@redhat.com>
TO: Nico Pache <npache@redhat.com>

Hi Nico,

kernel test robot noticed the following build warnings:

[auto build test WARNING on akpm-mm/mm-everything]
[also build test WARNING on linus/master next-20251208]
[cannot apply to v6.18]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Nico-Pache/khugepaged-rename-hpage_collapse_-to-collapse_/20251202-015150
base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link:    https://lore.kernel.org/r/20251201174627.23295-8-npache%40redhat.com
patch subject: [PATCH v13 mm-new 07/16] khugepaged: introduce collapse_max_ptes_none helper function
:::::: branch date: 7 days ago
:::::: commit date: 7 days ago
config: x86_64-randconfig-161-20251208 (https://download.01.org/0day-ci/archive/20251209/202512090239.PI28RhRo-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202512090239.PI28RhRo-lkp@intel.com/

smatch warnings:
mm/khugepaged.c:724 __collapse_huge_page_isolate() error: uninitialized symbol '_pte'.

vim +/_pte +724 mm/khugepaged.c

b46e756f5e4703 Kirill A. Shutemov    2016-07-26  580  
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  581  static int __collapse_huge_page_isolate(struct vm_area_struct *vma,
ffd26dcc465d32 Nico Pache            2025-12-01  582  		unsigned long start_addr, pte_t *pte, struct collapse_control *cc,
ffd26dcc465d32 Nico Pache            2025-12-01  583  		unsigned int order, struct list_head *compound_pagelist)
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  584  {
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  585  	struct page *page = NULL;
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  586) 	struct folio *folio = NULL;
1acc369373008b Wei Yang              2025-09-22  587  	unsigned long addr = start_addr;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  588  	pte_t *_pte;
50ad2f24b3b48c Zach O'Keefe          2022-07-06  589  	int none_or_zero = 0, shared = 0, result = SCAN_FAIL, referenced = 0;
ffd26dcc465d32 Nico Pache            2025-12-01  590  	const unsigned long nr_pages = 1UL << order;
04313aec37d2ac Nico Pache            2025-12-01  591  	int max_ptes_none = collapse_max_ptes_none(order, !cc->is_khugepaged);
04313aec37d2ac Nico Pache            2025-12-01  592  
04313aec37d2ac Nico Pache            2025-12-01  593  	if (max_ptes_none == -EINVAL)
04313aec37d2ac Nico Pache            2025-12-01  594  		goto out;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  595  
ffd26dcc465d32 Nico Pache            2025-12-01  596  	for (_pte = pte; _pte < pte + nr_pages;
1acc369373008b Wei Yang              2025-09-22  597  	     _pte++, addr += PAGE_SIZE) {
c33c794828f212 Ryan Roberts          2023-06-12  598  		pte_t pteval = ptep_get(_pte);
074f027d15c10c Lance Yang            2025-10-20  599  		if (pte_none_or_zero(pteval)) {
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  600  			++none_or_zero;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  601  			if (!userfaultfd_armed(vma) &&
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  602  			    (!cc->is_khugepaged ||
ffd26dcc465d32 Nico Pache            2025-12-01  603  			     none_or_zero <= max_ptes_none)) {
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  604  				continue;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  605  			} else {
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  606  				result = SCAN_EXCEED_NONE_PTE;
e9ea874a8ffb0f Yang Yang             2022-01-14  607  				count_vm_event(THP_SCAN_EXCEED_NONE_PTE);
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  608  				goto out;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  609  			}
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  610  		}
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  611  		if (!pte_present(pteval)) {
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  612  			result = SCAN_PTE_NON_PRESENT;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  613  			goto out;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  614  		}
dd47ac428c3f5f Peter Xu              2023-04-05  615  		if (pte_uffd_wp(pteval)) {
dd47ac428c3f5f Peter Xu              2023-04-05  616  			result = SCAN_PTE_UFFD_WP;
dd47ac428c3f5f Peter Xu              2023-04-05  617  			goto out;
dd47ac428c3f5f Peter Xu              2023-04-05  618  		}
1acc369373008b Wei Yang              2025-09-22  619  		page = vm_normal_page(vma, addr, pteval);
3218f8712d6bba Alex Sierra           2022-07-15  620  		if (unlikely(!page) || unlikely(is_zone_device_page(page))) {
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  621  			result = SCAN_PAGE_NULL;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  622  			goto out;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  623  		}
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  624  
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  625) 		folio = page_folio(page);
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  626) 		VM_BUG_ON_FOLIO(!folio_test_anon(folio), folio);
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  627  
3f7fc2c6e09310 Nico Pache            2025-12-01  628  		/* See collapse_scan_pmd(). */
003fde4492c88a David Hildenbrand     2025-03-03  629  		if (folio_maybe_mapped_shared(folio)) {
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  630  			++shared;
ffd26dcc465d32 Nico Pache            2025-12-01  631  			/*
ffd26dcc465d32 Nico Pache            2025-12-01  632  			 * TODO: Support shared pages without leading to further
ffd26dcc465d32 Nico Pache            2025-12-01  633  			 * mTHP collapses. Currently bringing in new pages via
ffd26dcc465d32 Nico Pache            2025-12-01  634  			 * shared may cause a future higher order collapse on a
ffd26dcc465d32 Nico Pache            2025-12-01  635  			 * rescan of the same range.
ffd26dcc465d32 Nico Pache            2025-12-01  636  			 */
ffd26dcc465d32 Nico Pache            2025-12-01  637  			if (is_mthp_order(order) || (cc->is_khugepaged &&
ffd26dcc465d32 Nico Pache            2025-12-01  638  			    shared > khugepaged_max_ptes_shared)) {
71a2c112a0f6da Kirill A. Shutemov    2020-06-03  639  				result = SCAN_EXCEED_SHARED_PTE;
e9ea874a8ffb0f Yang Yang             2022-01-14  640  				count_vm_event(THP_SCAN_EXCEED_SHARED_PTE);
71a2c112a0f6da Kirill A. Shutemov    2020-06-03  641  				goto out;
71a2c112a0f6da Kirill A. Shutemov    2020-06-03  642  			}
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  643  		}
71a2c112a0f6da Kirill A. Shutemov    2020-06-03  644  
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  645) 		if (folio_test_large(folio)) {
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  646) 			struct folio *f;
fece2029a9e65b Kirill A. Shutemov    2018-03-22  647  
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  648  			/*
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  649  			 * Check if we have dealt with the compound page
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  650  			 * already
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  651  			 */
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  652) 			list_for_each_entry(f, compound_pagelist, lru) {
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  653) 				if (folio == f)
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  654  					goto next;
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  655  			}
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  656  		}
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  657  
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  658  		/*
775d28fd45a2f5 Kefeng Wang           2024-08-26  659  		 * We can do it before folio_isolate_lru because the
775d28fd45a2f5 Kefeng Wang           2024-08-26  660  		 * folio can't be freed from under us. NOTE: PG_lock
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  661  		 * is needed to serialize against split_huge_page
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  662  		 * when invoked from the VM.
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  663  		 */
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  664) 		if (!folio_trylock(folio)) {
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  665  			result = SCAN_PAGE_LOCK;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  666  			goto out;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  667  		}
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  668  
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  669  		/*
9445689f3b6170 Kirill A. Shutemov    2020-06-03  670  		 * Check if the page has any GUP (or other external) pins.
9445689f3b6170 Kirill A. Shutemov    2020-06-03  671  		 *
9445689f3b6170 Kirill A. Shutemov    2020-06-03  672  		 * The page table that maps the page has been already unlinked
9445689f3b6170 Kirill A. Shutemov    2020-06-03  673  		 * from the page table tree and this process cannot get
f0953a1bbaca71 Ingo Molnar           2021-05-06  674  		 * an additional pin on the page.
9445689f3b6170 Kirill A. Shutemov    2020-06-03  675  		 *
9445689f3b6170 Kirill A. Shutemov    2020-06-03  676  		 * New pins can come later if the page is shared across fork,
9445689f3b6170 Kirill A. Shutemov    2020-06-03  677  		 * but not from this process. The other process cannot write to
9445689f3b6170 Kirill A. Shutemov    2020-06-03  678  		 * the page, only trigger CoW.
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  679  		 */
0b43b8bc8ef88b Shivank Garg          2025-05-26  680  		if (folio_expected_ref_count(folio) != folio_ref_count(folio)) {
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  681) 			folio_unlock(folio);
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  682  			result = SCAN_PAGE_COUNT;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  683  			goto out;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  684  		}
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  685  
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  686  		/*
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  687  		 * Isolate the page to avoid collapsing an hugepage
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  688  		 * currently in use by the VM.
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  689  		 */
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  690) 		if (!folio_isolate_lru(folio)) {
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  691) 			folio_unlock(folio);
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  692  			result = SCAN_DEL_PAGE_LRU;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  693  			goto out;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  694  		}
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  695) 		node_stat_mod_folio(folio,
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  696) 				NR_ISOLATED_ANON + folio_is_file_lru(folio),
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  697) 				folio_nr_pages(folio));
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  698) 		VM_BUG_ON_FOLIO(!folio_test_locked(folio), folio);
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  699) 		VM_BUG_ON_FOLIO(folio_test_lru(folio), folio);
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  700  
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  701) 		if (folio_test_large(folio))
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  702) 			list_add_tail(&folio->lru, compound_pagelist);
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03  703  next:
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  704  		/*
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  705  		 * If collapse was initiated by khugepaged, check that there is
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  706  		 * enough young pte to justify collapsing the page
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  707  		 */
d8ea7cc8547ca3 Zach O'Keefe          2022-07-06  708  		if (cc->is_khugepaged &&
8dd1e896735f6e Vishal Moola (Oracle  2023-10-20  709) 		    (pte_young(pteval) || folio_test_young(folio) ||
1acc369373008b Wei Yang              2025-09-22  710  		     folio_test_referenced(folio) ||
1acc369373008b Wei Yang              2025-09-22  711  		     mmu_notifier_test_young(vma->vm_mm, addr)))
0db501f7a34c11 Ebru Akagunduz        2016-07-26  712  			referenced++;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  713  	}
74e579bf231a33 Miaohe Lin            2021-05-04  714  
62b98015d98815 Dev Jain              2025-09-08  715  	if (unlikely(cc->is_khugepaged && !referenced)) {
74e579bf231a33 Miaohe Lin            2021-05-04  716  		result = SCAN_LACK_REFERENCED_PAGE;
74e579bf231a33 Miaohe Lin            2021-05-04  717  	} else {
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  718  		result = SCAN_SUCCEED;
50dbe531291abf Fan Ni                2025-04-24  719  		trace_mm_collapse_huge_page_isolate(folio, none_or_zero,
473b73222f3d8c Dev Jain              2025-09-08  720  						    referenced, result);
50ad2f24b3b48c Zach O'Keefe          2022-07-06  721  		return result;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  722  	}
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  723  out:
5503fbf2b0b80c Kirill A. Shutemov    2020-06-03 @724  	release_pte_pages(pte, _pte, compound_pagelist);
50dbe531291abf Fan Ni                2025-04-24  725  	trace_mm_collapse_huge_page_isolate(folio, none_or_zero,
473b73222f3d8c Dev Jain              2025-09-08  726  					    referenced, result);
50ad2f24b3b48c Zach O'Keefe          2022-07-06  727  	return result;
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  728  }
b46e756f5e4703 Kirill A. Shutemov    2016-07-26  729  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 8+ messages in thread
* [PATCH v13 mm-new 00/16] khugepaged: mTHP support
@ 2025-12-01 17:46 Nico Pache
  2025-12-01 17:46 ` [PATCH v13 mm-new 07/16] khugepaged: introduce collapse_max_ptes_none helper function Nico Pache
  0 siblings, 1 reply; 8+ messages in thread
From: Nico Pache @ 2025-12-01 17:46 UTC (permalink / raw)
  To: linux-kernel, linux-trace-kernel, linux-mm, linux-doc
  Cc: david, ziy, baolin.wang, lorenzo.stoakes, Liam.Howlett,
	ryan.roberts, dev.jain, corbet, rostedt, mhiramat,
	mathieu.desnoyers, akpm, baohua, willy, peterx, wangkefeng.wang,
	usamaarif642, sunnanyong, vishal.moola, thomas.hellstrom, yang,
	kas, aarcange, raquini, anshuman.khandual, catalin.marinas, tiwai,
	will, dave.hansen, jack, cl, jglisse, surenb, zokeefe, hannes,
	rientjes, mhocko, rdunlap, hughd, richard.weiyang, lance.yang,
	vbabka, rppt, jannh, pfalcato

The following series provides khugepaged with the capability to collapse
anonymous memory regions to mTHPs.

To achieve this we generalize the khugepaged functions to no longer depend
on PMD_ORDER. Then during the PMD scan, we use a bitmap to track individual
pages that are occupied (!none/zero). After the PMD scan is done, we use
the bitmap to find the optimal mTHP sizes for the PMD range. The
restriction on max_ptes_none is removed during the scan, to make sure we
account for the whole PMD range in the bitmap. When no mTHP size is
enabled, the legacy behavior of khugepaged is maintained.

We currently only support max_ptes_none values of 0 or HPAGE_PMD_NR - 1
(ie 511). If any other value is specified, the kernel will emit a warning
and no mTHP collapse will be attempted. If a mTHP collapse is attempted,
but contains swapped out, or shared pages, we don't perform the collapse.
It is now also possible to collapse to mTHPs without requiring the PMD THP
size to be enabled. These limitiations are to prevent collapse "creep"
behavior. This prevents constantly promoting mTHPs to the next available
size, which would occur because a collapse introduces more non-zero pages
that would satisfy the promotion condition on subsequent scans.

Patch 1:     Refactor/rename hpage_collapse
Patch 2:     Refactoring to combine madvise_collapse and khugepaged
Patch 3-8:   Generalize khugepaged functions for arbitrary orders and
	     introduce some helper functions
Patch 9:     skip collapsing mTHP to smaller orders
Patch 10-11: Add per-order mTHP statistics and tracepoints
Patch 12:    Introduce collapse_allowable_orders
Patch 13-15: Introduce bitmap and mTHP collapse support, fully enabled
Patch 16:    Documentation

---------
 Testing
---------
- Built for x86_64, aarch64, ppc64le, and s390x
- selftests mm
- I created a test script that I used to push khugepaged to its limits
   while monitoring a number of stats and tracepoints. The code is
   available here[1] (Run in legacy mode for these changes and set mthp
   sizes to inherit)
   The summary from my testings was that there was no significant
   regression noticed through this test. In some cases my changes had
   better collapse latencies, and was able to scan more pages in the same
   amount of time/work, but for the most part the results were consistent.
- redis testing. I tested these changes along with my defer changes
  (see followup [2] post for more details). We've decided to get the mTHP
  changes merged first before attempting the defer series.
- some basic testing on 64k page size.
- lots of general use.

V13 Changes:
- Lots of minor nits, cleanups, comments, and renames
- Bitmap function simplification and more helpers (Wei, Lorenzo)
- Max_ptes_none (0 or 511) restriction
- commit description expansion
- list all reachable enum values in mthp_collapse()
- Fix ppc64 compile error due to using HPAGE_PMD_ORDER (replace with
  ilog2(MAX_PTRS_PER_PTE))

V12: https://lore.kernel.org/lkml/20251022183717.70829-1-npache@redhat.com/
V11: https://lore.kernel.org/lkml/20250912032810.197475-1-npache@redhat.com/
V10: https://lore.kernel.org/lkml/20250819134205.622806-1-npache@redhat.com/
V9 : https://lore.kernel.org/lkml/20250714003207.113275-1-npache@redhat.com/
V8 : https://lore.kernel.org/lkml/20250702055742.102808-1-npache@redhat.com/
V7 : https://lore.kernel.org/lkml/20250515032226.128900-1-npache@redhat.com/
V6 : https://lore.kernel.org/lkml/20250515030312.125567-1-npache@redhat.com/
V5 : https://lore.kernel.org/lkml/20250428181218.85925-1-npache@redhat.com/
V4 : https://lore.kernel.org/lkml/20250417000238.74567-1-npache@redhat.com/
V3 : https://lore.kernel.org/lkml/20250414220557.35388-1-npache@redhat.com/
V2 : https://lore.kernel.org/lkml/20250211003028.213461-1-npache@redhat.com/
V1 : https://lore.kernel.org/lkml/20250108233128.14484-1-npache@redhat.com/

A big thanks to everyone that has reviewed, tested, and participated in
the development process. Its been a great experience working with all of
you on this endeavour.

[1] - https://gitlab.com/npache/khugepaged_mthp_test
[2] - https://lore.kernel.org/lkml/20250515033857.132535-1-npache@redhat.com/

Baolin Wang (1):
  khugepaged: run khugepaged for all orders

Dev Jain (1):
  khugepaged: generalize alloc_charge_folio()

Nico Pache (14):
  khugepaged: rename hpage_collapse_* to collapse_*
  introduce collapse_single_pmd to unify khugepaged and madvise_collapse
  khugepaged: generalize hugepage_vma_revalidate for mTHP support
  khugepaged: introduce is_mthp_order helper
  khugepaged: generalize __collapse_huge_page_* for mTHP support
  khugepaged: introduce collapse_max_ptes_none helper function
  khugepaged: generalize collapse_huge_page for mTHP collapse
  khugepaged: skip collapsing mTHP to smaller orders
  khugepaged: add per-order mTHP collapse failure statistics
  khugepaged: improve tracepoints for mTHP orders
  khugepaged: introduce collapse_allowable_orders helper function
  khugepaged: Introduce mTHP collapse support
  khugepaged: avoid unnecessary mTHP collapse attempts
  Documentation: mm: update the admin guide for mTHP collapse

 Documentation/admin-guide/mm/transhuge.rst |  80 ++-
 include/linux/huge_mm.h                    |   5 +
 include/trace/events/huge_memory.h         |  34 +-
 mm/huge_memory.c                           |  11 +
 mm/khugepaged.c                            | 696 +++++++++++++++------
 mm/mremap.c                                |   2 +-
 6 files changed, 618 insertions(+), 210 deletions(-)

-- 
2.51.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-12-17  1:34 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-08 18:48 [PATCH v13 mm-new 07/16] khugepaged: introduce collapse_max_ptes_none helper function kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2025-12-01 17:46 [PATCH v13 mm-new 00/16] khugepaged: mTHP support Nico Pache
2025-12-01 17:46 ` [PATCH v13 mm-new 07/16] khugepaged: introduce collapse_max_ptes_none helper function Nico Pache
2025-12-02  7:53   ` Baolin Wang
2025-12-03 13:40   ` kernel test robot
2025-12-03 21:02   ` Nico Pache
2025-12-16  8:12   ` Baolin Wang
2025-12-16 23:26     ` Nico Pache
2025-12-17  1:33       ` Baolin Wang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.