The code path that is being patched in the ext4_write_inode() function is new to 2.6.32 and does not exist in Karmic.
It may be possible (though unlikely), that the read only non-journaled case calling ext4_force_commit is causing the corruption as in the 2.6.32 patch this case is short circuited returning without doing anything, however in 2.6.32 this code path is short circuiting on sync_dirty_buffers() not ext4_force_commit.
I have attached the patch reworked for 2.6.31 short circuiting the read only non-journaled case but I need to evaluate the code more.
The code path that is being patched in the ext4_write_inode() function is new to 2.6.32 and does not exist in Karmic.
It may be possible (though unlikely), that the read only non-journaled case calling ext4_force_commit is causing the corruption as in the 2.6.32 patch this case is short circuited returning without doing anything, however in 2.6.32 this code path is short circuiting on sync_dirty_ buffers( ) not ext4_force_commit.
I have attached the patch reworked for 2.6.31 short circuiting the read only non-journaled case but I need to evaluate the code more.