[PATCH 0/3] Fix CONFIG_TEST_KMOD with 256kB page size

From: Nathan Chancellor
Date: Mon Nov 29 2021 - 18:14:21 EST


The kernel test robot reported a build error [1] from a failed assertion
in fs/btrfs/inode.c with a hexagon randconfig that includes
CONFIG_PAGE_SIZE_256KB. This error is the same one that was addressed by
commit b05fbcc36be1 ("btrfs: disable build on platforms having page size
256K") but CONFIG_TEST_KMOD selects CONFIG_BTRFS without having the
"page size less than 256kB dependency", which results in the error
reappearing.

The first patch introduces CONFIG_PAGE_SIZE_LESS_THAN_256KB by splitting
it off from CONFIG_PAGE_SIZE_LESS_THAN_64KB, which was introduced in
commit 1f0e290cc5fd ("arch: Add generic Kconfig option indicating page
size smaller than 64k") for a similar reason in 5.16-rc3.

The second patch uses that configuration option for CONFIG_BTRFS to
reduce duplication.

The third patch resolves the build error by adding
CONFIG_PAGE_SIZE_LESS_THAN_256KB as a dependency to CONFIG_TEST_KMOD so
that CONFIG_BTRFS does not get enabled under that invalid configuration.

This series could go through either btrfs or -mm, as arch/Kconfig and
lib/Kconfig.debug have no formal maintainer. I have sent it to the
maintainers of both so that they can decide who will take it.

[1]: https://lore.kernel.org/r/202111270255.UYOoN5VN-lkp@xxxxxxxxx/

Nathan Chancellor (3):
arch/Kconfig: Split PAGE_SIZE_LESS_THAN_256KB from
PAGE_SIZE_LESS_THAN_64KB
btrfs: Use generic Kconfig option for 256kB page size limit
lib/Kconfig.debug: Make TEST_KMOD depend on PAGE_SIZE_LESS_THAN_256KB

arch/Kconfig | 4 ++++
fs/btrfs/Kconfig | 3 +--
lib/Kconfig.debug | 1 +
3 files changed, 6 insertions(+), 2 deletions(-)


base-commit: d58071a8a76d779eedab38033ae4c821c30295a5
--
2.34.1