aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDominik Brodowski <linux@dominikbrodowski.net>2006-04-04 05:09:26 -0400
committerDominik Brodowski <linux@dominikbrodowski.net>2006-04-21 18:49:15 -0400
commita0aab14322a74ab5665704c6155bf48fbc38f445 (patch)
treeb0d46b3a01575da591444b404775a06af986d89d
parent90ff87008df12da7f2486178d0dee13745c1de6b (diff)
[PATCH] pcmcia: do not set dev_node to NULL too early
If we set dev_node to NULL too early, some drivers which used this to determine whether unregister_netdev() needs to be called fail when removing a PCMCIA card. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
-rw-r--r--drivers/pcmcia/ds.c2
-rw-r--r--drivers/pcmcia/pcmcia_resource.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index 7b7428c77d7a..0f98cab35186 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia/ds.c
@@ -476,6 +476,8 @@ static int pcmcia_device_remove(struct device * dev)
476 if (p_drv->remove) 476 if (p_drv->remove)
477 p_drv->remove(p_dev); 477 p_drv->remove(p_dev);
478 478
479 p_dev->dev_node = NULL;
480
479 /* check for proper unloading */ 481 /* check for proper unloading */
480 if (p_dev->_irq || p_dev->_io || p_dev->_locked) 482 if (p_dev->_irq || p_dev->_io || p_dev->_locked)
481 printk(KERN_INFO "pcmcia: driver %s did not release config properly\n", 483 printk(KERN_INFO "pcmcia: driver %s did not release config properly\n",
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index 45063b4e5b78..2539c0b23062 100644
--- a/drivers/pcmcia/pcmcia_resource.c
+++ b/drivers/pcmcia/pcmcia_resource.c
@@ -947,7 +947,5 @@ void pcmcia_disable_device(struct pcmcia_device *p_dev) {
947 pcmcia_release_irq(p_dev, &p_dev->irq); 947 pcmcia_release_irq(p_dev, &p_dev->irq);
948 if (&p_dev->win) 948 if (&p_dev->win)
949 pcmcia_release_window(p_dev->win); 949 pcmcia_release_window(p_dev->win);
950
951 p_dev->dev_node = NULL;
952} 950}
953EXPORT_SYMBOL(pcmcia_disable_device); 951EXPORT_SYMBOL(pcmcia_disable_device);