pcmcia: Fix broken abuse of dev->driver_data
authorAlan Cox <alan@redhat.com>
Mon, 22 Sep 2008 14:58:14 +0000 (15:58 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 22 Sep 2008 15:42:50 +0000 (08:42 -0700)
commitcec5eb7be3a104fffd27ca967ee8e15a123050e2
treebf5579c6e47a120d5ba59aa6f90bb29ad96817f5
parentae9111912500db9fcc244ec16c3d7e471c551f52
pcmcia: Fix broken abuse of dev->driver_data

PCMCIA abuses dev->private_data in the probe methods. Unfortunately it
continues to abuse it after calling drv->probe() which leads to crashes and
other nasties (such as bogus probes of multifunction devices) giving errors like

pcmcia: registering new device pcmcia0.1
kernel: 0.1: GetNextTuple: No more items

Extract the passed data before calling the driver probe function that way
we don't blow up when the driver reuses dev->private_data as its right.

As its close to the final release just move the hack so it works out,
hopefully someone will be sufficiently embarrassed to produce a nice rework
for 2.6.28.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/pcmcia/ds.c