Messages in this thread | | | Date | Thu, 1 Mar 2018 17:21:30 +0100 | From | Greg KH <> | Subject | Re: [PATCH 2/4] staging: most: Replace calls to BUG_ON() with WARN_ONCE() and return. |
| |
On Fri, Feb 23, 2018 at 11:58:33PM -0800, Quytelda Kahja wrote: > Replace calls to BUG_ON() used to check for NULL pointers with WARN_ONCE() > followed by a return.
Are you sure this will work?
> > Signed-off-by: Quytelda Kahja <quytelda@tamalin.org> > --- > drivers/staging/most/core.c | 13 ++++++++++--- > 1 file changed, 10 insertions(+), 3 deletions(-) > > diff --git a/drivers/staging/most/core.c b/drivers/staging/most/core.c > index 18157dd80324..3f65390a6e17 100644 > --- a/drivers/staging/most/core.c > +++ b/drivers/staging/most/core.c > @@ -916,7 +916,11 @@ static void arm_mbo(struct mbo *mbo) > unsigned long flags; > struct most_channel *c; > > - BUG_ON((!mbo) || (!mbo->context)); > + if (WARN_ONCE(!mbo || !mbo->context, > + "Bad mbo or missing channel reference.\n")) { > + return;
How is the code supposed to recover from this major problem?
> + } > + > c = mbo->context; > > if (c->is_poisoned) { > @@ -1001,7 +1005,7 @@ static int arm_mbo_chain(struct most_channel *c, int dir, > void most_submit_mbo(struct mbo *mbo) > { > if (WARN_ONCE(!mbo || !mbo->context, > - "bad mbo or missing channel reference\n")) > + "Bad mbo or missing channel reference.\n"))
You did something different here that you did not describe in your changelog :(
thanks,
greg k-h
| |