Re: [PATCH 5/6] rcuscale: Do a proper cleanup if kfree_scale_init() fails

From: Neeraj Upadhyay
Date: Mon Nov 11 2024 - 04:54:58 EST



> diff --git a/kernel/rcu/rcuscale.c b/kernel/rcu/rcuscale.c
> index 6d37596deb1f..de7d511e6be4 100644
> --- a/kernel/rcu/rcuscale.c
> +++ b/kernel/rcu/rcuscale.c
> @@ -890,13 +890,13 @@ kfree_scale_init(void)
> if (WARN_ON_ONCE(jiffies_at_lazy_cb - jif_start < 2 * HZ)) {
> pr_alert("ERROR: call_rcu() CBs are not being lazy as expected!\n");
> WARN_ON_ONCE(1);
> - return -1;
> + goto unwind;

Do we need to set firsterr = -1 here before "goto unwind"? Otherwise, 0
is returned from kfree_scale_init().

> }
>
> if (WARN_ON_ONCE(jiffies_at_lazy_cb - jif_start > 3 * HZ)) {
> pr_alert("ERROR: call_rcu() CBs are being too lazy!\n");
> WARN_ON_ONCE(1);
> - return -1;
> + goto unwind;

Ditto


- Neeraj

> }
> }
>