linux-yocto/arch/arm/mm
Ross Stutterheim c592d3ceca ARM: 9447/1: arm/memremap: fix arch_memremap_can_ram_remap()
commit 96e0b35588 upstream.

arm/memremap: fix arch_memremap_can_ram_remap()

commit 260364d112 ("arm[64]/memremap: don't abuse pfn_valid() to ensure
presence of linear map") added the definition of
arch_memremap_can_ram_remap() for arm[64] specific filtering of what pages
can be used from the linear mapping. memblock_is_map_memory() was called
with the pfn of the address given to arch_memremap_can_ram_remap();
however, memblock_is_map_memory() expects to be given an address for arm,
not a pfn.

This results in calls to memremap() returning a newly mapped area when
it should return an address in the existing linear mapping.

Fix this by removing the address to pfn translation and pass the
address directly.

Fixes: 260364d112 ("arm[64]/memremap: don't abuse pfn_valid() to ensure presence of linear map")
Signed-off-by: Ross Stutterheim <ross.stutterheim@garmin.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: stable@vger.kernel.org
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-06-27 11:08:46 +01:00
..
abort-ev4.S
abort-ev4t.S
abort-ev5t.S
abort-ev5tj.S
abort-ev6.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
abort-ev7.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
abort-lv4t.S
abort-macro.S
abort-nommu.S
alignment.c ARM: 9214/1: alignment: advance IT state after emulating Thumb instruction 2022-07-06 22:44:49 +01:00
cache-b15-rac.c ARM: mm: fix typos in comments 2022-04-04 10:18:54 -07:00
cache-fa.S ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
cache-feroceon-l2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_56.RULE (part 1) 2022-06-10 14:51:35 +02:00
cache-l2x0-pmu.c
cache-l2x0.c
cache-nop.S
cache-tauros2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_56.RULE (part 1) 2022-06-10 14:51:35 +02:00
cache-tauros3.h
cache-uniphier.c ARM: uniphier: fix cache kernel-doc warnings 2023-09-27 11:02:14 +02:00
cache-v4.S
cache-v4wb.S ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
cache-v4wt.S
cache-v6.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
cache-v7.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
cache-v7m.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
cache-xsc3l2.c
context.c ARM: mm: make vmalloc_seq handling SMP safe 2022-01-25 09:53:52 +01:00
copypage-fa.c
copypage-feroceon.c ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
copypage-v4mc.c arm: implement the new page table range API 2023-08-24 16:20:20 -07:00
copypage-v4wb.c
copypage-v4wt.c
copypage-v6.c arm: implement the new page table range API 2023-08-24 16:20:20 -07:00
copypage-xsc3.c ARM: PXA: fix multi-cpu build of xsc3 2022-05-07 22:56:16 +02:00
copypage-xscale.c arm: implement the new page table range API 2023-08-24 16:20:20 -07:00
dma-mapping-nommu.c ARM/nommu: use the generic dma-direct code for non-coherent devices 2021-08-18 16:24:10 +02:00
dma-mapping.c arm: implement the new page table range API 2023-08-24 16:20:20 -07:00
dma.h
dump.c ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
extable.c
fault-armv.c arm: implement the new page table range API 2023-08-24 16:20:20 -07:00
fault.c ARM: Remove address checking for MMUless devices 2025-04-07 10:06:36 +02:00
fault.h ARM: 9304/1: add prototype for function called only from asm 2023-06-19 09:35:52 +01:00
flush.c ARM: 9359/1: flush: check if the folio is reserved for no-mapping addresses 2024-04-03 15:28:50 +02:00
fsr-2level.c
fsr-3level.c
hugetlbpage.c
idmap.c ARM: 9420/1: smp: Fix SMP for xip kernels 2024-12-09 10:31:40 +01:00
init.c ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
iomap.c
ioremap.c ARM: 9447/1: arm/memremap: fix arch_memremap_can_ram_remap() 2025-06-27 11:08:46 +01:00
kasan_init.c ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
Kconfig arm: update in-source documentation references 2023-06-12 06:33:48 -06:00
l2c-common.c
l2c-l2x0-resume.S
Makefile ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
mm.h arm: implement the new page table range API 2023-08-24 16:20:20 -07:00
mmap.c
mmu.c ARM: 9419/1: mm: Fix kernel memory mapping for xip kernels 2024-11-22 15:38:33 +01:00
nommu.c arm: implement the new page table range API 2023-08-24 16:20:20 -07:00
pabort-legacy.S
pabort-v6.S
pabort-v7.S
pageattr.c minmax: add in_range() macro 2023-08-24 16:20:18 -07:00
pgd.c
physaddr.c ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
pmsa-v7.c
pmsa-v8.c ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
proc-arm7tdmi.S
proc-arm9tdmi.S
proc-arm720.S
proc-arm740.S
proc-arm920.S
proc-arm922.S
proc-arm925.S
proc-arm926.S
proc-arm940.S
proc-arm946.S
proc-arm1020.S
proc-arm1020e.S
proc-arm1022.S
proc-arm1026.S
proc-fa526.S
proc-feroceon.S ARM: vfp: Remove workaround for Feroceon CPUs 2023-05-17 13:11:38 +02:00
proc-macros.S ARM: 9284/1: include <asm/pgtable.h> from proc-macros.S to fix -Wundef warnings 2023-01-11 16:22:05 +00:00
proc-mohawk.S
proc-sa110.S
proc-sa1100.S
proc-syms.c
proc-v6.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
proc-v7-2level.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
proc-v7-3level.S
proc-v7-bugs.c ARM: 9213/1: Print message about disabled Spectre workarounds only once 2022-07-06 22:44:49 +01:00
proc-v7.S ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
proc-v7m.S ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
proc-xsc3.S
proc-xscale.S
ptdump_debugfs.c
pv-fixup-asm.S ARM: mm: Make virt_to_pfn() a static inline 2023-05-29 11:27:08 +02:00
tlb-fa.S
tlb-v4.S
tlb-v4wb.S
tlb-v4wbi.S
tlb-v6.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00
tlb-v7.S ARM: 9263/1: use .arch directives instead of assembler command line flags 2022-11-08 18:36:17 +00:00