Re: [PATCH] platform driver:fix incorrect use of 'platform_bus_type' with 'struct device_driver'

From: David Brownell
Date: Fri Feb 06 2009 - 12:59:35 EST


On Friday 06 February 2009, tom.leiming@xxxxxxxxx wrote:
> From: Ming Lei <tom.leiming@xxxxxxxxx>
>
> This patch fixes the bug reported in
>         http://bugzilla.kernel.org/show_bug.cgi?id=11681.
>
> "Lots of device drivers register a 'struct device_driver' with
> the '.bus' member set to '&platform_bus_type'. This is wrong,
> since the platform_bus functions expect the 'struct device_driver'
> to be wrapped up in a 'struct platform_driver' which provides
> some additional callbacks (like suspend_late, resume_early).
> The effect may be that platform_suspend_late() uses bogus data
> outside the device_driver struct as a pointer pointer to the
> device driver's suspend_late() function or other hard to
> reproduce failures."(Lothar Wassmann)
>
> Signed-off-by: Ming Lei <tom.leiming@xxxxxxxxx>

I just glanced at this ... but those parts looked like
good fixes to this family of bugs. Thanks.

- Dave

--
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/