Skip to content

Commit 7fd53f4

Browse files
sulixshuahkh
authored andcommitted
kunit: tool: Disable PAGE_POISONING under --alltests
kunit_tool maintains a list of config options which are broken under UML, which we exclude from an otherwise 'make ARCH=um allyesconfig' build used to run all tests with the --alltests option. Something in UML allyesconfig is causing segfaults when page poisining is enabled (and is poisoning with a non-zero value). Previously, this didn't occur, as allyesconfig enabled the CONFIG_PAGE_POISONING_ZERO option, which worked around the problem by zeroing memory. This option has since been removed, and memory is now poisoned with 0xAA, which triggers segfaults in many different codepaths, preventing UML from booting. Note that we have to disable both CONFIG_PAGE_POISONING and CONFIG_DEBUG_PAGEALLOC, as the latter will 'select' the former on architectures (such as UML) which don't implement __kernel_map_pages(). Ideally, we'd fix this properly by tracking down the real root cause, but since this is breaking KUnit's --alltests feature, it's worth disabling there in the meantime so the kernel can boot to the point where tests can actually run. Fixes: f289041 ("mm, page_poison: remove CONFIG_PAGE_POISONING_ZERO") Signed-off-by: David Gow <[email protected]> Acked-by: Vlastimil Babka <[email protected]> Reviewed-by: Brendan Higgins <[email protected]> Signed-off-by: Shuah Khan <[email protected]>
1 parent 7421b1a commit 7fd53f4

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

tools/testing/kunit/configs/broken_on_uml.config

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,5 @@
4040
# CONFIG_RESET_BRCMSTB_RESCAL is not set
4141
# CONFIG_RESET_INTEL_GW is not set
4242
# CONFIG_ADI_AXI_ADC is not set
43+
# CONFIG_DEBUG_PAGEALLOC is not set
44+
# CONFIG_PAGE_POISONING is not set

0 commit comments

Comments
 (0)