linux-stable/mm
Linus Torvalds d0b51bfb23 Revert "mm: shmem: don't truncate page if memory failure happens"
This reverts commit b9d02f1bdd.

The error handling of that patch was fundamentally broken, and it needs
to be entirely re-done.

For example, in shmem_write_begin() it would call shmem_getpage(), then
ignore the error return from that, and look at the page pointer contents
instead.

And in shmem_read_mapping_page_gfp(), the patch tested PageHWPoison() on
a page pointer that two lines earlier had potentially been set as an
error pointer.

These issues could be individually fixed, but when it has this many
issues, I'm just reverting it instead of waiting for fixes.

Link: https://lore.kernel.org/linux-mm/20211111084617.6746-1-ajaygargnsit@gmail.com/
Reported-by: Ajay Garg <ajaygargnsit@gmail.com>
Reported-by: Jens Axboe <axboe@kernel.dk>
Cc: Yang Shi <shy828301@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-11-13 12:03:03 -08:00
..
damon mm/damon: remove return value from before_terminate callback 2021-11-06 13:30:46 -07:00
kasan kasan: add kasan mode messages when kasan init 2021-11-11 09:34:35 -08:00
kfence kfence: always use static branches to guard kfence_alloc() 2021-11-06 13:30:43 -07:00
backing-dev.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
balloon_compaction.c
bootmem_info.c
cleancache.c
cma.c memblock: rename memblock_free to memblock_phys_free 2021-11-06 13:30:41 -07:00
cma.h
cma_debug.c
cma_sysfs.c
compaction.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
debug.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
debug_page_ref.c
debug_vm_pgtable.c
dmapool.c
early_ioremap.c
fadvise.c
failslab.c
filemap.c Merge branch 'akpm' (patches from Andrew) 2021-11-09 10:11:53 -08:00
folio-compat.c
frontswap.c
gup.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
gup_test.c
gup_test.h
highmem.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
hmm.c
huge_memory.c
hugetlb.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
hugetlb_cgroup.c
hugetlb_vmemmap.c
hugetlb_vmemmap.h
hwpoison-inject.c
init-mm.c
internal.h Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
interval_tree.c
io-mapping.c
ioremap.c
Kconfig kernel/resource: disallow access to exclusive system RAM regions 2021-11-09 10:02:52 -08:00
Kconfig.debug
khugepaged.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
kmemleak.c
ksm.c
list_lru.c
maccess.c
madvise.c
Makefile
mapping_dirty_helpers.c
memblock.c arm64 fixes for -rc1 2021-11-10 11:29:30 -08:00
memcontrol.c mm: unexport {,un}lock_page_memcg 2021-11-11 09:34:35 -08:00
memfd.c mm,hugetlb: remove mlock ulimit for SHM_HUGETLB 2021-11-09 10:02:48 -08:00
memory-failure.c Revert "mm: shmem: don't truncate page if memory failure happens" 2021-11-13 12:03:03 -08:00
memory.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
memory_hotplug.c mm/memory_hotplug: indicate MEMBLOCK_DRIVER_MANAGED with IORESOURCE_SYSRAM_DRIVER_MANAGED 2021-11-06 13:30:42 -07:00
mempolicy.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
mempool.c
memremap.c
memtest.c
migrate.c mm/migrate.c: remove MIGRATE_PFN_LOCKED 2021-11-11 09:34:35 -08:00
mincore.c
mlock.c
mm_init.c
mmap.c mm,hugetlb: remove mlock ulimit for SHM_HUGETLB 2021-11-09 10:02:48 -08:00
mmap_lock.c
mmu_gather.c
mmu_notifier.c
mmzone.c
mprotect.c
mremap.c
msync.c
nommu.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
oom_kill.c pidfd.v5.16 2021-11-10 16:02:08 -08:00
page-writeback.c folio: Add a function to get the host inode for a folio 2021-11-10 21:16:52 +00:00
page_alloc.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
page_counter.c
page_ext.c
page_idle.c
page_io.c
page_isolation.c mm/page_isolation: guard against possible putback unisolated page 2021-11-06 13:30:40 -07:00
page_owner.c mm/page_owner.c: modify the type of argument "order" in some functions 2021-11-11 09:34:35 -08:00
page_poison.c
page_reporting.c
page_reporting.h
page_vma_mapped.c
pagewalk.c
percpu-internal.h
percpu-km.c
percpu-stats.c
percpu-vm.c
percpu.c memblock: use memblock_free for freeing virtual pointers 2021-11-06 13:30:41 -07:00
pgalloc-track.h
pgtable-generic.c
process_vm_access.c
ptdump.c
readahead.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
rmap.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
rodata_test.c
secretmem.c
shmem.c Revert "mm: shmem: don't truncate page if memory failure happens" 2021-11-13 12:03:03 -08:00
shuffle.c
shuffle.h
slab.c mm: remove HARDENED_USERCOPY_FALLBACK 2021-11-06 13:30:43 -07:00
slab.h
slab_common.c mm: remove HARDENED_USERCOPY_FALLBACK 2021-11-06 13:30:43 -07:00
slob.c
slub.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
sparse-vmemmap.c
sparse.c memblock: use memblock_free for freeing virtual pointers 2021-11-06 13:30:41 -07:00
swap.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
swap_cgroup.c
swap_slots.c
swap_state.c
swapfile.c Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
truncate.c vfs: keep inodes with page cache off the inode shrinker LRU 2021-11-09 10:02:48 -08:00
usercopy.c
userfaultfd.c Revert "mm: shmem: don't truncate page if memory failure happens" 2021-11-13 12:03:03 -08:00
util.c
vmacache.c
vmalloc.c
vmpressure.c mm/vmpressure: fix data-race with memcg->socket_pressure 2021-11-06 13:30:40 -07:00
vmscan.c Merge branch 'akpm' (patches from Andrew) 2021-11-09 10:11:53 -08:00
vmstat.c mm: vmstat.c: make extfrag_index show more pretty 2021-11-06 13:30:42 -07:00
workingset.c Merge branch 'akpm' (patches from Andrew) 2021-11-09 10:11:53 -08:00
z3fold.c
zbud.c
zpool.c
zsmalloc.c mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration() 2021-11-06 13:30:43 -07:00
zswap.c