aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Belay <ambx1@neo.rr.com>2006-02-28 16:59:10 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-02-28 20:53:43 -0800
commit8b613e1ccf1b7ac9acc73eaa07f5aeffd3c2bb8d (patch)
treee4e686791cc9cca374ff5506b58be1dee7a6a451
parent15b370c95cbc1553eec30a99a5ffb3ac3c8d7b81 (diff)
[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 <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/pnp/card.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/pnp/card.c b/drivers/pnp/card.c
index aaa568a3806..b68eef25161 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);