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.
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: herton/ ubuntu- natty/fs/ block_dev. c:1270) . BLOCK_EVENTS_ ON_EXCL_ WRITE) && bd_write_ holder) { write_holder = true; events( disk);
(gdb) l *(blkdev_get+0x16c)
0xc00000000025adbc is in blkdev_get (/home/
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_
1271 !res && (mode & FMODE_WRITE) && !bdev->
1272 bdev->bd_
1273 disk_block_
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.