Re: [PATCH 1/1] RDMA/rtrs: Require holding rcu_read_lock explicitly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Sep 18, 2023 at 11:36:46PM +0800, Zhu Yanjun wrote:
> From: Zhu Yanjun <yanjun.zhu@xxxxxxxxx>
> 
> No functional change. The function get_next_path_rr needs to hold
> rcu_read_lock. As such, if no rcu read lock, warnings will pop out.
> 
> Signed-off-by: Zhu Yanjun <yanjun.zhu@xxxxxxxxx>
> ---
>  drivers/infiniband/ulp/rtrs/rtrs-clt.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/infiniband/ulp/rtrs/rtrs-clt.c b/drivers/infiniband/ulp/rtrs/rtrs-clt.c
> index b6ee801fd0ff..bc4b70318bf4 100644
> --- a/drivers/infiniband/ulp/rtrs/rtrs-clt.c
> +++ b/drivers/infiniband/ulp/rtrs/rtrs-clt.c
> @@ -775,7 +775,7 @@ rtrs_clt_get_next_path_or_null(struct list_head *head, struct rtrs_clt_path *clt
>   * Related to @MP_POLICY_RR
>   *
>   * Locks:
> - *    rcu_read_lock() must be hold.
> + *    rcu_read_lock() must be held.
>   */
>  static struct rtrs_clt_path *get_next_path_rr(struct path_it *it)
>  {
> @@ -783,6 +783,11 @@ static struct rtrs_clt_path *get_next_path_rr(struct path_it *it)
>  	struct rtrs_clt_path *path;
>  	struct rtrs_clt_sess *clt;
>  
> +	/*
> +	 * Assert that rcu lock must be held
> +	 */
> +	WARN_ON_ONCE(!rcu_read_lock_held());

Let's use RCU_LOCKDEP_WARN(..) macro.

Thanks

> +
>  	clt = it->clt;
>  
>  	/*
> -- 
> 2.40.1
> 



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux