diff options
| author | Greg Kroah-Hartman <greg@kroah.com> | 2002-09-16 00:16:16 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <greg@kroah.com> | 2002-09-16 00:16:16 -0700 |
| commit | 7c3ccad2a8cf7724ebd90ef9c0faab665d765dc9 (patch) | |
| tree | 4dad67ec0e92d11e09bedd3d7de69fab0d32872c /drivers/base | |
| parent | c257aa42f74d69d760ef234c7d416ab2270bc582 (diff) | |
Driver Model: fix oops when device is removed from system
Diffstat (limited to 'drivers/base')
| -rw-r--r-- | drivers/base/core.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c index e9f7079058d4..977c4b9fe92a 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -103,12 +103,13 @@ static void device_detach(struct device * dev) devclass_remove_device(dev); spin_lock(&device_lock); drv = dev->driver; - dev->driver = NULL; spin_unlock(&device_lock); /* detach from driver */ if (drv && drv->remove) drv->remove(dev); + + dev->driver = NULL; } } |
