On Wed, Mar 24, 2021 at 8:46 PM Leon Romanovsky <leon@xxxxxxxxxx> wrote: > > On Wed, Mar 24, 2021 at 12:07:59PM -0300, Jason Gunthorpe wrote: > > On Wed, Mar 24, 2021 at 04:25:24PM +0200, Leon Romanovsky wrote: > > > From: Leon Romanovsky <leonro@xxxxxxxxxx> > > > > > > Instead of manually messing with parent driver module reference > > > counting, rely on "depends on" keyword to ensure that proper > > > probe/remove chain is performed. > > > > ?? kconfig doesn't impact module ordering. > > Yeah, I was fast with the typing. > > > > > To have a proper remove chain there should be a symbol reference from > > bnxt_re to whatever the other module is > > Right, they have probe_ulp() calls or something. > > > > > > Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxx> > > > drivers/infiniband/hw/bnxt_re/Kconfig | 4 +--- > > > drivers/infiniband/hw/bnxt_re/main.c | 20 +++++--------------- > > > 2 files changed, 6 insertions(+), 18 deletions(-) > > > > > > diff --git a/drivers/infiniband/hw/bnxt_re/Kconfig b/drivers/infiniband/hw/bnxt_re/Kconfig > > > index 0feac5132ce1..b4779a6cd565 100644 > > > +++ b/drivers/infiniband/hw/bnxt_re/Kconfig > > > @@ -2,9 +2,7 @@ > > > config INFINIBAND_BNXT_RE > > > tristate "Broadcom Netxtreme HCA support" > > > depends on 64BIT > > > - depends on ETHERNET && NETDEVICES && PCI && INET && DCB > > > - select NET_VENDOR_BROADCOM > > > - select BNXT > > > + depends on ETHERNET && NETDEVICES && PCI && INET && DCB && BNXT > > > > Though this is correct, BNXT is a 'tristate' so it should be > > referenced with depends on select. > > > > > diff --git a/drivers/infiniband/hw/bnxt_re/main.c b/drivers/infiniband/hw/bnxt_re/main.c > > > index fdb8c2478258..a81adb07e5d9 100644 > > > +++ b/drivers/infiniband/hw/bnxt_re/main.c > > > @@ -561,13 +561,6 @@ static struct bnxt_re_dev *bnxt_re_from_netdev(struct net_device *netdev) > > > return container_of(ibdev, struct bnxt_re_dev, ibdev); > > > } > > > > > > -static void bnxt_re_dev_unprobe(struct net_device *netdev, > > > - struct bnxt_en_dev *en_dev) > > > -{ > > > - dev_put(netdev); > > > - module_put(en_dev->pdev->driver->driver.owner); > > > -} > > > > And you are right to be wondering WTF is this > > > > Jason Hi Leon and Jason, Still trying to understand but what's the big idea here may be I can help. -- -Regards Devesh
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature