[PATCH] Fix oops in pata_pcmcia
authorAlan <alan@lxorguk.ukuu.org.uk>
Wed, 21 Feb 2007 16:41:23 +0000 (16:41 +0000)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Mon, 26 Feb 2007 21:02:08 +0000 (13:02 -0800)
The change to the devres layer re-orders the execution of cleanup
functions and in turn causes the pcmcia layer to oops as it zaps a
pointer now needed later on. We simply leave the pointer alone.

Signed-off-by: Alan Cox <alan@redhat.com>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/ata/pata_pcmcia.c

index 36468ec6454cad8606a7908bb3df959997647b48..8928a6dfac50351a291f514a3bf575eea72aede7 100644 (file)
@@ -308,7 +308,6 @@ static void pcmcia_remove_one(struct pcmcia_device *pdev)
                if (info->ndev) {
                        struct ata_host *host = dev_get_drvdata(dev);
                        ata_host_detach(host);
                if (info->ndev) {
                        struct ata_host *host = dev_get_drvdata(dev);
                        ata_host_detach(host);
-                       dev_set_drvdata(dev, NULL);
                }
                info->ndev = 0;
                pdev->priv = NULL;
                }
                info->ndev = 0;
                pdev->priv = NULL;