linux-stable/mm
Miaohe Lin 3a38bc2f47 mm: memory-failure: avoid false hwpoison page mapped error info
commit faeb2ff2c1 upstream.

folio->_mapcount is overloaded in SLAB, so folio_mapped() has to be done
after folio_test_slab() is checked. Otherwise slab folio might be treated
as a mapped folio leading to false 'Someone maps the hwpoison page' error
info.

Link: https://lkml.kernel.org/r/20230727115643.639741-4-linmiaohe@huawei.com
Fixes: 230ac719c5 ("mm/hwpoison: don't try to unpoison containment-failed pages")
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com>
Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-16 18:32:20 +02:00
..
damon mm/damon/core: initialize damo_filter->list from damos_new_filter() 2023-08-16 18:32:20 +02:00
kasan kasan,kmsan: remove __GFP_KSWAPD_RECLAIM usage from kasan/kmsan 2023-08-11 12:14:24 +02:00
kfence mm: kfence: fix false positives on big endian 2023-05-17 15:24:33 -07:00
kmsan kasan,kmsan: remove __GFP_KSWAPD_RECLAIM usage from kasan/kmsan 2023-08-11 12:14:24 +02:00
Kconfig mm: introduce new 'lock_mm_and_find_vma()' page fault helper 2023-07-01 13:12:38 +02:00
Kconfig.debug mm: page_table_check: Make it dependent on EXCLUSIVE_SYSTEM_RAM 2023-05-29 16:14:28 +01:00
Makefile
backing-dev.c
balloon_compaction.c
bootmem_info.c
cma.c
cma.h
cma_debug.c
cma_sysfs.c
compaction.c
debug.c
debug_page_ref.c
debug_vm_pgtable.c
dmapool.c dmapool: link blocks across pages 2023-05-06 10:33:38 -07:00
dmapool_test.c
early_ioremap.c
fadvise.c
failslab.c
filemap.c Revert "page cache: fix page_cache_next/prev_miss off by one" 2023-08-11 12:14:23 +02:00
folio-compat.c
frontswap.c
gup.c mm/gup: do not return 0 from pin_user_pages_fast() for bad args 2023-08-11 12:14:25 +02:00
gup_test.c mm/gup_test: fix ioctl fail for compat task 2023-06-12 11:31:51 -07:00
gup_test.h
highmem.c
hmm.c
huge_memory.c
hugetlb.c hugetlb: do not clear hugetlb dtor until allocating vmemmap 2023-08-16 18:32:20 +02:00
hugetlb_cgroup.c
hugetlb_vmemmap.c
hugetlb_vmemmap.h
hwpoison-inject.c
init-mm.c
internal.h
interval_tree.c
io-mapping.c
ioremap.c
khugepaged.c mm/khugepaged: fix regression in collapse_file() 2023-07-01 13:12:40 +02:00
kmemleak.c
ksm.c mm/ksm: move disabling KSM from s390/gmap code to KSM code 2023-05-02 17:21:50 -07:00
list_lru.c
maccess.c
madvise.c
mapping_dirty_helpers.c
memblock.c
memcontrol.c mm: kmem: fix a NULL pointer dereference in obj_stock_flush_required() 2023-08-11 12:14:24 +02:00
memfd.c memfd: check for non-NULL file_seals in memfd_create() syscall 2023-06-19 13:19:31 -07:00
memory-failure.c mm: memory-failure: avoid false hwpoison page mapped error info 2023-08-16 18:32:20 +02:00
memory-tiers.c
memory.c mm: lock_vma_under_rcu() must check vma->anon_vma under vma lock 2023-08-11 12:14:05 +02:00
memory_hotplug.c
mempolicy.c mm/mempolicy: Take VMA lock before replacing policy 2023-08-03 10:26:14 +02:00
mempool.c
memremap.c
memtest.c
migrate.c
migrate_device.c
mincore.c
mlock.c mm/mlock: fix vma iterator conversion of apply_vma_lock_flags() 2023-07-27 08:56:32 +02:00
mm_init.c
mm_slot.h
mmap.c mm: lock VMA in dup_anon_vma() before setting ->anon_vma 2023-08-03 10:26:14 +02:00
mmap_lock.c
mmu_gather.c
mmu_notifier.c
mmzone.c
mprotect.c mm/mprotect: fix do_mprotect_pkey() limit check 2023-06-19 13:19:31 -07:00
mremap.c
msync.c
nommu.c xtensa: fix lock_mm_and_find_vma in case VMA not found 2023-07-05 18:30:30 +01:00
oom_kill.c
page-writeback.c writeback: account the number of pages written back 2023-07-19 16:36:50 +02:00
page_alloc.c - Some DAMON cleanups from Kefeng Wang 2023-05-04 13:09:43 -07:00
page_counter.c
page_ext.c
page_idle.c
page_io.c
page_isolation.c
page_owner.c
page_poison.c
page_reporting.c
page_reporting.h
page_table_check.c mm: page_table_check: Ensure user pages are not slab pages 2023-05-29 16:14:28 +01:00
page_vma_mapped.c
pagewalk.c
percpu-internal.h
percpu-km.c
percpu-stats.c
percpu-vm.c
percpu.c
pgalloc-track.h
pgtable-generic.c
process_vm_access.c
ptdump.c
readahead.c
rmap.c
rodata_test.c
secretmem.c
shmem.c shmem: use ramfs_kill_sb() for kill_sb method of ramfs-based tmpfs 2023-07-19 16:36:54 +02:00
shrinker_debug.c Revert "mm: shrinkers: make count and scan in shrinker debugfs lockless" 2023-06-19 13:19:34 -07:00
shuffle.c
shuffle.h
slab.c
slab.h kasan, slub: fix HW_TAGS zeroing with slub_debug 2023-07-23 13:53:54 +02:00
slab_common.c
slub.c
sparse-vmemmap.c
sparse.c
swap.c
swap.h
swap_cgroup.c
swap_slots.c
swap_state.c
swapfile.c
truncate.c
usercopy.c
userfaultfd.c
util.c
vmalloc.c mm/vmalloc: do not output a spurious warning when huge vmalloc() fails 2023-06-19 13:19:31 -07:00
vmpressure.c
vmscan.c mm/mglru: make memcg_lru->lock irq safe 2023-07-19 16:36:51 +02:00
vmstat.c
workingset.c
z3fold.c
zbud.c
zpool.c
zsmalloc.c zsmalloc: fix races between modifications of fullness and isolated 2023-08-16 18:32:19 +02:00
zswap.c zswap: do not shrink if cgroup may not zswap 2023-06-12 11:31:52 -07:00