From: Adam Belay Date: Wed, 1 Mar 2006 00:59:10 +0000 (-0800) Subject: [PATCH] pnp bus type fix X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=8b613e1ccf1b7ac9acc73eaa07f5aeffd3c2bb8d;p=deliverable%2Flinux.git [PATCH] pnp bus type fix This is Adam's pnp probing fix. It's been reported to fix hangs on several people's machines. I don't know if it's official or final, and Adam isn't contactable at present. But I'm not aware of the patch causing any regressions. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/pnp/card.c b/drivers/pnp/card.c index aaa568a3806e..b68eef251614 100644 --- a/drivers/pnp/card.c +++ b/drivers/pnp/card.c @@ -303,13 +303,11 @@ found: down_write(&dev->dev.bus->subsys.rwsem); dev->card_link = clink; dev->dev.driver = &drv->link.driver; - if (drv->link.driver.probe) { - if (drv->link.driver.probe(&dev->dev)) { - dev->dev.driver = NULL; - dev->card_link = NULL; - up_write(&dev->dev.bus->subsys.rwsem); - return NULL; - } + if (pnp_bus_type.probe(&dev->dev)) { + dev->dev.driver = NULL; + dev->card_link = NULL; + up_write(&dev->dev.bus->subsys.rwsem); + return NULL; } device_bind_driver(&dev->dev); up_write(&dev->dev.bus->subsys.rwsem);