I think it's not only a performance issue but more important, a correctness issue. Revoke table is used for preventing the wrong replay of journal which cause data corruption: If block A has been journalled its modification, committed to journal and hasn't been checkpointed, and in later transactions block A is freed and reused for data in no-journalled-data mode, then If we don't have revoke table which recording the releasing event, replay of journal will overwrite the new data, which causing data corruption. 2011/4/26 Yongqiang Yang <xiaoqiangnk@xxxxxxxxx>: > AFAIK, it can accelerate the recovering process. If a block is in the > revoke table of a transaction t1 and t1 is committed, then the there > is no need to recover the block in transactions which is earlier than > t1. > > On Tue, Apr 26, 2011 at 4:29 PM, Niraj Kulkarni > <kulkarniniraj14@xxxxxxxxx> wrote: >> Hi all, >> I am new to fs development. I am trying to modify the journal structure >> of JBD. While analyzing the code, I could understand most of the things, but >> I am not able to understand the need of revoke mechanism. Can anybody >> enlighten me on this issue? >> >> Regards >> Niraj >> -- >> 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 >> > > > > -- > Best Wishes > Yongqiang Yang > -- > 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 > -- Ding Dinghua -- 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