On Mon, Jun 22, 2009 at 12:22:03AM +0800, dingdinghua wrote: > > At committing phase, we call jbd2_journal_write_metadata_buffer to > prepare log block's buffer_head, in this function, new_bh->b_data is set > to b_frozen_data or bh_in->b_data. We call "jbd_unlock_bh_state(bh_in)" > too early, since at this point , we haven't file bh_in to BJ_shadow list, > and we may set new_bh->b_data to bh_in->b_data, at this time, another > thread may call get write access of bh_in, modify bh_in->b_data and > dirty it. So , if new_bh->b_data is set to bh_in->b_data, the committing > transaction may flush the newly modified buffer content to disk, > preserve work done in jbd2_journal_get_write_access is useless. jbd also > has this problem. > > here is the patch based on kernel version 2.6.30: This patch is completely whitespace damaged. Could you resend it using a mail user agent that doesn't damage patches, please? Thanks!! - Ted -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html