Recently, I reviewed a patch on the mm/kselftest mailing list about a test which had obvious type mismatch fix in it. It was strange why that wasn't caught during development and when patch was accepted. This led me to discover that those extra compiler options to catch these warnings aren't being used. When I added them, I found tens of warnings in just mm suite.
In this series, I'm adding these flags and fixing those warnings. In the last try several months ago [1], I'd patches for individual tests. I've made patches better by grouping the same type of fixes together. Hence there is no changelog for individual patches.
The changes have been build tested on x86_64, arm64, powerpc64 and partially on riscv64. The test run with and without this series has been done on x86_64.
--- Changes since v1: - Drop test harness patch which isn't needed anymore - Revamp how patches are written per same kind of failure
Changes since v2: - split_huge_page_test.c: better deadcode removal - Drop -Wunused-parameter flag as kernel also doesn't enable it and it causes too much hassle - Drop previous patches 6 and 7 as they are just marking unused parameters with unused flag - Rename __unused to __always_unused and also add __maybe_unused
Muhammad Usama Anjum (8): selftests/mm: Add -Wunreachable-code and fix warnings selftests/mm: protection_keys: Fix dead code selftests: kselftest.h: Add unused macro selftests/mm: Add -Wunused family of flags selftests/mm: Remove unused parameters selftests/mm: Fix unused parameter warnings for different architectures selftests/mm: mark variable unused with macro selftests/mm: pkey-helpers: Remove duplicate __maybe_unused
tools/testing/selftests/kselftest.h | 8 ++++++ tools/testing/selftests/mm/Makefile | 2 +- tools/testing/selftests/mm/compaction_test.c | 2 +- tools/testing/selftests/mm/cow.c | 2 +- tools/testing/selftests/mm/droppable.c | 2 +- tools/testing/selftests/mm/gup_longterm.c | 2 +- tools/testing/selftests/mm/hmm-tests.c | 5 ++-- tools/testing/selftests/mm/hugepage-vmemmap.c | 2 +- tools/testing/selftests/mm/hugetlb-madvise.c | 2 +- .../selftests/mm/hugetlb-soft-offline.c | 2 +- tools/testing/selftests/mm/ksm_tests.c | 17 ++++++------- tools/testing/selftests/mm/madv_populate.c | 2 +- tools/testing/selftests/mm/map_populate.c | 2 +- tools/testing/selftests/mm/memfd_secret.c | 2 +- .../testing/selftests/mm/mlock-random-test.c | 2 +- tools/testing/selftests/mm/mlock2-tests.c | 2 +- tools/testing/selftests/mm/mseal_test.c | 8 ++++-- tools/testing/selftests/mm/on-fault-limit.c | 2 +- tools/testing/selftests/mm/pkey-helpers.h | 3 --- .../selftests/mm/pkey_sighandler_tests.c | 25 +++++++++++++++---- tools/testing/selftests/mm/protection_keys.c | 6 ++--- tools/testing/selftests/mm/soft-dirty.c | 6 ++--- .../selftests/mm/split_huge_page_test.c | 2 +- tools/testing/selftests/mm/uffd-common.c | 4 +-- tools/testing/selftests/mm/uffd-common.h | 2 +- tools/testing/selftests/mm/uffd-stress.c | 2 +- tools/testing/selftests/mm/uffd-unit-tests.c | 8 +++--- tools/testing/selftests/mm/uffd-wp-mremap.c | 2 +- .../selftests/mm/virtual_address_range.c | 2 +- 29 files changed, 73 insertions(+), 55 deletions(-)