Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 736603ab authored by Theodore Ts'o's avatar Theodore Ts'o
Browse files

jbd2: Add commit time into the commit block



Carlo Wood has demonstrated that it's possible to recover deleted
files from the journal.  Something that will make this easier is if we
can put the time of the commit into commit block.

Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
parent 4db9c54a
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -112,6 +112,7 @@ static int journal_submit_commit_record(journal_t *journal,
	struct buffer_head *bh;
	int ret;
	int barrier_done = 0;
	struct timespec now = current_kernel_time();

	if (is_journal_aborted(journal))
		return 0;
@@ -126,6 +127,8 @@ static int journal_submit_commit_record(journal_t *journal,
	tmp->h_magic = cpu_to_be32(JBD2_MAGIC_NUMBER);
	tmp->h_blocktype = cpu_to_be32(JBD2_COMMIT_BLOCK);
	tmp->h_sequence = cpu_to_be32(commit_transaction->t_tid);
	tmp->h_commit_sec = cpu_to_be64(now.tv_sec);
	tmp->h_commit_nsec = cpu_to_be32(now.tv_nsec);

	if (JBD2_HAS_COMPAT_FEATURE(journal,
				    JBD2_FEATURE_COMPAT_CHECKSUM)) {
+2 −0
Original line number Diff line number Diff line
@@ -168,6 +168,8 @@ struct commit_header {
	unsigned char   h_chksum_size;
	unsigned char 	h_padding[2];
	__be32 		h_chksum[JBD2_CHECKSUM_BYTES];
	__be64		h_commit_sec;
	__be32		h_commit_nsec;
};

/*