Re: [PATCH] kunit: tool: Disable PAGE_POISONING under --alltests
From: Brendan Higgins
Date: Fri Feb 26 2021 - 15:58:28 EST
On Mon, Feb 8, 2021 at 11:10 PM David Gow <davidgow@xxxxxxxxxx> wrote:
>
>
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: f289041ed4 ("mm, page_poison: remove CONFIG_PAGE_POISONING_ZERO")
>
Signed-off-by: David Gow <davidgow@xxxxxxxxxx>
Reviewed-by: Brendan Higgins <brendanhiggins@xxxxxxxxxx>