mbox series

[for-next,0/7] Refactor control path of bnxt_re driver

Message ID 1579845165-18002-1-git-send-email-devesh.sharma@broadcom.com (mailing list archive)
Headers show
Series Refactor control path of bnxt_re driver | expand

Message

Devesh Sharma Jan. 24, 2020, 5:52 a.m. UTC
This is the first series out of few more forthcoming series to refactor
Broadcom's RoCE driver. This series contains patches to refactor control
path. Since this is first series, there may be few code section which may
look redundant or overkill but those will be taken care in future patche
series.

These patches apply clean on tip of for-next branch.
Each patch in this series is tested against user and kernel functionality.

Devesh Sharma (7):
  RDMA/bnxt_re: Refactor queue pair creation code
  RDMA/bnxt_re: Replace chip context structure with pointer
  RDMA/bnxt_re: Refactor hardware queue memory allocation
  RDMA/bnxt_re: Refactor net ring allocation function
  RDMA/bnxt_re: Refactor command queue management code
  RDMA/bnxt_re: Refactor notification queue management code
  RDMA/bnxt_re: Refactor doorbell management functions

 drivers/infiniband/hw/bnxt_re/bnxt_re.h    |  24 +-
 drivers/infiniband/hw/bnxt_re/ib_verbs.c   | 670 +++++++++++++++++++----------
 drivers/infiniband/hw/bnxt_re/main.c       | 134 +++---
 drivers/infiniband/hw/bnxt_re/qplib_fp.c   | 423 +++++++++---------
 drivers/infiniband/hw/bnxt_re/qplib_fp.h   |  94 ++--
 drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 474 ++++++++++++--------
 drivers/infiniband/hw/bnxt_re/qplib_rcfw.h |  85 ++--
 drivers/infiniband/hw/bnxt_re/qplib_res.c  | 475 ++++++++++++--------
 drivers/infiniband/hw/bnxt_re/qplib_res.h  | 145 ++++++-
 drivers/infiniband/hw/bnxt_re/qplib_sp.c   |  52 ++-
 10 files changed, 1579 insertions(+), 997 deletions(-)

Comments

Jason Gunthorpe Jan. 25, 2020, 6:04 p.m. UTC | #1
On Fri, Jan 24, 2020 at 12:52:38AM -0500, Devesh Sharma wrote:
> This is the first series out of few more forthcoming series to refactor
> Broadcom's RoCE driver. This series contains patches to refactor control
> path. Since this is first series, there may be few code section which may
> look redundant or overkill but those will be taken care in future patche
> series.
> 
> These patches apply clean on tip of for-next branch.
> Each patch in this series is tested against user and kernel functionality.
> 
> Devesh Sharma (7):
>   RDMA/bnxt_re: Refactor queue pair creation code
>   RDMA/bnxt_re: Replace chip context structure with pointer
>   RDMA/bnxt_re: Refactor hardware queue memory allocation
>   RDMA/bnxt_re: Refactor net ring allocation function
>   RDMA/bnxt_re: Refactor command queue management code
>   RDMA/bnxt_re: Refactor notification queue management code
>   RDMA/bnxt_re: Refactor doorbell management functions
> 
>  drivers/infiniband/hw/bnxt_re/bnxt_re.h    |  24 +-
>  drivers/infiniband/hw/bnxt_re/ib_verbs.c   | 670 +++++++++++++++++++----------
>  drivers/infiniband/hw/bnxt_re/main.c       | 134 +++---
>  drivers/infiniband/hw/bnxt_re/qplib_fp.c   | 423 +++++++++---------
>  drivers/infiniband/hw/bnxt_re/qplib_fp.h   |  94 ++--
>  drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 474 ++++++++++++--------
>  drivers/infiniband/hw/bnxt_re/qplib_rcfw.h |  85 ++--
>  drivers/infiniband/hw/bnxt_re/qplib_res.c  | 475 ++++++++++++--------
>  drivers/infiniband/hw/bnxt_re/qplib_res.h  | 145 ++++++-
>  drivers/infiniband/hw/bnxt_re/qplib_sp.c   |  52 ++-
>  10 files changed, 1579 insertions(+), 997 deletions(-)

Usually when you 'refactor' something the code gets smaller, not
larger. What is going on here?

Jason
Devesh Sharma Jan. 27, 2020, 7:39 a.m. UTC | #2
On Sat, Jan 25, 2020 at 11:34 PM Jason Gunthorpe <jgg@mellanox.com> wrote:
>
> On Fri, Jan 24, 2020 at 12:52:38AM -0500, Devesh Sharma wrote:
> > This is the first series out of few more forthcoming series to refactor
> > Broadcom's RoCE driver. This series contains patches to refactor control
> > path. Since this is first series, there may be few code section which may
> > look redundant or overkill but those will be taken care in future patche
> > series.
> >
> > These patches apply clean on tip of for-next branch.
> > Each patch in this series is tested against user and kernel functionality.
> >
> > Devesh Sharma (7):
> >   RDMA/bnxt_re: Refactor queue pair creation code
> >   RDMA/bnxt_re: Replace chip context structure with pointer
> >   RDMA/bnxt_re: Refactor hardware queue memory allocation
> >   RDMA/bnxt_re: Refactor net ring allocation function
> >   RDMA/bnxt_re: Refactor command queue management code
> >   RDMA/bnxt_re: Refactor notification queue management code
> >   RDMA/bnxt_re: Refactor doorbell management functions
> >
> >  drivers/infiniband/hw/bnxt_re/bnxt_re.h    |  24 +-
> >  drivers/infiniband/hw/bnxt_re/ib_verbs.c   | 670 +++++++++++++++++++----------
> >  drivers/infiniband/hw/bnxt_re/main.c       | 134 +++---
> >  drivers/infiniband/hw/bnxt_re/qplib_fp.c   | 423 +++++++++---------
> >  drivers/infiniband/hw/bnxt_re/qplib_fp.h   |  94 ++--
> >  drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 474 ++++++++++++--------
> >  drivers/infiniband/hw/bnxt_re/qplib_rcfw.h |  85 ++--
> >  drivers/infiniband/hw/bnxt_re/qplib_res.c  | 475 ++++++++++++--------
> >  drivers/infiniband/hw/bnxt_re/qplib_res.h  | 145 ++++++-
> >  drivers/infiniband/hw/bnxt_re/qplib_sp.c   |  52 ++-
> >  10 files changed, 1579 insertions(+), 997 deletions(-)
>
> Usually when you 'refactor' something the code gets smaller, not
> larger. What is going on here?
I agree with this fact however this series is adding object attribute
structures at various places and the attribute initialization before
object creation is adding up code lines.
>
> Jason