Re: [PATCH] mm: slub: add panic_on_error to the debug facilities

From: Andrew Morton
Date: Fri May 01 2020 - 17:37:54 EST


On Fri, 1 May 2020 17:15:40 -0400 Rafael Aquini <aquini@xxxxxxxxxx> wrote:

> Sometimes it is desirable to override SLUB's debug facilities
> default behavior upon stumbling on a cache or object error
> and just stop the execution in order to grab a coredump, at
> the error-spotting time, instead of trying to fix the issue
> and report in an attempt to keep the system rolling.
>
> This patch introduces a new debug flag SLAB_PANIC_ON_ERROR,
> along with its related SLUB-machinery, in order to extend
> current slub_debug facilites and provide the aforementioned
> behavior override.
>

Sees reasonable.

> --- a/Documentation/vm/slub.rst
> +++ b/Documentation/vm/slub.rst
> @@ -54,6 +54,8 @@ Possible debug options are::
> caused higher minimum slab orders
> - Switch all debugging off (useful if the kernel is
> configured with CONFIG_SLUB_DEBUG_ON)
> + C Toggle panic on error (crash) to allow for post-mortem
> + analysis of a coredump taken at the error-spotting time

nit: "toggle" means to switch to the other state. But what we're doing
here is to set to the "on" state. This:

--- a/Documentation/vm/slub.rst~mm-slub-add-panic_on_error-to-the-debug-facilities-fix
+++ a/Documentation/vm/slub.rst
@@ -49,12 +49,12 @@ Possible debug options are::
P Poisoning (object and padding)
U User tracking (free and alloc)
T Trace (please only use on single slabs)
- A Toggle failslab filter mark for the cache
+ A Enable failslab filter mark for the cache
O Switch debugging off for caches that would have
caused higher minimum slab orders
- Switch all debugging off (useful if the kernel is
configured with CONFIG_SLUB_DEBUG_ON)
- C Toggle panic on error (crash) to allow for post-mortem
+ C Enable panic on error (crash) to allow for post-mortem
analysis of a coredump taken at the error-spotting time

F.e. in order to boot just with sanity checks and red zoning one would specify::
_