Re: [PATCH 0/3] misc changes for rtrs

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

 



On Tue, Sep 06, 2022 at 03:04:50PM +0800, Guoqing Jiang wrote:
> Hi Leon,
> 
> On 9/5/22 8:28 PM, Leon Romanovsky wrote:
> > On Fri, Sep 02, 2022 at 06:19:19PM +0800, Guoqing Jiang wrote:
> > > Hi,
> > > 
> > > Pls review the three patches.
> > > 
> > > Thanks,
> > > Guoqing
> > > 
> > > Guoqing Jiang (3):
> > >    RDMA/rtrs: Update comments for MAX_SESS_QUEUE_DEPTH
> > >    RDMA/rtrs-clt: Break the loop once one path is connected
> > >    RDMA/rtrs-clt: Kill xchg_paths
> > > 
> > >   drivers/infiniband/ulp/rtrs/rtrs-clt.c | 18 +++++-------------
> > >   drivers/infiniband/ulp/rtrs/rtrs-pri.h |  7 +++----
> > >   2 files changed, 8 insertions(+), 17 deletions(-)
> > The third patch still generates warnings.
> 
> Sorry, I didn't run sparse check, 😅.
> 
> > ➜  kernel git:(wip/leon-for-next) mkt ci
> > ^[[A^[[A^[[Ad9b137e23d31 (HEAD -> build) RDMA/rtrs-clt: Kill xchg_paths
> > WARNING: line length of 81 exceeds 80 columns
> > #43: FILE: drivers/infiniband/ulp/rtrs/rtrs-clt.c:2297:
> > +		if (try_cmpxchg((typeof(ppcpu_path))ppcpu_path, &clt_path, next))
> > 
> > drivers/infiniband/ulp/rtrs/rtrs-clt.c:2297:21: warning: incorrect type in initializer (different address spaces)
> > drivers/infiniband/ulp/rtrs/rtrs-clt.c:2297:21:    expected struct rtrs_clt_path [noderef] __rcu *__new
> > drivers/infiniband/ulp/rtrs/rtrs-clt.c:2297:21:    got struct rtrs_clt_path *[assigned] next
> 
> Before send new version, could you help to check whether the incremental
> change works or not? Otherwise let's drop the third one.

Thanks, it worked.

> 
> diff --git a/drivers/infiniband/ulp/rtrs/rtrs-clt.c
> b/drivers/infiniband/ulp/rtrs/rtrs-clt.c
> index 0661a4e69fc9..bc3e1722e00d 100644
> --- a/drivers/infiniband/ulp/rtrs/rtrs-clt.c
> +++ b/drivers/infiniband/ulp/rtrs/rtrs-clt.c
> @@ -2294,7 +2294,8 @@ static void rtrs_clt_remove_path_from_arr(struct
> rtrs_clt_path *clt_path)
>                  * We race with IO code path, which also changes pointer,
>                  * thus we have to be careful not to overwrite it.
>                  */
> -               if (try_cmpxchg((typeof(ppcpu_path))ppcpu_path, clt_path,
> next))
> +               if (try_cmpxchg((struct rtrs_clt_path **)ppcpu_path,
> +                               clt_path, next))
>                         /*
>                          * @ppcpu_path was successfully replaced with @next,
>                          * that means that someone could also pick up the
> 
> Thanks,
> Guoqing



[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