[PATCH] fix pcmcia_device_remove oops

From: Hugh Dickins
Date: Fri Mar 10 2006 - 16:11:56 EST


Fix pcmcia_device_remove NULL pointer dereference at shutdown.

Signed-off-by: Hugh Dickins <hugh@xxxxxxxxxxx>
---
Unlike its older brother, this oops has not yet graduated from -mm to
mainline. I've not yet seen my cards working in -mm (maybe intermittent
anomaly at my end), and saw oops when removing and inserting card; but
follow those issues up another time, this is a good start just for
closing down the box.

drivers/pcmcia/ds.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)

--- 2.6.16-rc5-mm3/drivers/pcmcia/ds.c 2006-03-07 11:43:21.000000000 +0000
+++ linux/drivers/pcmcia/ds.c 2006-03-10 17:40:04.000000000 +0000
@@ -464,7 +464,7 @@ static int pcmcia_device_remove(struct d
* all devices
*/
did = (struct pcmcia_device_id *) p_dev->dev.driver_data;
- if ((did->match_flags & PCMCIA_DEV_ID_MATCH_DEVICE_NO) &&
+ if (did && (did->match_flags & PCMCIA_DEV_ID_MATCH_DEVICE_NO) &&
(p_dev->socket->device_count != 0) &&
(p_dev->device_no == 0))
pcmcia_card_remove(p_dev->socket, p_dev);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/