summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Morton <akpm@linux-foundation.org>2024-04-16 15:46:45 -0700
committerAndrew Morton <akpm@linux-foundation.org>2024-04-16 15:46:45 -0700
commit11a743235ddef7807167259e5fedc4871aa5e9b6 (patch)
tree5eda6152ae4af36820cb54a2c6d03d330089723b
parentca7be0e11bf78ddbc23899f6a8bedb29fd31d367 (diff)
download25-new-11a743235ddef7807167259e5fedc4871aa5e9b6.tar.gz
foo
-rw-r--r--patches/bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy-fix.patch2
-rw-r--r--patches/fix-missing-vmalloch-includes-fix-2.patch2
-rw-r--r--patches/fs-convert-alloc_inode_sb-to-a-macro.patch2
-rw-r--r--patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling-fix.patch6
-rw-r--r--patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling.patch6
-rw-r--r--patches/mm-arch-provide-pud_pfn-fallback.patch2
-rw-r--r--patches/mm-change-inlined-allocation-helpers-to-account-at-the-call-site.patch8
-rw-r--r--patches/mm-introduce-__gfp_no_obj_ext-flag-to-selectively-prevent-slabobj_ext-creation.patch6
-rw-r--r--patches/mm-switch-mm-get_unmapped_area-to-a-flag.patch2
-rw-r--r--patches/mmpage_owner-fix-accounting-of-pages-when-migrating.patch77
-rw-r--r--patches/mmpage_owner-fix-refcount-imbalance.patch234
-rw-r--r--patches/numa-early-use-of-cpu_to_node-returns-0-instead-of-the-correct-node-id.patch4
-rw-r--r--patches/old/fix-missing-vmalloch-includes-fix-3.patch (renamed from patches/fix-missing-vmalloch-includes-fix-3.patch)0
-rw-r--r--patches/old/fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch (renamed from patches/fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch)0
-rw-r--r--patches/old/maintainers-update-naoya-horiguchis-email-address.patch (renamed from patches/maintainers-update-naoya-horiguchis-email-address.patch)0
-rw-r--r--patches/old/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch (renamed from patches/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch)0
-rw-r--r--patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.patch (renamed from patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.patch)0
-rw-r--r--patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.patch (renamed from patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.patch)0
-rw-r--r--patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch (renamed from patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch)0
-rw-r--r--patches/old/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch (renamed from patches/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch)0
-rw-r--r--patches/old/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch (renamed from patches/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch)0
-rw-r--r--patches/old/mmpage_owner-defer-enablement-of-static-branch.patch (renamed from patches/mmpage_owner-defer-enablement-of-static-branch.patch)0
-rw-r--r--patches/old/mmpage_owner-fix-accounting-of-pages-when-migrating.patch7
-rw-r--r--patches/old/mmpage_owner-fix-printing-of-stack-records.patch (renamed from patches/mmpage_owner-fix-printing-of-stack-records.patch)0
-rw-r--r--patches/old/mmpage_owner-fix-refcount-imbalance.patch12
-rw-r--r--patches/old/mmpage_owner-update-metadata-for-tail-pages.patch (renamed from patches/mmpage_owner-update-metadata-for-tail-pages.patch)0
-rw-r--r--patches/old/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch (renamed from patches/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch)0
-rw-r--r--patches/old/nilfs2-fix-oob-in-nilfs_set_de_type.patch (renamed from patches/nilfs2-fix-oob-in-nilfs_set_de_type.patch)0
-rw-r--r--patches/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.patch (renamed from patches/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.patch)0
-rw-r--r--patches/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch (renamed from patches/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch)0
-rw-r--r--patches/old/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch (renamed from patches/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch)0
-rw-r--r--patches/treewide-use-initializer-for-struct-vm_unmapped_area_info.patch4
-rw-r--r--patches/x86-remove-unneeded-memblock_find_dma_reserve.patch2
-rw-r--r--pc/devel-series66
-rw-r--r--pc/fix-missing-vmalloch-includes-fix-3.pc1
-rw-r--r--pc/fork-defer-linking-file-vma-until-vma-is-fully-initialized.pc1
-rw-r--r--pc/maintainers-update-naoya-horiguchis-email-address.pc2
-rw-r--r--pc/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.pc3
-rw-r--r--pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.pc1
-rw-r--r--pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.pc1
-rw-r--r--pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.pc1
-rw-r--r--pc/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.pc2
-rw-r--r--pc/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.pc1
-rw-r--r--pc/mmpage_owner-defer-enablement-of-static-branch.pc1
-rw-r--r--pc/mmpage_owner-fix-accounting-of-pages-when-migrating.pc1
-rw-r--r--pc/mmpage_owner-fix-printing-of-stack-records.pc1
-rw-r--r--pc/mmpage_owner-fix-refcount-imbalance.pc2
-rw-r--r--pc/mmpage_owner-update-metadata-for-tail-pages.pc1
-rw-r--r--pc/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.pc1
-rw-r--r--pc/nilfs2-fix-oob-in-nilfs_set_de_type.pc1
-rw-r--r--pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.pc1
-rw-r--r--pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.pc1
-rw-r--r--pc/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.pc1
-rw-r--r--txt/mmpage_owner-fix-accounting-of-pages-when-migrating.txt29
-rw-r--r--txt/mmpage_owner-fix-refcount-imbalance.txt29
-rw-r--r--txt/old/fix-missing-vmalloch-includes-fix-3.txt (renamed from txt/fix-missing-vmalloch-includes-fix-3.txt)0
-rw-r--r--txt/old/fork-defer-linking-file-vma-until-vma-is-fully-initialized.txt (renamed from txt/fork-defer-linking-file-vma-until-vma-is-fully-initialized.txt)0
-rw-r--r--txt/old/maintainers-update-naoya-horiguchis-email-address.txt (renamed from txt/maintainers-update-naoya-horiguchis-email-address.txt)0
-rw-r--r--txt/old/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.txt (renamed from txt/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.txt)0
-rw-r--r--txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.txt (renamed from txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.txt)0
-rw-r--r--txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.txt (renamed from txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.txt)0
-rw-r--r--txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.txt (renamed from txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.txt)0
-rw-r--r--txt/old/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.txt (renamed from txt/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.txt)0
-rw-r--r--txt/old/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.txt (renamed from txt/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.txt)0
-rw-r--r--txt/old/mmpage_owner-defer-enablement-of-static-branch.txt (renamed from txt/mmpage_owner-defer-enablement-of-static-branch.txt)0
-rw-r--r--txt/old/mmpage_owner-fix-accounting-of-pages-when-migrating.txt7
-rw-r--r--txt/old/mmpage_owner-fix-printing-of-stack-records.txt (renamed from txt/mmpage_owner-fix-printing-of-stack-records.txt)0
-rw-r--r--txt/old/mmpage_owner-fix-refcount-imbalance.txt12
-rw-r--r--txt/old/mmpage_owner-update-metadata-for-tail-pages.txt (renamed from txt/mmpage_owner-update-metadata-for-tail-pages.txt)0
-rw-r--r--txt/old/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.txt (renamed from txt/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.txt)0
-rw-r--r--txt/old/nilfs2-fix-oob-in-nilfs_set_de_type.txt (renamed from txt/nilfs2-fix-oob-in-nilfs_set_de_type.txt)0
-rw-r--r--txt/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.txt (renamed from txt/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.txt)0
-rw-r--r--txt/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.txt (renamed from txt/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.txt)0
-rw-r--r--txt/old/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.txt (renamed from txt/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.txt)0
74 files changed, 74 insertions, 469 deletions
diff --git a/patches/bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy-fix.patch b/patches/bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy-fix.patch
index da3e51176..3f4f043de 100644
--- a/patches/bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy-fix.patch
+++ b/patches/bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy-fix.patch
@@ -15,7 +15,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
--- a/lib/bootconfig.c~bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy-fix
+++ a/lib/bootconfig.c
-@@ -901,7 +901,8 @@ static int __init xbc_parse_tree(void)
+@@ -898,7 +898,8 @@ static int __init xbc_parse_tree(void)
}
/**
diff --git a/patches/fix-missing-vmalloch-includes-fix-2.patch b/patches/fix-missing-vmalloch-includes-fix-2.patch
index 1fefbac6e..fb5cafce3 100644
--- a/patches/fix-missing-vmalloch-includes-fix-2.patch
+++ b/patches/fix-missing-vmalloch-includes-fix-2.patch
@@ -24,7 +24,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
#include <linux/memblock.h>
#include <linux/init.h>
+#include <linux/vmalloc.h>
+ #include <asm/pgtable_areas.h>
#include "numa_internal.h"
-
_
diff --git a/patches/fs-convert-alloc_inode_sb-to-a-macro.patch b/patches/fs-convert-alloc_inode_sb-to-a-macro.patch
index 690f5b8f3..39d83f277 100644
--- a/patches/fs-convert-alloc_inode_sb-to-a-macro.patch
+++ b/patches/fs-convert-alloc_inode_sb-to-a-macro.patch
@@ -34,7 +34,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
--- a/include/linux/fs.h~fs-convert-alloc_inode_sb-to-a-macro
+++ a/include/linux/fs.h
-@@ -3083,11 +3083,7 @@ int setattr_should_drop_sgid(struct mnt_
+@@ -3085,11 +3085,7 @@ int setattr_should_drop_sgid(struct mnt_
* This must be used for allocating filesystems specific inodes to set
* up the inode reclaim context correctly.
*/
diff --git a/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling-fix.patch b/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling-fix.patch
index bcc47b7b3..7a41d0354 100644
--- a/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling-fix.patch
+++ b/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling-fix.patch
@@ -22,7 +22,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
--- a/MAINTAINERS~maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling-fix
+++ a/MAINTAINERS
-@@ -5258,6 +5258,7 @@ CODE TAGGING
+@@ -5256,6 +5256,7 @@ CODE TAGGING
M: Suren Baghdasaryan <surenb@google.com>
M: Kent Overstreet <kent.overstreet@linux.dev>
S: Maintained
@@ -30,7 +30,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
F: include/linux/codetag.h
F: lib/codetag.c
-@@ -14167,10 +14168,10 @@ M: Suren Baghdasaryan <surenb@google.com
+@@ -14163,10 +14164,10 @@ M: Suren Baghdasaryan <surenb@google.com
M: Kent Overstreet <kent.overstreet@linux.dev>
L: linux-mm@kvack.org
S: Maintained
@@ -42,5 +42,5 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-F: lib/pgalloc_tag.c
MEMORY CONTROLLER DRIVERS
- M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+ M: Krzysztof Kozlowski <krzk@kernel.org>
_
diff --git a/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling.patch b/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling.patch
index bedeaa16c..0f195ecf8 100644
--- a/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling.patch
+++ b/patches/maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling.patch
@@ -32,7 +32,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
--- a/MAINTAINERS~maintainers-add-entries-for-code-tagging-and-memory-allocation-profiling
+++ a/MAINTAINERS
-@@ -5254,6 +5254,13 @@ S: Supported
+@@ -5252,6 +5252,13 @@ S: Supported
F: Documentation/process/code-of-conduct-interpretation.rst
F: Documentation/process/code-of-conduct.rst
@@ -46,7 +46,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
COMEDI DRIVERS
M: Ian Abbott <abbotti@mev.co.uk>
M: H Hartley Sweeten <hsweeten@visionengravers.com>
-@@ -14155,6 +14162,16 @@ F: mm/memblock.c
+@@ -14151,6 +14158,16 @@ F: mm/memblock.c
F: mm/mm_init.c
F: tools/testing/memblock/
@@ -61,6 +61,6 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+F: lib/pgalloc_tag.c
+
MEMORY CONTROLLER DRIVERS
- M: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+ M: Krzysztof Kozlowski <krzk@kernel.org>
L: linux-kernel@vger.kernel.org
_
diff --git a/patches/mm-arch-provide-pud_pfn-fallback.patch b/patches/mm-arch-provide-pud_pfn-fallback.patch
index bd973ec0d..241b4edf8 100644
--- a/patches/mm-arch-provide-pud_pfn-fallback.patch
+++ b/patches/mm-arch-provide-pud_pfn-fallback.patch
@@ -43,7 +43,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
--- a/arch/riscv/include/asm/pgtable.h~mm-arch-provide-pud_pfn-fallback
+++ a/arch/riscv/include/asm/pgtable.h
-@@ -642,6 +642,7 @@ static inline unsigned long pmd_pfn(pmd_
+@@ -648,6 +648,7 @@ static inline unsigned long pmd_pfn(pmd_
#define __pud_to_phys(pud) (__page_val_to_pfn(pud_val(pud)) << PAGE_SHIFT)
diff --git a/patches/mm-change-inlined-allocation-helpers-to-account-at-the-call-site.patch b/patches/mm-change-inlined-allocation-helpers-to-account-at-the-call-site.patch
index 42f934067..5e6407225 100644
--- a/patches/mm-change-inlined-allocation-helpers-to-account-at-the-call-site.patch
+++ b/patches/mm-change-inlined-allocation-helpers-to-account-at-the-call-site.patch
@@ -360,7 +360,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
* skcipher_request_free() - zeroize and free request data structure
--- a/include/linux/bpf.h~mm-change-inlined-allocation-helpers-to-account-at-the-call-site
+++ a/include/linux/bpf.h
-@@ -2230,31 +2230,14 @@ void *bpf_map_kvcalloc(struct bpf_map *m
+@@ -2244,31 +2244,14 @@ void *bpf_map_kvcalloc(struct bpf_map *m
void __percpu *bpf_map_alloc_percpu(const struct bpf_map *map, size_t size,
size_t align, gfp_t flags);
#else
@@ -760,7 +760,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
__realloc_size(3);
--- a/include/linux/sockptr.h~mm-change-inlined-allocation-helpers-to-account-at-the-call-site
+++ a/include/linux/sockptr.h
-@@ -92,9 +92,9 @@ static inline int copy_to_sockptr(sockpt
+@@ -117,9 +117,9 @@ static inline int copy_to_sockptr(sockpt
return copy_to_sockptr_offset(dst, 0, src, size);
}
@@ -772,7 +772,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
if (!p)
return ERR_PTR(-ENOMEM);
-@@ -104,10 +104,11 @@ static inline void *memdup_sockptr(sockp
+@@ -129,10 +129,11 @@ static inline void *memdup_sockptr(sockp
}
return p;
}
@@ -786,7 +786,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
if (!p)
return ERR_PTR(-ENOMEM);
-@@ -118,6 +119,7 @@ static inline void *memdup_sockptr_nul(s
+@@ -143,6 +144,7 @@ static inline void *memdup_sockptr_nul(s
p[len] = '\0';
return p;
}
diff --git a/patches/mm-introduce-__gfp_no_obj_ext-flag-to-selectively-prevent-slabobj_ext-creation.patch b/patches/mm-introduce-__gfp_no_obj_ext-flag-to-selectively-prevent-slabobj_ext-creation.patch
index cb4426226..a3016cbb5 100644
--- a/patches/mm-introduce-__gfp_no_obj_ext-flag-to-selectively-prevent-slabobj_ext-creation.patch
+++ b/patches/mm-introduce-__gfp_no_obj_ext-flag-to-selectively-prevent-slabobj_ext-creation.patch
@@ -34,7 +34,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
--- a/include/linux/gfp_types.h~mm-introduce-__gfp_no_obj_ext-flag-to-selectively-prevent-slabobj_ext-creation
+++ a/include/linux/gfp_types.h
-@@ -53,6 +53,9 @@ enum {
+@@ -55,6 +55,9 @@ enum {
#ifdef CONFIG_LOCKDEP
___GFP_NOLOCKDEP_BIT,
#endif
@@ -44,7 +44,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
___GFP_LAST_BIT
};
-@@ -93,6 +96,11 @@ enum {
+@@ -95,6 +98,11 @@ enum {
#else
#define ___GFP_NOLOCKDEP 0
#endif
@@ -56,7 +56,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
/*
* Physical address zone modifiers (see linux/mmzone.h - low four bits)
-@@ -133,12 +141,15 @@ enum {
+@@ -135,12 +143,15 @@ enum {
* node with no fallbacks or placement policy enforcements.
*
* %__GFP_ACCOUNT causes the allocation to be accounted to kmemcg.
diff --git a/patches/mm-switch-mm-get_unmapped_area-to-a-flag.patch b/patches/mm-switch-mm-get_unmapped_area-to-a-flag.patch
index 6af0b4b12..a9f40c015 100644
--- a/patches/mm-switch-mm-get_unmapped_area-to-a-flag.patch
+++ b/patches/mm-switch-mm-get_unmapped_area-to-a-flag.patch
@@ -343,7 +343,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
unsigned long len, unsigned long pgoff,
--- a/io_uring/io_uring.c~mm-switch-mm-get_unmapped_area-to-a-flag
+++ a/io_uring/io_uring.c
-@@ -3520,7 +3520,7 @@ static unsigned long io_uring_mmu_get_un
+@@ -3525,7 +3525,7 @@ static unsigned long io_uring_mmu_get_un
#else
addr = 0UL;
#endif
diff --git a/patches/mmpage_owner-fix-accounting-of-pages-when-migrating.patch b/patches/mmpage_owner-fix-accounting-of-pages-when-migrating.patch
deleted file mode 100644
index 8b1e7fb00..000000000
--- a/patches/mmpage_owner-fix-accounting-of-pages-when-migrating.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From: Oscar Salvador <osalvador@suse.de>
-Subject: mm,page_owner: fix accounting of pages when migrating
-Date: Thu, 4 Apr 2024 09:07:01 +0200
-
-Upon migration, new allocated pages are being given the handle of the old
-pages. This is problematic because it means that for the stack which
-allocated the old page, we will be substracting the old page + the new one
-when that page is freed, creating an accounting imbalance.
-
-There is an interest in keeping it that way, as otherwise the output will
-biased towards migration stacks should those operations occur often, but
-that is not really helpful.
-
-The link from the new page to the old stack is being performed by calling
-__update_page_owner_handle() in __folio_copy_owner(). The only thing that
-is left is to link the migrate stack to the old page, so the old page will
-be subtracted from the migrate stack, avoiding by doing so any possible
-imbalance.
-
-Link: https://lkml.kernel.org/r/20240404070702.2744-4-osalvador@suse.de
-Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
-Signed-off-by: Oscar Salvador <osalvador@suse.de>
-Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
-Cc: Alexander Potapenko <glider@google.com>
-Cc: Alexandre Ghiti <alexghiti@rivosinc.com>
-Cc: Andrey Konovalov <andreyknvl@gmail.com>
-Cc: Marco Elver <elver@google.com>
-Cc: Michal Hocko <mhocko@suse.com>
-Cc: Palmer Dabbelt <palmer@dabbelt.com>
-Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
----
-
- mm/page_owner.c | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
---- a/mm/page_owner.c~mmpage_owner-fix-accounting-of-pages-when-migrating
-+++ a/mm/page_owner.c
-@@ -366,9 +366,12 @@ void __split_page_owner(struct page *pag
-
- void __folio_copy_owner(struct folio *newfolio, struct folio *old)
- {
-+ int i;
- struct page_ext *old_ext;
- struct page_ext *new_ext;
- struct page_owner *old_page_owner;
-+ struct page_owner *new_page_owner;
-+ depot_stack_handle_t migrate_handle;
-
- old_ext = page_ext_get(&old->page);
- if (unlikely(!old_ext))
-@@ -381,6 +384,8 @@ void __folio_copy_owner(struct folio *ne
- }
-
- old_page_owner = get_page_owner(old_ext);
-+ new_page_owner = get_page_owner(new_ext);
-+ migrate_handle = new_page_owner->handle;
- __update_page_owner_handle(new_ext, old_page_owner->handle,
- old_page_owner->order, old_page_owner->gfp_mask,
- old_page_owner->last_migrate_reason,
-@@ -395,6 +400,16 @@ void __folio_copy_owner(struct folio *ne
- old_page_owner->free_pid,
- old_page_owner->free_tgid,
- old_page_owner->free_ts_nsec);
-+ /*
-+ * We linked the original stack to the new folio, we need to do the same
-+ * for the new one and the old folio otherwise there will be an imbalance
-+ * when subtracting those pages from the stack.
-+ */
-+ for (i = 0; i < (1 << new_page_owner->order); i++) {
-+ old_page_owner->handle = migrate_handle;
-+ old_ext = page_ext_next(old_ext);
-+ old_page_owner = get_page_owner(old_ext);
-+ }
-
- page_ext_put(new_ext);
- page_ext_put(old_ext);
-_
diff --git a/patches/mmpage_owner-fix-refcount-imbalance.patch b/patches/mmpage_owner-fix-refcount-imbalance.patch
deleted file mode 100644
index 9b33d6db7..000000000
--- a/patches/mmpage_owner-fix-refcount-imbalance.patch
+++ /dev/null
@@ -1,234 +0,0 @@
-From: Oscar Salvador <osalvador@suse.de>
-Subject: mm,page_owner: fix refcount imbalance
-Date: Thu, 4 Apr 2024 09:07:00 +0200
-
-Current code does not contemplate scenarios were an allocation and free
-operation on the same pages do not handle it in the same amount at once.
-To give an example, page_alloc_exact(), where we will allocate a page of
-enough order to stafisfy the size request, but we will free the remainings
-right away.
-
-In the above example, we will increment the stack_record refcount only
-once, but we will decrease it the same number of times as number of unused
-pages we have to free. This will lead to a warning because of refcount
-imbalance.
-
-Fix this by recording the number of base pages in the refcount field.
-
-Link: https://lkml.kernel.org/r/20240404070702.2744-3-osalvador@suse.de
-Reported-by: syzbot+41bbfdb8d41003d12c0f@syzkaller.appspotmail.com
-Closes: https://lore.kernel.org/linux-mm/00000000000090e8ff0613eda0e5@google.com
-Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
-Signed-off-by: Oscar Salvador <osalvador@suse.de>
-Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
-Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
-Cc: Alexander Potapenko <glider@google.com>
-Cc: Andrey Konovalov <andreyknvl@gmail.com>
-Cc: Marco Elver <elver@google.com>
-Cc: Michal Hocko <mhocko@suse.com>
-Cc: Palmer Dabbelt <palmer@dabbelt.com>
-Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
----
-
- Documentation/mm/page_owner.rst | 73 +++++++++++++++---------------
- mm/page_owner.c | 34 ++++++++-----
- 2 files changed, 58 insertions(+), 49 deletions(-)
-
---- a/Documentation/mm/page_owner.rst~mmpage_owner-fix-refcount-imbalance
-+++ a/Documentation/mm/page_owner.rst
-@@ -24,10 +24,10 @@ fragmentation statistics can be obtained
- each page. It is already implemented and activated if page owner is
- enabled. Other usages are more than welcome.
-
--It can also be used to show all the stacks and their outstanding
--allocations, which gives us a quick overview of where the memory is going
--without the need to screen through all the pages and match the allocation
--and free operation.
-+It can also be used to show all the stacks and their current number of
-+allocated base pages, which gives us a quick overview of where the memory
-+is going without the need to screen through all the pages and match the
-+allocation and free operation.
-
- page owner is disabled by default. So, if you'd like to use it, you need
- to add "page_owner=on" to your boot cmdline. If the kernel is built
-@@ -75,42 +75,45 @@ Usage
-
- cat /sys/kernel/debug/page_owner_stacks/show_stacks > stacks.txt
- cat stacks.txt
-- prep_new_page+0xa9/0x120
-- get_page_from_freelist+0x7e6/0x2140
-- __alloc_pages+0x18a/0x370
-- new_slab+0xc8/0x580
-- ___slab_alloc+0x1f2/0xaf0
-- __slab_alloc.isra.86+0x22/0x40
-- kmem_cache_alloc+0x31b/0x350
-- __khugepaged_enter+0x39/0x100
-- dup_mmap+0x1c7/0x5ce
-- copy_process+0x1afe/0x1c90
-- kernel_clone+0x9a/0x3c0
-- __do_sys_clone+0x66/0x90
-- do_syscall_64+0x7f/0x160
-- entry_SYSCALL_64_after_hwframe+0x6c/0x74
-- stack_count: 234
-+ post_alloc_hook+0x177/0x1a0
-+ get_page_from_freelist+0xd01/0xd80
-+ __alloc_pages+0x39e/0x7e0
-+ allocate_slab+0xbc/0x3f0
-+ ___slab_alloc+0x528/0x8a0
-+ kmem_cache_alloc+0x224/0x3b0
-+ sk_prot_alloc+0x58/0x1a0
-+ sk_alloc+0x32/0x4f0
-+ inet_create+0x427/0xb50
-+ __sock_create+0x2e4/0x650
-+ inet_ctl_sock_create+0x30/0x180
-+ igmp_net_init+0xc1/0x130
-+ ops_init+0x167/0x410
-+ setup_net+0x304/0xa60
-+ copy_net_ns+0x29b/0x4a0
-+ create_new_namespaces+0x4a1/0x820
-+ nr_base_pages: 16
- ...
- ...
- echo 7000 > /sys/kernel/debug/page_owner_stacks/count_threshold
- cat /sys/kernel/debug/page_owner_stacks/show_stacks> stacks_7000.txt
- cat stacks_7000.txt
-- prep_new_page+0xa9/0x120
-- get_page_from_freelist+0x7e6/0x2140
-- __alloc_pages+0x18a/0x370
-- alloc_pages_mpol+0xdf/0x1e0
-- folio_alloc+0x14/0x50
-- filemap_alloc_folio+0xb0/0x100
-- page_cache_ra_unbounded+0x97/0x180
-- filemap_fault+0x4b4/0x1200
-- __do_fault+0x2d/0x110
-- do_pte_missing+0x4b0/0xa30
-- __handle_mm_fault+0x7fa/0xb70
-- handle_mm_fault+0x125/0x300
-- do_user_addr_fault+0x3c9/0x840
-- exc_page_fault+0x68/0x150
-- asm_exc_page_fault+0x22/0x30
-- stack_count: 8248
-+ post_alloc_hook+0x177/0x1a0
-+ get_page_from_freelist+0xd01/0xd80
-+ __alloc_pages+0x39e/0x7e0
-+ alloc_pages_mpol+0x22e/0x490
-+ folio_alloc+0xd5/0x110
-+ filemap_alloc_folio+0x78/0x230
-+ page_cache_ra_order+0x287/0x6f0
-+ filemap_get_pages+0x517/0x1160
-+ filemap_read+0x304/0x9f0
-+ xfs_file_buffered_read+0xe6/0x1d0 [xfs]
-+ xfs_file_read_iter+0x1f0/0x380 [xfs]
-+ __kernel_read+0x3b9/0x730
-+ kernel_read_file+0x309/0x4d0
-+ __do_sys_finit_module+0x381/0x730
-+ do_syscall_64+0x8d/0x150
-+ entry_SYSCALL_64_after_hwframe+0x62/0x6a
-+ nr_base_pages: 20824
- ...
-
- cat /sys/kernel/debug/page_owner > page_owner_full.txt
---- a/mm/page_owner.c~mmpage_owner-fix-refcount-imbalance
-+++ a/mm/page_owner.c
-@@ -196,7 +196,8 @@ static void add_stack_record_to_list(str
- spin_unlock_irqrestore(&stack_list_lock, flags);
- }
-
--static void inc_stack_record_count(depot_stack_handle_t handle, gfp_t gfp_mask)
-+static void inc_stack_record_count(depot_stack_handle_t handle, gfp_t gfp_mask,
-+ int nr_base_pages)
- {
- struct stack_record *stack_record = __stack_depot_get_stack_record(handle);
-
-@@ -217,15 +218,20 @@ static void inc_stack_record_count(depot
- /* Add the new stack_record to our list */
- add_stack_record_to_list(stack_record, gfp_mask);
- }
-- refcount_inc(&stack_record->count);
-+ refcount_add(nr_base_pages, &stack_record->count);
- }
-
--static void dec_stack_record_count(depot_stack_handle_t handle)
-+static void dec_stack_record_count(depot_stack_handle_t handle,
-+ int nr_base_pages)
- {
- struct stack_record *stack_record = __stack_depot_get_stack_record(handle);
-
-- if (stack_record)
-- refcount_dec(&stack_record->count);
-+ if (!stack_record)
-+ return;
-+
-+ if (refcount_sub_and_test(nr_base_pages, &stack_record->count))
-+ pr_warn("%s: refcount went to 0 for %u handle\n", __func__,
-+ handle);
- }
-
- static inline void __update_page_owner_handle(struct page_ext *page_ext,
-@@ -306,7 +312,7 @@ void __reset_page_owner(struct page *pag
- * the machinery is not ready yet, we cannot decrement
- * their refcount either.
- */
-- dec_stack_record_count(alloc_handle);
-+ dec_stack_record_count(alloc_handle, 1 << order);
- }
-
- noinline void __set_page_owner(struct page *page, unsigned short order,
-@@ -325,7 +331,7 @@ noinline void __set_page_owner(struct pa
- current->pid, current->tgid, ts_nsec,
- current->comm);
- page_ext_put(page_ext);
-- inc_stack_record_count(handle, gfp_mask);
-+ inc_stack_record_count(handle, gfp_mask, 1 << order);
- }
-
- void __set_page_owner_migrate_reason(struct page *page, int reason)
-@@ -872,11 +878,11 @@ static void *stack_next(struct seq_file
- return stack;
- }
-
--static unsigned long page_owner_stack_threshold;
-+static unsigned long page_owner_pages_threshold;
-
- static int stack_print(struct seq_file *m, void *v)
- {
-- int i, stack_count;
-+ int i, nr_base_pages;
- struct stack *stack = v;
- unsigned long *entries;
- unsigned long nr_entries;
-@@ -887,14 +893,14 @@ static int stack_print(struct seq_file *
-
- nr_entries = stack_record->size;
- entries = stack_record->entries;
-- stack_count = refcount_read(&stack_record->count) - 1;
-+ nr_base_pages = refcount_read(&stack_record->count) - 1;
-
-- if (stack_count < 1 || stack_count < page_owner_stack_threshold)
-+ if (nr_base_pages < 1 || nr_base_pages < page_owner_pages_threshold)
- return 0;
-
- for (i = 0; i < nr_entries; i++)
- seq_printf(m, " %pS\n", (void *)entries[i]);
-- seq_printf(m, "stack_count: %d\n\n", stack_count);
-+ seq_printf(m, "nr_base_pages: %d\n\n", nr_base_pages);
-
- return 0;
- }
-@@ -924,13 +930,13 @@ static const struct file_operations page
-
- static int page_owner_threshold_get(void *data, u64 *val)
- {
-- *val = READ_ONCE(page_owner_stack_threshold);
-+ *val = READ_ONCE(page_owner_pages_threshold);
- return 0;
- }
-
- static int page_owner_threshold_set(void *data, u64 val)
- {
-- WRITE_ONCE(page_owner_stack_threshold, val);
-+ WRITE_ONCE(page_owner_pages_threshold, val);
- return 0;
- }
-
-_
diff --git a/patches/numa-early-use-of-cpu_to_node-returns-0-instead-of-the-correct-node-id.patch b/patches/numa-early-use-of-cpu_to_node-returns-0-instead-of-the-correct-node-id.patch
index 3195cb15a..a8b905615 100644
--- a/patches/numa-early-use-of-cpu_to_node-returns-0-instead-of-the-correct-node-id.patch
+++ b/patches/numa-early-use-of-cpu_to_node-returns-0-instead-of-the-correct-node-id.patch
@@ -54,7 +54,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
--- a/init/main.c~numa-early-use-of-cpu_to_node-returns-0-instead-of-the-correct-node-id
+++ a/init/main.c
-@@ -877,6 +877,19 @@ static void __init print_unknown_bootopt
+@@ -882,6 +882,19 @@ static void __init print_unknown_bootopt
memblock_free(unknown_options, len);
}
@@ -74,7 +74,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
asmlinkage __visible __init __no_sanitize_address __noreturn __no_stack_protector
void start_kernel(void)
{
-@@ -907,6 +920,7 @@ void start_kernel(void)
+@@ -912,6 +925,7 @@ void start_kernel(void)
setup_nr_cpu_ids();
setup_per_cpu_areas();
smp_prepare_boot_cpu(); /* arch-specific boot-cpu hooks */
diff --git a/patches/fix-missing-vmalloch-includes-fix-3.patch b/patches/old/fix-missing-vmalloch-includes-fix-3.patch
index 97ed0b2fd..97ed0b2fd 100644
--- a/patches/fix-missing-vmalloch-includes-fix-3.patch
+++ b/patches/old/fix-missing-vmalloch-includes-fix-3.patch
diff --git a/patches/fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch b/patches/old/fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch
index 1f066ba9d..1f066ba9d 100644
--- a/patches/fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch
+++ b/patches/old/fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch
diff --git a/patches/maintainers-update-naoya-horiguchis-email-address.patch b/patches/old/maintainers-update-naoya-horiguchis-email-address.patch
index 96b52325a..96b52325a 100644
--- a/patches/maintainers-update-naoya-horiguchis-email-address.patch
+++ b/patches/old/maintainers-update-naoya-horiguchis-email-address.patch
diff --git a/patches/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch b/patches/old/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch
index cd6f7e3cb..cd6f7e3cb 100644
--- a/patches/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch
+++ b/patches/old/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch
diff --git a/patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.patch b/patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.patch
index dbaca4e7b..dbaca4e7b 100644
--- a/patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.patch
+++ b/patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.patch
diff --git a/patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.patch b/patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.patch
index 144074684..144074684 100644
--- a/patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.patch
+++ b/patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.patch
diff --git a/patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch b/patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch
index 97acbe352..97acbe352 100644
--- a/patches/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch
+++ b/patches/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch
diff --git a/patches/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch b/patches/old/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch
index 2a8993405..2a8993405 100644
--- a/patches/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch
+++ b/patches/old/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch
diff --git a/patches/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch b/patches/old/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch
index 6b7c2858d..6b7c2858d 100644
--- a/patches/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch
+++ b/patches/old/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch
diff --git a/patches/mmpage_owner-defer-enablement-of-static-branch.patch b/patches/old/mmpage_owner-defer-enablement-of-static-branch.patch
index 9eba7bdcf..9eba7bdcf 100644
--- a/patches/mmpage_owner-defer-enablement-of-static-branch.patch
+++ b/patches/old/mmpage_owner-defer-enablement-of-static-branch.patch
diff --git a/patches/old/mmpage_owner-fix-accounting-of-pages-when-migrating.patch b/patches/old/mmpage_owner-fix-accounting-of-pages-when-migrating.patch
index dfa3ded70..8b1e7fb00 100644
--- a/patches/old/mmpage_owner-fix-accounting-of-pages-when-migrating.patch
+++ b/patches/old/mmpage_owner-fix-accounting-of-pages-when-migrating.patch
@@ -1,6 +1,6 @@
From: Oscar Salvador <osalvador@suse.de>
Subject: mm,page_owner: fix accounting of pages when migrating
-Date: Tue, 26 Mar 2024 07:30:36 +0100
+Date: Thu, 4 Apr 2024 09:07:01 +0200
Upon migration, new allocated pages are being given the handle of the old
pages. This is problematic because it means that for the stack which
@@ -17,15 +17,16 @@ is left is to link the migrate stack to the old page, so the old page will
be subtracted from the migrate stack, avoiding by doing so any possible
imbalance.
-Link: https://lkml.kernel.org/r/20240326063036.6242-4-osalvador@suse.de
+Link: https://lkml.kernel.org/r/20240404070702.2744-4-osalvador@suse.de
Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
Signed-off-by: Oscar Salvador <osalvador@suse.de>
-Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Alexander Potapenko <glider@google.com>
+Cc: Alexandre Ghiti <alexghiti@rivosinc.com>
Cc: Andrey Konovalov <andreyknvl@gmail.com>
Cc: Marco Elver <elver@google.com>
Cc: Michal Hocko <mhocko@suse.com>
+Cc: Palmer Dabbelt <palmer@dabbelt.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
diff --git a/patches/mmpage_owner-fix-printing-of-stack-records.patch b/patches/old/mmpage_owner-fix-printing-of-stack-records.patch
index 6f3a17498..6f3a17498 100644
--- a/patches/mmpage_owner-fix-printing-of-stack-records.patch
+++ b/patches/old/mmpage_owner-fix-printing-of-stack-records.patch
diff --git a/patches/old/mmpage_owner-fix-refcount-imbalance.patch b/patches/old/mmpage_owner-fix-refcount-imbalance.patch
index 6a4d22bcf..9b33d6db7 100644
--- a/patches/old/mmpage_owner-fix-refcount-imbalance.patch
+++ b/patches/old/mmpage_owner-fix-refcount-imbalance.patch
@@ -1,10 +1,9 @@
From: Oscar Salvador <osalvador@suse.de>
Subject: mm,page_owner: fix refcount imbalance
-Date: Tue, 26 Mar 2024 07:30:35 +0100
+Date: Thu, 4 Apr 2024 09:07:00 +0200
Current code does not contemplate scenarios were an allocation and free
-operation on the same pages do not handle it in the same amount at once.
-
+operation on the same pages do not handle it in the same amount at once.
To give an example, page_alloc_exact(), where we will allocate a page of
enough order to stafisfy the size request, but we will free the remainings
right away.
@@ -16,17 +15,18 @@ imbalance.
Fix this by recording the number of base pages in the refcount field.
-Link: https://lkml.kernel.org/r/20240326063036.6242-3-osalvador@suse.de
-Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
-Signed-off-by: Oscar Salvador <osalvador@suse.de>
+Link: https://lkml.kernel.org/r/20240404070702.2744-3-osalvador@suse.de
Reported-by: syzbot+41bbfdb8d41003d12c0f@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/linux-mm/00000000000090e8ff0613eda0e5@google.com
+Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
+Signed-off-by: Oscar Salvador <osalvador@suse.de>
Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Konovalov <andreyknvl@gmail.com>
Cc: Marco Elver <elver@google.com>
Cc: Michal Hocko <mhocko@suse.com>
+Cc: Palmer Dabbelt <palmer@dabbelt.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
diff --git a/patches/mmpage_owner-update-metadata-for-tail-pages.patch b/patches/old/mmpage_owner-update-metadata-for-tail-pages.patch
index 781c43ef6..781c43ef6 100644
--- a/patches/mmpage_owner-update-metadata-for-tail-pages.patch
+++ b/patches/old/mmpage_owner-update-metadata-for-tail-pages.patch
diff --git a/patches/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch b/patches/old/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch
index 0993847cf..0993847cf 100644
--- a/patches/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch
+++ b/patches/old/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch
diff --git a/patches/nilfs2-fix-oob-in-nilfs_set_de_type.patch b/patches/old/nilfs2-fix-oob-in-nilfs_set_de_type.patch
index f82c263ce..f82c263ce 100644
--- a/patches/nilfs2-fix-oob-in-nilfs_set_de_type.patch
+++ b/patches/old/nilfs2-fix-oob-in-nilfs_set_de_type.patch
diff --git a/patches/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.patch b/patches/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.patch
index 8efeb6a44..8efeb6a44 100644
--- a/patches/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.patch
+++ b/patches/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.patch
diff --git a/patches/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch b/patches/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch
index abbdbe7e4..abbdbe7e4 100644
--- a/patches/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch
+++ b/patches/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch
diff --git a/patches/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch b/patches/old/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch
index 7318f4ea8..7318f4ea8 100644
--- a/patches/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch
+++ b/patches/old/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch
diff --git a/patches/treewide-use-initializer-for-struct-vm_unmapped_area_info.patch b/patches/treewide-use-initializer-for-struct-vm_unmapped_area_info.patch
index dd1603e9d..44d7271f5 100644
--- a/patches/treewide-use-initializer-for-struct-vm_unmapped_area_info.patch
+++ b/patches/treewide-use-initializer-for-struct-vm_unmapped_area_info.patch
@@ -153,7 +153,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
* We only need to do colour alignment if either the I or D
--- a/arch/loongarch/mm/mmap.c~treewide-use-initializer-for-struct-vm_unmapped_area_info
+++ a/arch/loongarch/mm/mmap.c
-@@ -24,7 +24,7 @@ static unsigned long arch_get_unmapped_a
+@@ -25,7 +25,7 @@ static unsigned long arch_get_unmapped_a
struct vm_area_struct *vma;
unsigned long addr = addr0;
int do_color_align;
@@ -162,7 +162,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
if (unlikely(len > TASK_SIZE))
return -ENOMEM;
-@@ -82,7 +82,6 @@ static unsigned long arch_get_unmapped_a
+@@ -83,7 +83,6 @@ static unsigned long arch_get_unmapped_a
*/
}
diff --git a/patches/x86-remove-unneeded-memblock_find_dma_reserve.patch b/patches/x86-remove-unneeded-memblock_find_dma_reserve.patch
index 72c0674ff..428e0e932 100644
--- a/patches/x86-remove-unneeded-memblock_find_dma_reserve.patch
+++ b/patches/x86-remove-unneeded-memblock_find_dma_reserve.patch
@@ -67,7 +67,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
unsigned long end, pgprot_t prot);
--- a/arch/x86/kernel/setup.c~x86-remove-unneeded-memblock_find_dma_reserve
+++ a/arch/x86/kernel/setup.c
-@@ -1105,8 +1105,6 @@ void __init setup_arch(char **cmdline_p)
+@@ -1107,8 +1107,6 @@ void __init setup_arch(char **cmdline_p)
*/
arch_reserve_crashkernel();
diff --git a/pc/devel-series b/pc/devel-series
index 0b153dfa3..79b54871f 100644
--- a/pc/devel-series
+++ b/pc/devel-series
@@ -70,40 +70,35 @@ mm-hotfixes-stable.patch
###
###
#
-mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch
-#
-#
-#userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch: acks?
-userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch
-#
-mmpage_owner-update-metadata-for-tail-pages.patch
-mmpage_owner-fix-refcount-imbalance.patch
-mmpage_owner-fix-accounting-of-pages-when-migrating.patch
-mmpage_owner-fix-printing-of-stack-records.patch
-#
-mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch
-#
-mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch
-mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.patch
-mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.patch
-#
-mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch
-#
-squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch
-squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.patch
-#
-mmpage_owner-defer-enablement-of-static-branch.patch
-#
-mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch
-#
-fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch
-#
-#
-maintainers-update-naoya-horiguchis-email-address.patch
-#
-nilfs2-fix-oob-in-nilfs_set_de_type.patch
-#
-bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy.patch
+##mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.patch
+###
+##userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.patch
+###
+##mmpage_owner-update-metadata-for-tail-pages.patch
+##mmpage_owner-fix-refcount-imbalance.patch
+##mmpage_owner-fix-accounting-of-pages-when-migrating.patch
+##mmpage_owner-fix-printing-of-stack-records.patch
+###
+##mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.patch
+###
+##mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.patch
+###
+##mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.patch
+###
+##squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.patch
+###
+##mmpage_owner-defer-enablement-of-static-branch.patch
+###
+##mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.patch
+###
+##fork-defer-linking-file-vma-until-vma-is-fully-initialized.patch
+###
+###
+##maintainers-update-naoya-horiguchis-email-address.patch
+###
+##nilfs2-fix-oob-in-nilfs_set_de_type.patch
+###
+##bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy.patch
bootconfig-use-memblock_free_late-to-free-xbc-memory-to-buddy-fix.patch
#
selftests-harness-remove-use-of-line_max.patch
@@ -170,7 +165,6 @@ scripts-kernel-doc-drop-_noprof-on-function-prototypes.patch
fix-missing-vmalloch-includes.patch
fix-missing-vmalloch-includes-fix.patch
fix-missing-vmalloch-includes-fix-2.patch
-fix-missing-vmalloch-includes-fix-3.patch
fix-missing-vmalloch-includes-fix-4.patch
fix-missing-vmalloch-includes-fix-5.patch
fix-missing-vmalloch-includes-fix-6.patch
@@ -630,10 +624,12 @@ buffer-fix-__bread-and-__bread_gfp-kernel-doc.patch
buffer-add-kernel-doc-for-brelse-and-__brelse.patch
buffer-add-kernel-doc-for-bforget-and-__bforget.patch
buffer-improve-bdev_getblk-documentation.patch
+#doc-split-bufferrst-out-of-api-summaryrst.patch: https://lkml.kernel.org/r/5b1938bc-e675-4f1c-810b-dd91f6915f1d@infradead.org
doc-split-bufferrst-out-of-api-summaryrst.patch
#
mm-sparse-guard-the-size-of-mem_section-is-power-of-2.patch
#
+#mm-page_table_check-support-userfault-wr-protect-entries.patch: https://lkml.kernel.org/r/CA+CK2bCSs8om+7tO_Sq2fAUD+gzD_4unUXMtO9oRUB+=4biv-Q@mail.gmail.com
mm-page_table_check-support-userfault-wr-protect-entries.patch
#
#
diff --git a/pc/fix-missing-vmalloch-includes-fix-3.pc b/pc/fix-missing-vmalloch-includes-fix-3.pc
deleted file mode 100644
index ce610985f..000000000
--- a/pc/fix-missing-vmalloch-includes-fix-3.pc
+++ /dev/null
@@ -1 +0,0 @@
-arch/loongarch/include/asm/addrspace.h
diff --git a/pc/fork-defer-linking-file-vma-until-vma-is-fully-initialized.pc b/pc/fork-defer-linking-file-vma-until-vma-is-fully-initialized.pc
deleted file mode 100644
index 8c04222ff..000000000
--- a/pc/fork-defer-linking-file-vma-until-vma-is-fully-initialized.pc
+++ /dev/null
@@ -1 +0,0 @@
-kernel/fork.c
diff --git a/pc/maintainers-update-naoya-horiguchis-email-address.pc b/pc/maintainers-update-naoya-horiguchis-email-address.pc
deleted file mode 100644
index edc8c7f9d..000000000
--- a/pc/maintainers-update-naoya-horiguchis-email-address.pc
+++ /dev/null
@@ -1,2 +0,0 @@
-.mailmap
-MAINTAINERS
diff --git a/pc/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.pc b/pc/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.pc
deleted file mode 100644
index bbb0e8a42..000000000
--- a/pc/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.pc
+++ /dev/null
@@ -1,3 +0,0 @@
-mm/gup.c
-mm/internal.h
-mm/madvise.c
diff --git a/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.pc b/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.pc
deleted file mode 100644
index 709648673..000000000
--- a/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/memory-failure.c
diff --git a/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.pc b/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.pc
deleted file mode 100644
index 709648673..000000000
--- a/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/memory-failure.c
diff --git a/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.pc b/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.pc
deleted file mode 100644
index 709648673..000000000
--- a/pc/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/memory-failure.c
diff --git a/pc/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.pc b/pc/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.pc
deleted file mode 100644
index 99c735fac..000000000
--- a/pc/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.pc
+++ /dev/null
@@ -1,2 +0,0 @@
-include/linux/shmem_fs.h
-mm/shmem.c
diff --git a/pc/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.pc b/pc/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.pc
deleted file mode 100644
index 6dc98425d..000000000
--- a/pc/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/hugetlb.c
diff --git a/pc/mmpage_owner-defer-enablement-of-static-branch.pc b/pc/mmpage_owner-defer-enablement-of-static-branch.pc
deleted file mode 100644
index 89fe6a5de..000000000
--- a/pc/mmpage_owner-defer-enablement-of-static-branch.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/page_owner.c
diff --git a/pc/mmpage_owner-fix-accounting-of-pages-when-migrating.pc b/pc/mmpage_owner-fix-accounting-of-pages-when-migrating.pc
deleted file mode 100644
index 89fe6a5de..000000000
--- a/pc/mmpage_owner-fix-accounting-of-pages-when-migrating.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/page_owner.c
diff --git a/pc/mmpage_owner-fix-printing-of-stack-records.pc b/pc/mmpage_owner-fix-printing-of-stack-records.pc
deleted file mode 100644
index 89fe6a5de..000000000
--- a/pc/mmpage_owner-fix-printing-of-stack-records.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/page_owner.c
diff --git a/pc/mmpage_owner-fix-refcount-imbalance.pc b/pc/mmpage_owner-fix-refcount-imbalance.pc
deleted file mode 100644
index 5a9efe536..000000000
--- a/pc/mmpage_owner-fix-refcount-imbalance.pc
+++ /dev/null
@@ -1,2 +0,0 @@
-Documentation/mm/page_owner.rst
-mm/page_owner.c
diff --git a/pc/mmpage_owner-update-metadata-for-tail-pages.pc b/pc/mmpage_owner-update-metadata-for-tail-pages.pc
deleted file mode 100644
index 89fe6a5de..000000000
--- a/pc/mmpage_owner-update-metadata-for-tail-pages.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/page_owner.c
diff --git a/pc/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.pc b/pc/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.pc
deleted file mode 100644
index 7f662690b..000000000
--- a/pc/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.pc
+++ /dev/null
@@ -1 +0,0 @@
-include/linux/swapops.h
diff --git a/pc/nilfs2-fix-oob-in-nilfs_set_de_type.pc b/pc/nilfs2-fix-oob-in-nilfs_set_de_type.pc
deleted file mode 100644
index 3b1e7e424..000000000
--- a/pc/nilfs2-fix-oob-in-nilfs_set_de_type.pc
+++ /dev/null
@@ -1 +0,0 @@
-fs/nilfs2/dir.c
diff --git a/pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.pc b/pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.pc
deleted file mode 100644
index 6e351e663..000000000
--- a/pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.pc
+++ /dev/null
@@ -1 +0,0 @@
-fs/squashfs/inode.c
diff --git a/pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.pc b/pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.pc
deleted file mode 100644
index 6e351e663..000000000
--- a/pc/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.pc
+++ /dev/null
@@ -1 +0,0 @@
-fs/squashfs/inode.c
diff --git a/pc/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.pc b/pc/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.pc
deleted file mode 100644
index b35bccbe3..000000000
--- a/pc/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.pc
+++ /dev/null
@@ -1 +0,0 @@
-mm/huge_memory.c
diff --git a/txt/mmpage_owner-fix-accounting-of-pages-when-migrating.txt b/txt/mmpage_owner-fix-accounting-of-pages-when-migrating.txt
deleted file mode 100644
index 8835915b5..000000000
--- a/txt/mmpage_owner-fix-accounting-of-pages-when-migrating.txt
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Oscar Salvador <osalvador@suse.de>
-Subject: mm,page_owner: fix accounting of pages when migrating
-Date: Thu, 4 Apr 2024 09:07:01 +0200
-
-Upon migration, new allocated pages are being given the handle of the old
-pages. This is problematic because it means that for the stack which
-allocated the old page, we will be substracting the old page + the new one
-when that page is freed, creating an accounting imbalance.
-
-There is an interest in keeping it that way, as otherwise the output will
-biased towards migration stacks should those operations occur often, but
-that is not really helpful.
-
-The link from the new page to the old stack is being performed by calling
-__update_page_owner_handle() in __folio_copy_owner(). The only thing that
-is left is to link the migrate stack to the old page, so the old page will
-be subtracted from the migrate stack, avoiding by doing so any possible
-imbalance.
-
-Link: https://lkml.kernel.org/r/20240404070702.2744-4-osalvador@suse.de
-Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
-Signed-off-by: Oscar Salvador <osalvador@suse.de>
-Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
-Cc: Alexander Potapenko <glider@google.com>
-Cc: Alexandre Ghiti <alexghiti@rivosinc.com>
-Cc: Andrey Konovalov <andreyknvl@gmail.com>
-Cc: Marco Elver <elver@google.com>
-Cc: Michal Hocko <mhocko@suse.com>
-Cc: Palmer Dabbelt <palmer@dabbelt.com>
diff --git a/txt/mmpage_owner-fix-refcount-imbalance.txt b/txt/mmpage_owner-fix-refcount-imbalance.txt
deleted file mode 100644
index 1dc61a9f4..000000000
--- a/txt/mmpage_owner-fix-refcount-imbalance.txt
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Oscar Salvador <osalvador@suse.de>
-Subject: mm,page_owner: fix refcount imbalance
-Date: Thu, 4 Apr 2024 09:07:00 +0200
-
-Current code does not contemplate scenarios were an allocation and free
-operation on the same pages do not handle it in the same amount at once.
-To give an example, page_alloc_exact(), where we will allocate a page of
-enough order to stafisfy the size request, but we will free the remainings
-right away.
-
-In the above example, we will increment the stack_record refcount only
-once, but we will decrease it the same number of times as number of unused
-pages we have to free. This will lead to a warning because of refcount
-imbalance.
-
-Fix this by recording the number of base pages in the refcount field.
-
-Link: https://lkml.kernel.org/r/20240404070702.2744-3-osalvador@suse.de
-Reported-by: syzbot+41bbfdb8d41003d12c0f@syzkaller.appspotmail.com
-Closes: https://lore.kernel.org/linux-mm/00000000000090e8ff0613eda0e5@google.com
-Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
-Signed-off-by: Oscar Salvador <osalvador@suse.de>
-Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
-Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
-Cc: Alexander Potapenko <glider@google.com>
-Cc: Andrey Konovalov <andreyknvl@gmail.com>
-Cc: Marco Elver <elver@google.com>
-Cc: Michal Hocko <mhocko@suse.com>
-Cc: Palmer Dabbelt <palmer@dabbelt.com>
diff --git a/txt/fix-missing-vmalloch-includes-fix-3.txt b/txt/old/fix-missing-vmalloch-includes-fix-3.txt
index a5afdc485..a5afdc485 100644
--- a/txt/fix-missing-vmalloch-includes-fix-3.txt
+++ b/txt/old/fix-missing-vmalloch-includes-fix-3.txt
diff --git a/txt/fork-defer-linking-file-vma-until-vma-is-fully-initialized.txt b/txt/old/fork-defer-linking-file-vma-until-vma-is-fully-initialized.txt
index 1c32a277c..1c32a277c 100644
--- a/txt/fork-defer-linking-file-vma-until-vma-is-fully-initialized.txt
+++ b/txt/old/fork-defer-linking-file-vma-until-vma-is-fully-initialized.txt
diff --git a/txt/maintainers-update-naoya-horiguchis-email-address.txt b/txt/old/maintainers-update-naoya-horiguchis-email-address.txt
index 1afee040a..1afee040a 100644
--- a/txt/maintainers-update-naoya-horiguchis-email-address.txt
+++ b/txt/old/maintainers-update-naoya-horiguchis-email-address.txt
diff --git a/txt/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.txt b/txt/old/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.txt
index 2e7b1b7f0..2e7b1b7f0 100644
--- a/txt/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.txt
+++ b/txt/old/mm-madvise-make-madv_populate_readwrite-handle-vm_fault_retry-properly.txt
diff --git a/txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.txt b/txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.txt
index e5c69b8ad..e5c69b8ad 100644
--- a/txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.txt
+++ b/txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2-fix.txt
diff --git a/txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.txt b/txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.txt
index d976f58ee..d976f58ee 100644
--- a/txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.txt
+++ b/txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled-v2.txt
diff --git a/txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.txt b/txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.txt
index de10086d9..de10086d9 100644
--- a/txt/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.txt
+++ b/txt/old/mm-memory-failure-fix-deadlock-when-hugetlb_optimize_vmemmap-is-enabled.txt
diff --git a/txt/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.txt b/txt/old/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.txt
index d1a8ce0c7..d1a8ce0c7 100644
--- a/txt/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.txt
+++ b/txt/old/mm-shmem-inline-shmem_is_huge-for-disabled-transparent-hugepages.txt
diff --git a/txt/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.txt b/txt/old/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.txt
index 14cb38140..14cb38140 100644
--- a/txt/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.txt
+++ b/txt/old/mm-userfaultfd-allow-hugetlb-change-protection-upon-poison-entry.txt
diff --git a/txt/mmpage_owner-defer-enablement-of-static-branch.txt b/txt/old/mmpage_owner-defer-enablement-of-static-branch.txt
index b29b1a7cd..b29b1a7cd 100644
--- a/txt/mmpage_owner-defer-enablement-of-static-branch.txt
+++ b/txt/old/mmpage_owner-defer-enablement-of-static-branch.txt
diff --git a/txt/old/mmpage_owner-fix-accounting-of-pages-when-migrating.txt b/txt/old/mmpage_owner-fix-accounting-of-pages-when-migrating.txt
index a6478d7aa..8835915b5 100644
--- a/txt/old/mmpage_owner-fix-accounting-of-pages-when-migrating.txt
+++ b/txt/old/mmpage_owner-fix-accounting-of-pages-when-migrating.txt
@@ -1,6 +1,6 @@
From: Oscar Salvador <osalvador@suse.de>
Subject: mm,page_owner: fix accounting of pages when migrating
-Date: Tue, 26 Mar 2024 07:30:36 +0100
+Date: Thu, 4 Apr 2024 09:07:01 +0200
Upon migration, new allocated pages are being given the handle of the old
pages. This is problematic because it means that for the stack which
@@ -17,12 +17,13 @@ is left is to link the migrate stack to the old page, so the old page will
be subtracted from the migrate stack, avoiding by doing so any possible
imbalance.
-Link: https://lkml.kernel.org/r/20240326063036.6242-4-osalvador@suse.de
+Link: https://lkml.kernel.org/r/20240404070702.2744-4-osalvador@suse.de
Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
Signed-off-by: Oscar Salvador <osalvador@suse.de>
-Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Alexander Potapenko <glider@google.com>
+Cc: Alexandre Ghiti <alexghiti@rivosinc.com>
Cc: Andrey Konovalov <andreyknvl@gmail.com>
Cc: Marco Elver <elver@google.com>
Cc: Michal Hocko <mhocko@suse.com>
+Cc: Palmer Dabbelt <palmer@dabbelt.com>
diff --git a/txt/mmpage_owner-fix-printing-of-stack-records.txt b/txt/old/mmpage_owner-fix-printing-of-stack-records.txt
index a8d6ac927..a8d6ac927 100644
--- a/txt/mmpage_owner-fix-printing-of-stack-records.txt
+++ b/txt/old/mmpage_owner-fix-printing-of-stack-records.txt
diff --git a/txt/old/mmpage_owner-fix-refcount-imbalance.txt b/txt/old/mmpage_owner-fix-refcount-imbalance.txt
index 5f936cd8f..1dc61a9f4 100644
--- a/txt/old/mmpage_owner-fix-refcount-imbalance.txt
+++ b/txt/old/mmpage_owner-fix-refcount-imbalance.txt
@@ -1,10 +1,9 @@
From: Oscar Salvador <osalvador@suse.de>
Subject: mm,page_owner: fix refcount imbalance
-Date: Tue, 26 Mar 2024 07:30:35 +0100
+Date: Thu, 4 Apr 2024 09:07:00 +0200
Current code does not contemplate scenarios were an allocation and free
-operation on the same pages do not handle it in the same amount at once.
-
+operation on the same pages do not handle it in the same amount at once.
To give an example, page_alloc_exact(), where we will allocate a page of
enough order to stafisfy the size request, but we will free the remainings
right away.
@@ -16,14 +15,15 @@ imbalance.
Fix this by recording the number of base pages in the refcount field.
-Link: https://lkml.kernel.org/r/20240326063036.6242-3-osalvador@suse.de
-Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
-Signed-off-by: Oscar Salvador <osalvador@suse.de>
+Link: https://lkml.kernel.org/r/20240404070702.2744-3-osalvador@suse.de
Reported-by: syzbot+41bbfdb8d41003d12c0f@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/linux-mm/00000000000090e8ff0613eda0e5@google.com
+Fixes: 217b2119b9e2 ("mm,page_owner: implement the tracking of the stacks count")
+Signed-off-by: Oscar Salvador <osalvador@suse.de>
Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Konovalov <andreyknvl@gmail.com>
Cc: Marco Elver <elver@google.com>
Cc: Michal Hocko <mhocko@suse.com>
+Cc: Palmer Dabbelt <palmer@dabbelt.com>
diff --git a/txt/mmpage_owner-update-metadata-for-tail-pages.txt b/txt/old/mmpage_owner-update-metadata-for-tail-pages.txt
index 8430083cd..8430083cd 100644
--- a/txt/mmpage_owner-update-metadata-for-tail-pages.txt
+++ b/txt/old/mmpage_owner-update-metadata-for-tail-pages.txt
diff --git a/txt/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.txt b/txt/old/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.txt
index 9b407ad3b..9b407ad3b 100644
--- a/txt/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.txt
+++ b/txt/old/mmswapops-update-check-in-is_pfn_swap_entry-for-hwpoison-entries.txt
diff --git a/txt/nilfs2-fix-oob-in-nilfs_set_de_type.txt b/txt/old/nilfs2-fix-oob-in-nilfs_set_de_type.txt
index 5580a4f63..5580a4f63 100644
--- a/txt/nilfs2-fix-oob-in-nilfs_set_de_type.txt
+++ b/txt/old/nilfs2-fix-oob-in-nilfs_set_de_type.txt
diff --git a/txt/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.txt b/txt/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.txt
index c80492c5a..c80492c5a 100644
--- a/txt/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.txt
+++ b/txt/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero-v2.txt
diff --git a/txt/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.txt b/txt/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.txt
index 482f96b23..482f96b23 100644
--- a/txt/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.txt
+++ b/txt/old/squashfs-check-the-inode-number-is-not-the-invalid-value-of-zero.txt
diff --git a/txt/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.txt b/txt/old/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.txt
index 1991982d8..1991982d8 100644
--- a/txt/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.txt
+++ b/txt/old/userfaultfd-change-src_folio-after-ensuring-its-unpinned-in-uffdio_move.txt