Re: [PATCH v3] mm/slub: Refactor note_cmpxchg_failure for better readability

From: Anshuman Khandual

Date: Tue Sep 09 2025 - 02:35:09 EST


On 09/09/25 7:03 AM, Ye Liu wrote:
> From: Ye Liu <liuye@xxxxxxxxxx>
>
> Use IS_ENABLED() and standard if-else to make the code clearer.
>
> Signed-off-by: Ye Liu <liuye@xxxxxxxxxx>
> Reviewed-by: Harry Yoo <harry.yoo@xxxxxxxxxx>
> Reviewed-by: Christoph Lameter (Ampere) <cl@xxxxxxxxxx>
>
> ---
> Changes in v3:
> - Add "---" in front of the change log.
> Changes in v2:
> - Insert newline after && as it's more than 80 columns.
> ---
> mm/slub.c | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/mm/slub.c b/mm/slub.c
> index 30003763d224..5711d6d29a3f 100644
> --- a/mm/slub.c
> +++ b/mm/slub.c
> @@ -3064,18 +3064,17 @@ static inline void note_cmpxchg_failure(const char *n,
>
> pr_info("%s %s: cmpxchg redo ", n, s->name);
>
> -#ifdef CONFIG_PREEMPTION
> - if (tid_to_cpu(tid) != tid_to_cpu(actual_tid))
> + if (IS_ENABLED(CONFIG_PREEMPTION) &&
> + tid_to_cpu(tid) != tid_to_cpu(actual_tid)) {
> pr_warn("due to cpu change %d -> %d\n",
> tid_to_cpu(tid), tid_to_cpu(actual_tid));
> - else
> -#endif
> - if (tid_to_event(tid) != tid_to_event(actual_tid))
> + } else if (tid_to_event(tid) != tid_to_event(actual_tid)) {
> pr_warn("due to cpu running other code. Event %ld->%ld\n",
> tid_to_event(tid), tid_to_event(actual_tid));
> - else
> + } else {
> pr_warn("for unknown reason: actual=%lx was=%lx target=%lx\n",
> actual_tid, tid, next_tid(tid));
> + }
> #endif
> stat(s, CMPXCHG_DOUBLE_CPU_FAIL);
> }

Reviewed-by: Anshuman Khandual <anshuman.khandual@xxxxxxx>