Messages in this thread | | | Date | Thu, 21 Feb 2008 06:47:21 +0100 | From | Rene Herman <> | Subject | Re: pnp_bus_resume(): inconsequent NULL checking |
| |
On 20-02-08 17:59, Bjorn Helgaas wrote:
> I agree with you that we can just delete the dev->protocol tests > completely. So I'd rather see something like this (built but untested): > > > PNP: remove dev->protocol NULL checks > > Every PNP device should have a valid protocol pointer. If it doesn't, > something's wrong and we should oops so we can find and fix the problem. > > Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Ack from a functional standpoint: we are oopsing in pnp_start/stop_dev _anyway_ if the protocol pointer isn't set.
Will you coach this upstream? A 2.6.25-rc1 change from me made the coverity checker pick up on it which might be considered enough of an excuse to call it a regression and submit this as a fix...
> Index: work6/drivers/pnp/driver.c > =================================================================== > --- work6.orig/drivers/pnp/driver.c 2008-02-20 09:46:01.000000000 -0700 > +++ work6/drivers/pnp/driver.c 2008-02-20 09:46:28.000000000 -0700 > @@ -167,7 +167,7 @@ > return error; > } > > - if (pnp_dev->protocol && pnp_dev->protocol->suspend) > + if (pnp_dev->protocol->suspend) > pnp_dev->protocol->suspend(pnp_dev, state); > return 0; > } > @@ -181,7 +181,7 @@ > if (!pnp_drv) > return 0; > > - if (pnp_dev->protocol && pnp_dev->protocol->resume) > + if (pnp_dev->protocol->resume) > pnp_dev->protocol->resume(pnp_dev); > > if (pnp_can_write(pnp_dev)) { >
Rene.
| |