linux-stable/arch
Christophe Leroy 63eed9dbe6 powerpc: Force inlining of arch_vmap_p{u/m}d_supported()
[ Upstream commit c5aebb53b3 ]

arch_vmap_pud_supported() and arch_vmap_pmd_supported() are
expected to constant-fold to false when RADIX is not enabled.

Force inlining in order to avoid following failure which
leads to unexpected call of non-existing pud_set_huge() and
pmd_set_huge() on powerpc 8xx.

In function 'pud_huge_tests',
    inlined from 'debug_vm_pgtable' at mm/debug_vm_pgtable.c:1399:2:
./arch/powerpc/include/asm/vmalloc.h:9:33: warning: inlining failed in call to 'arch_vmap_pud_supported.isra': call is unlikely and code size would grow [-Winline]
    9 | #define arch_vmap_pud_supported arch_vmap_pud_supported
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~
./arch/powerpc/include/asm/vmalloc.h:10:20: note: in expansion of macro 'arch_vmap_pud_supported'
   10 | static inline bool arch_vmap_pud_supported(pgprot_t prot)
      |                    ^~~~~~~~~~~~~~~~~~~~~~~
./arch/powerpc/include/asm/vmalloc.h:9:33: note: called from here
    9 | #define arch_vmap_pud_supported arch_vmap_pud_supported
mm/debug_vm_pgtable.c:458:14: note: in expansion of macro 'arch_vmap_pud_supported'
  458 |         if (!arch_vmap_pud_supported(args->page_prot) ||
      |              ^~~~~~~~~~~~~~~~~~~~~~~

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202402131836.OU1TDuoi-lkp@intel.com/
Fixes: 8309c9d717 ("powerpc: inline huge vmap supported functions")
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/bbd84ad52bf377e8d3b5865a906f2dc5d99964ba.1707832677.git.christophe.leroy@csgroup.eu
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-03-26 18:18:34 -04:00
..
alpha arch: fix asm-offsets.c building with -Wmissing-prototypes 2024-02-05 20:16:47 +00:00
arc work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:51:20 +01:00
arm ARM: dts: imx6dl-yapp4: Move the internal switch PHYs under the switch node 2024-03-26 18:18:20 -04:00
arm64 arm64: dts: qcom: sm8550: Fix SPMI channels size 2024-03-26 18:18:21 -04:00
csky work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:51:20 +01:00
hexagon TTY/Serial changes for 6.7-rc1 2023-11-03 15:44:25 -10:00
loongarch LoongArch: Update cpu_sibling_map when disabling nonboot CPUs 2024-03-01 13:41:45 +01:00
m68k mm: Introduce flush_cache_vmap_early() 2024-02-16 19:14:25 +01:00
microblaze asm-generic updates for v6.7 2023-11-01 15:28:33 -10:00
mips MIPS: Clear Cause.BD in instruction_pointer_set 2024-03-26 18:17:50 -04:00
nios2 mm: Introduce flush_cache_vmap_early() 2024-02-16 19:14:25 +01:00
openrisc
parisc parisc/ftrace: add missing CONFIG_DYNAMIC_FTRACE check 2024-03-26 18:17:52 -04:00
powerpc powerpc: Force inlining of arch_vmap_p{u/m}d_supported() 2024-03-26 18:18:34 -04:00
riscv riscv: dts: sifive: add missing #interrupt-cells to pmic 2024-03-26 18:17:52 -04:00
s390 s390/cache: prevent rebuild of shared_cpu_list 2024-03-26 18:18:24 -04:00
sh mm: Introduce flush_cache_vmap_early() 2024-02-16 19:14:25 +01:00
sparc sparc: Fix undefined reference to fb_is_primary_device 2024-03-01 13:41:47 +01:00
um um: Fix adding '-no-pie' for clang 2024-02-23 09:51:39 +01:00
x86 ACPI: CPPC: enable AMD CPPC V2 support for family 17h processors 2024-03-26 18:18:22 -04:00
xtensa work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:51:20 +01:00
.gitignore
Kconfig scs: add CONFIG_MMU dependency for vfree_atomic() 2024-02-23 09:51:28 +01:00