Re: [PATCH] mmc: prevent dangling block device from accessingstale queues

From: Pavel Machek
Date: Wed Jun 10 2009 - 17:03:06 EST


On Thu 2009-06-04 20:00:52, Stefan Bader wrote:
> Kernel: 2.6.30-rc7 based
> Worked in 2.6.28 (probably only because things went at a different speed)
>
> Testcase: Use ext3/ext4 on a SD card partitioned with one primary DOS
> partition and leave it mounted while suspend/resume.
>
> Result: After resume the partition table of the SD card has been erased.
>
> The detailed description can be found at:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/383668
>
> In essence the mmc block device frees the generic request queue before
> the last user of the gendisk has stopped using it leaving an invalid
> queue pointer which get unfortunately re-used before more requests come
> in for the old device.
>
> The bugfix will cause more I/O error messages and might not be the
> ultimate way things should work, but it prevents data from getting lost.

Thanks for finding root cause of this!
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
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/