On 17/02/2026 8:35 am, Jan Beulich wrote:
> wake_up_one() isn't used at all, so violates Misra rule 2.1 (unreachable
> code). wake_up_all() is only used locally, yet rather than making it
> static its sole user can invoke wake_up_nr() in the intended way directly.
>
> Signed-off-by: Jan Beulich <[email protected]>
>
> --- a/xen/common/wait.c
> +++ b/xen/common/wait.c
> @@ -85,11 +85,6 @@ void init_waitqueue_head(struct waitqueu
>      INIT_LIST_HEAD(&wq->list);
>  }
>  
> -void destroy_waitqueue_head(struct waitqueue_head *wq)
> -{
> -    wake_up_all(wq);
> -}
> -
>  void wake_up_nr(struct waitqueue_head *wq, unsigned int nr)
>  {
>      struct waitqueue_vcpu *wqv;
> @@ -107,12 +102,7 @@ void wake_up_nr(struct waitqueue_head *w
>      spin_unlock(&wq->lock);
>  }
>  
> -void wake_up_one(struct waitqueue_head *wq)
> -{
> -    wake_up_nr(wq, 1);
> -}
> -
> -void wake_up_all(struct waitqueue_head *wq)
> +void destroy_waitqueue_head(struct waitqueue_head *wq)
>  {
>      wake_up_nr(wq, UINT_MAX);
>  }

The diff looks wonky because you also moved destroy_waitqueue_head(),
despite wake_up_nr() not being static.

Keeping destroy_waitqueue_head() in it's old location will make the diff
smaller and more obvious.

~Andrew

Reply via email to