Comment 2 for bug 857170

Revision history for this message
Herton R. Krzesinski (herton) wrote :

I know nothing about powerpc ISA/arch, but it seems the crash point is NIP [c00000000025adbc] .blkdev_get+0x16c/0x2c0

Since there is no ddebs built for powerpc, I built myself using same natty toolchain, this is what gdb points at blkdev_get+0x16c:
(gdb) l *(blkdev_get+0x16c)
0xc00000000025adbc is in blkdev_get (/home/herton/ubuntu-natty/fs/block_dev.c:1270).
1265 * write holder makes the write_holder state stick until
1266 * all are released. This is good enough and tracking
1267 * individual writeable reference is too fragile given the
1268 * way @mode is used in blkdev_get/put().
1269 */
1270 if ((disk->flags & GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE) &&
1271 !res && (mode & FMODE_WRITE) && !bdev->bd_write_holder) {
1272 bdev->bd_write_holder = true;
1273 disk_block_events(disk);
1274 }

Which means likely this bug will be fixed by cherry-picking commit 4c49ff3 upstream on natty.

I'll build a test kernel on Monday with the fix and ask you try it.