RE: [PATCH rdma-next v1] irdma: Use list_last_entry/list_first_entry

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

 



> Subject: Re: [PATCH rdma-next v1] irdma: Use list_last_entry/list_first_entry
> 
> On Tue, Jun 08, 2021 at 04:14:16PM -0500, Shiraz Saleem wrote:
> > Use list_last_entry and list_first_entry instead of using prev and
> > next pointers.
> >
> > Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> > Signed-off-by: Shiraz Saleem <shiraz.saleem@xxxxxxxxx>
> > ---
> > v0->v1: create patch on more recent git version
> >
> >  drivers/infiniband/hw/irdma/puda.c  | 2 +-
> > drivers/infiniband/hw/irdma/utils.c | 4 ++--
> >  2 files changed, 3 insertions(+), 3 deletions(-)
> 
> This still doesn't apply to the rdma tree.. You need to use the exact rdma tree, not
> wherever this came from.
> 
> Anyhow I fixed it up by hand.
> 

I am not really sure what is going on. This applies cleanly for me to the tip of for-next. Here is snippet of git log -p.

commit fc7f645ca3c1b7a7e9f8eabc83a6ee462b277194 (HEAD -> rdma-for-next)
Author: Shiraz Saleem <shiraz.saleem@xxxxxxxxx>
Date:   Tue Jun 8 12:02:30 2021 -0500

    irdma: Use list_last_entry/list_first_entry
    
    Use list_last_entry and list_first_entry instead of using prev and next
    pointers.
    
    Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
    Signed-off-by: Shiraz Saleem <shiraz.saleem@xxxxxxxxx>

diff --git a/drivers/infiniband/hw/irdma/puda.c b/drivers/infiniband/hw/irdma/puda.c
index 18057139817d..e09d3be90771 100644
--- a/drivers/infiniband/hw/irdma/puda.c
+++ b/drivers/infiniband/hw/irdma/puda.c
@@ -1419,7 +1419,7 @@ irdma_ieq_handle_partial(struct irdma_puda_rsrc *ieq, struct irdma_pfpdu *pfpdu,
 
 error:
        while (!list_empty(&pbufl)) {
-               buf = (struct irdma_puda_buf *)(pbufl.prev);
+               buf = list_last_entry(&pbufl, struct irdma_puda_buf, list);
                list_del(&buf->list);
                list_add(&buf->list, rxlist);
        }
diff --git a/drivers/infiniband/hw/irdma/utils.c b/drivers/infiniband/hw/irdma/utils.c
index 8f04347be52c..b4b91cb81cca 100644
--- a/drivers/infiniband/hw/irdma/utils.c
+++ b/drivers/infiniband/hw/irdma/utils.c
@@ -425,8 +425,8 @@ struct irdma_cqp_request *irdma_alloc_and_get_cqp_request(struct irdma_cqp *cqp,
 
        spin_lock_irqsave(&cqp->req_lock, flags);
        if (!list_empty(&cqp->cqp_avail_reqs)) {
-               cqp_request = list_entry(cqp->cqp_avail_reqs.next,
-                                        struct irdma_cqp_request, list);
+               cqp_request = list_first_entry(&cqp->cqp_avail_reqs,
+                                              struct irdma_cqp_request, list);
                list_del_init(&cqp_request->list);
        }
        spin_unlock_irqrestore(&cqp->req_lock, flags);

commit 61c7d826b81769ea57d094305c900f903768f322 (upstream_v2/for-next)
Author: Kamal Heib <kamalheib1@xxxxxxxxx>
Date:   Tue Jun 8 01:15:43 2021 +0300

    RDMA/irdma: Fix return error sign from irdma_modify_qp
    
    There is a typo in the returned error code sign from irdma_modify_qp()
    when the attr_mask is not supported - Fix it.

[....]



[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