On Fri, Mar 20, 2020 at 01:55:25AM -0700, Davidlohr Bueso wrote:

> diff --git a/kernel/exit.c b/kernel/exit.c
> index 6cc6cc485d07..b0bb0a8ec4b1 100644
> --- a/kernel/exit.c
> +++ b/kernel/exit.c
> @@ -234,9 +234,10 @@ void release_task(struct task_struct *p)
>               goto repeat;
>  }
>  
> -void rcuwait_wake_up(struct rcuwait *w)
> +bool rcuwait_wake_up(struct rcuwait *w)
>  {
>       struct task_struct *task;
> +     bool ret = false;
>  
>       rcu_read_lock();
>  
> @@ -254,10 +255,15 @@ void rcuwait_wake_up(struct rcuwait *w)
>       smp_mb(); /* (B) */
>  
>       task = rcu_dereference(w->task);
> -     if (task)
> +     if (task) {
>               wake_up_process(task);
> +             ret = true;

                ret = wake_up_process(task); ?

> +     }
>       rcu_read_unlock();
> +
> +     return ret;
>  }
> +EXPORT_SYMBOL_GPL(rcuwait_wake_up);

Reply via email to