Re: [PATCH net-next 1/6] bnxt_en: Check devlink allocation and registration status

From: Jakub Kicinski
Date: Thu Sep 23 2021 - 21:40:02 EST


On Fri, 24 Sep 2021 02:11:19 +0300 Leon Romanovsky wrote:
> > > @@ -835,9 +837,6 @@ void bnxt_dl_unregister(struct bnxt *bp)
> > > {
> > > struct devlink *dl = bp->dl;
> > >
> > > - if (!dl)
> > > - return;
> > > -
> >
> > minor nit: There's obviously nothing incorrect about doing this (and
> > adding the additional error label in the cleanup code above), but bnxt
> > has generally adopted a style of having cleanup functions being
> > idempotent. It generally makes error handling simpler and less error
> > prone.
>
> I would argue that opposite is true. Such "impossible" checks hide unwind
> flow errors, missing releases e.t.c.

+1, fwiw