linux/tools/testing/selftests/mm
Nysal Jan K.A. 8cf6ecb18b selftests/mm: fix a build failure on powerpc
The compiler is unaware of the size of code generated by the ".rept"
assembler directive.  This results in the compiler emitting branch
instructions where the offset to branch to exceeds the maximum allowed
value, resulting in build failures like the following:

  CC       protection_keys
  /tmp/ccypKWAE.s: Assembler messages:
  /tmp/ccypKWAE.s:2073: Error: operand out of range (0x0000000000020158
  is not between 0xffffffffffff8000 and 0x0000000000007ffc)
  /tmp/ccypKWAE.s:2509: Error: operand out of range (0x0000000000020130
  is not between 0xffffffffffff8000 and 0x0000000000007ffc)

Fix the issue by manually adding nop instructions using the preprocessor.

Link: https://lkml.kernel.org/r/20250428131937.641989-2-nysal@linux.ibm.com
Fixes: 46036188ea ("selftests/mm: build with -O2")
Reported-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Signed-off-by: Nysal Jan K.A. <nysal@linux.ibm.com>
Tested-by: Venkat Rao Bagalkote <venkat88@linux.ibm.com>
Reviewed-by: Donet Tom <donettom@linux.ibm.com>
Tested-by: Donet Tom <donettom@linux.ibm.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-05-07 23:39:41 -07:00
..
page_frag
.gitignore selftests/mm: rename guard-pages to guard-regions 2025-03-16 22:06:15 -07:00
Makefile selftests/mm: rename guard-pages to guard-regions 2025-03-16 22:06:15 -07:00
charge_reserved_hugetlb.sh selftests/mm: generate a temporary mountpoint for cgroup filesystem 2025-04-11 17:32:37 -07:00
check_config.sh
compaction_test.c selftests/mm: compaction_test: support platform with huge mount of memory 2025-05-07 23:39:39 -07:00
config selftests/mm: virtual_address_range: unmap chunks after validation 2025-01-25 20:22:44 -08:00
cow.c selftests/mm: fix compiler -Wmaybe-uninitialized warning 2025-04-11 17:32:41 -07:00
droppable.c
guard-regions.c tools/testing/selftests: fix guard region test tmpfs assumption 2025-05-07 23:39:40 -07:00
gup_longterm.c selftests/mm: add commentary about 9pfs bugs 2025-03-21 22:03:14 -07:00
gup_test.c
hmm-tests.c
hugepage-mmap.c
hugepage-mremap.c Revert "selftests/mm: remove local __NR_* definitions" 2025-03-05 21:36:12 -08:00
hugepage-shm.c
hugepage-vmemmap.c
hugetlb-madvise.c
hugetlb-read-hwpoison.c
hugetlb-soft-offline.c
hugetlb_dio.c
hugetlb_fault_after_madv.c
hugetlb_madv_vs_map.c
hugetlb_reparenting_test.sh selftests/mm: generate a temporary mountpoint for cgroup filesystem 2025-04-11 17:32:37 -07:00
khugepaged.c
ksm_functional_tests.c Revert "selftests/mm: remove local __NR_* definitions" 2025-03-05 21:36:12 -08:00
ksm_tests.c selftests/mm: fix -Wmaybe-uninitialized warnings 2025-01-13 22:40:53 -08:00
madv_populate.c
map_fixed_noreplace.c
map_hugetlb.c
map_populate.c selftests/mm: add commentary about 9pfs bugs 2025-03-21 22:03:14 -07:00
mdwe_test.c
memfd_secret.c Revert "selftests/mm: remove local __NR_* definitions" 2025-03-05 21:36:12 -08:00
migration.c selftests/mm: add new test cases to the migration test 2025-01-25 20:22:21 -08:00
mkdirty.c Revert "selftests/mm: remove local __NR_* definitions" 2025-03-05 21:36:12 -08:00
mlock-random-test.c selftests/mm/mlock: print error on failure 2025-03-16 22:06:40 -07:00
mlock2-tests.c
mlock2.h selftests/mm/mlock: print error on failure 2025-03-16 22:06:40 -07:00
mrelease_test.c
mremap_dontunmap.c
mremap_test.c selftests/mm: fix -Wmaybe-uninitialized warnings 2025-01-13 22:40:53 -08:00
mseal_helpers.h
mseal_test.c selftests/mm: Use PKEY_UNRESTRICTED macro 2025-02-17 18:16:36 +00:00
on-fault-limit.c
pagemap_ioctl.c selftests/mm: pagemap_ioctl: Fix types mismatches shown by compiler options 2025-01-13 22:40:52 -08:00
pkey-arm64.h selftests/mm: rename pkey register macro 2025-01-13 22:40:56 -08:00
pkey-helpers.h selftests/mm: Use PKEY_UNRESTRICTED macro 2025-02-17 18:16:36 +00:00
pkey-powerpc.h selftests/mm: fix a build failure on powerpc 2025-05-07 23:39:41 -07:00
pkey-x86.h selftests/mm: ensure pkey-*.h define inline functions only 2025-01-13 22:40:55 -08:00
pkey_sighandler_tests.c selftests/mm: Use PKEY_UNRESTRICTED macro 2025-02-17 18:16:36 +00:00
pkey_util.c selftests/mm: fix build break when compiling pkey_util.c 2025-05-07 23:39:41 -07:00
protection_keys.c arm64 updates for 6.15: 2025-03-25 13:16:16 -07:00
run_vmtests.sh selftests/mm: skip mlock tests if nobody user can't read it 2025-03-16 22:06:40 -07:00
settings
soft-dirty.c selftests/mm: fix -Wmaybe-uninitialized warnings 2025-01-13 22:40:53 -08:00
split_huge_page_test.c selftests/mm: speed up split_huge_page_test 2025-03-21 22:03:16 -07:00
test_hmm.sh
test_page_frag.sh
test_vmalloc.sh
thp_settings.c selftests/mm: thp_settings: remove const from return type 2025-01-13 22:40:52 -08:00
thp_settings.h selftests/mm: thp_settings: remove const from return type 2025-01-13 22:40:52 -08:00
thuge-gen.c selftests/mm: fix thuge-gen test name uniqueness 2025-03-16 22:06:03 -07:00
transhuge-stress.c
uffd-common.c selftests/mm/uffd: rename nr_cpus -> nr_parallel 2025-03-16 22:06:38 -07:00
uffd-common.h selftests/mm/uffd: rename nr_cpus -> nr_parallel 2025-03-16 22:06:38 -07:00
uffd-stress.c selftests/mm: don't fail uffd-stress if too many CPUs 2025-03-16 22:06:38 -07:00
uffd-unit-tests.c selftests/mm: uffd-unit-tests support for hugepages > 2M 2025-03-21 22:03:15 -07:00
uffd-wp-mremap.c selftests/mm: skip uffd-wp-mremap if userfaultfd not available 2025-03-16 22:06:38 -07:00
va_high_addr_switch.c
va_high_addr_switch.sh selftest/mm: va_high_addr_switch: add ppc64 support check 2025-04-01 15:17:11 -07:00
virtual_address_range.c selftests/mm: virtual_address_range: avoid reading from VM_IO mappings 2025-01-25 20:22:44 -08:00
vm_util.c selftests/mm: virtual_address_range: avoid reading from VM_IO mappings 2025-01-25 20:22:44 -08:00
vm_util.h selftests/mm: add commentary about 9pfs bugs 2025-03-21 22:03:14 -07:00
write_hugetlb_memory.sh
write_to_hugetlbfs.c selftests/mm: fix strncpy() length 2025-01-13 22:40:54 -08:00