Subject: Re: [PATCH rdma-next v2 0/5] Get rid of custom made module dependency

From: Leon Romanovsky <[email-masked]>
Date: Sat, 3 Apr 2021 14:42:05 +0300

On Sat, Apr 03, 2021 at 03:52:13PM +0530, Devesh Sharma wrote:
> On Thu, Apr 1, 2021 at 12:27 PM Leon Romanovsky <[email-masked]> wrote:
> >
> > From: Leon Romanovsky <[email-masked]>
> >
> > Changelog:
> > v2:
> >  * kbuild spotted that I didn't delete all code in patch #5, so deleted
> >    even more ulp_ops derefences.
> > v1: https://lore.kernel.org/linux-rdma/[email-masked]
> >  * Go much deeper and removed useless ULP indirection
> > v0: https://lore.kernel.org/linux-rdma/[email-masked]
> > -----------------------------------------------------------------------
> >
> > The following series fixes issue spotted in [1], where bnxt_re driver
> > messed with module reference counting in order to implement symbol
> > dependency of bnxt_re and bnxt modules. All of this is done, when in
> > upstream we have only one ULP user of that bnxt module. The simple
> > declaration of exported symbol would do the trick.
> >
> > This series removes that custom module_get/_put, which is not supposed
> > to be in the driver from the beginning and get rid of nasty indirection
> > logic that isn't relevant for the upstream code.
> >
> > Such small changes allow us to simplify the bnxt code and my hope that
> > Devesh will continue where I stopped and remove struct bnxt_ulp_ops too.
> >
> > Thanks
> >
> > [1] https://lore.kernel.org/linux-rdma/[email-masked]
> >
> > Leon Romanovsky (5):
> >   RDMA/bnxt_re: Depend on bnxt ethernet driver and not blindly select it
> >   RDMA/bnxt_re: Create direct symbolic link between bnxt modules
> >   RDMA/bnxt_re: Get rid of custom module reference counting
> >   net/bnxt: Remove useless check of non-existent ULP id
> >   net/bnxt: Use direct API instead of useless indirection
> >
> >  drivers/infiniband/hw/bnxt_re/Kconfig         |   4 +-
> >  drivers/infiniband/hw/bnxt_re/main.c          |  93 ++-----
> >  drivers/net/ethernet/broadcom/bnxt/bnxt.c     |   4 +-
> >  drivers/net/ethernet/broadcom/bnxt/bnxt.h     |   1 -
> >  drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c | 245 +++++++-----------
> >  drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.h |  32 +--
> >  6 files changed, 119 insertions(+), 260 deletions(-)
> 
> Hi Leon,
> 
> After a couple of internal discussions we reached a conclusion to
> implement the Auxbus driver interface and fix the problem once and for
> all.

Thanks Devesh,

Jason, it looks like we can proceed with this patchset, because in
auxbus mode this module refcount and ULP indirection logics will be
removed anyway.

Thanks

> > --
> > 2.30.2
> -- 
> -Regards
> Devesh