Re: [PATCH v4 0/2] mm: slub: Enhanced debugging in slub error

From: Harry Yoo
Date: Thu Feb 27 2025 - 06:54:07 EST


On Wed, Feb 26, 2025 at 05:11:59PM +0900, Hyesoo Yu wrote:
> Dear Maintainer,
>
> The purpose is to improve the debugging capabilities of the slub allocator
> when a error occurs. The following improvements have been made:
>
> - Added WARN() calls at specific locations (slab_err, object_err) to detect
> errors effectively and to generate a crash dump if panic_on_warn is enabled.
>
> - Additionally, the error printing location in check_object has been adjusted to
> display the broken data before the restoration process. This improvement
> allows for a better understanding of how the data was corrupted.
>
> This series combines two patches that were discussed seperately in the links below.
> https://urldefense.com/v3/__https://lore.kernel.org/linux-mm/20250120082908.4162780-1-hyesoo.yu@xxxxxxxxxxx/__;!!ACWV5N9M2RV99hQ!JpvsczvJJcu4xw6xseDcLQJyiNXgZmwubb5cXEfORBj3VslI2ZTgmipoW7pdQ6qTldrr0mnk2l99xw3nio0$
> https://urldefense.com/v3/__https://lore.kernel.org/linux-mm/20250120083023.4162932-1-hyesoo.yu@xxxxxxxxxxx/__;!!ACWV5N9M2RV99hQ!JpvsczvJJcu4xw6xseDcLQJyiNXgZmwubb5cXEfORBj3VslI2ZTgmipoW7pdQ6qTldrr0mnk2l99Cdp4khE$

IMHO it will be helpful if the cover letter includes error reporting output
before and after this patch series.
--
Cheers,
Harry

> Thanks you.
>
> version 2 changes
> - Replaced direct calling of BUG_ON with the use of WARN() to trigger a panic.
> - Modified the code to print the broken data only once before the restore.
>
> version 3 changes
> - Moved WARN() from slab_fix to slab_err and object to call WARN on all error
> reporting paths.
> - Changed the parameter type of check_bytes_and_report.
>
> version 4 changes
> - Modified the print format to include specific error names.
> - Removed the redundant warning by removing WARN() in kmem_cache_destroy
>
> Hyesoo Yu (2):
> mm: slub: Print the broken data before restoring slub.
> mm: slub: call WARN() when the slab detect an error
>
> mm/slab_common.c | 3 ---
> mm/slub.c | 63 +++++++++++++++++++++++++-----------------------
> 2 files changed, 33 insertions(+), 33 deletions(-)
>
> --
> 2.28.0