linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] jbd2 checksum-related fixes
@ 2014-08-15 20:43 Darrick J. Wong
  2014-08-15 20:43 ` [PATCH 1/2] jbd2: fix infinite loop when recovering corrupt journal blocks Darrick J. Wong
  2014-08-15 20:43 ` [PATCH 2/2] jbd2: fix descriptor block size handling errors with journal_csum Darrick J. Wong
  0 siblings, 2 replies; 5+ messages in thread
From: Darrick J. Wong @ 2014-08-15 20:43 UTC (permalink / raw)
  To: tytso, darrick.wong; +Cc: linux-ext4

Hi all,

This is a pair of patches to jbd2 that fix some problems that have
been found when journal checksumming is enabled.

Patch 1 fixes a longstanding bug -- journal recovery goes into an
infinite loop when a non-revoked journal block fails its metadata
checksum test.  Instead, keep replaying the journal and proceed to the
e2fsck.

Patch 2 introduces journal_csum v3 to fix numerous journal block
tag size handling bugs.  The test of 64bitness should not rely on
guessing the tag size when it could simply query the feature flags.
Furthermore, the journal_csum v2 structure had memory access alignment
issues.  Just replace this all with a 16-byte tag with everything in
it; the overhead for checksums is no more than 0.1%.

Patches are against 3.16, and have been xfstest'd and checked against
debugfs creating test journals (see e2fsprogs patchbomb 5.1 later
tonight).

Comments and questions are, as always, welcome.

--D

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-08-26  2:44 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-15 20:43 [PATCH 0/2] jbd2 checksum-related fixes Darrick J. Wong
2014-08-15 20:43 ` [PATCH 1/2] jbd2: fix infinite loop when recovering corrupt journal blocks Darrick J. Wong
2014-08-26  2:44   ` Theodore Ts'o
2014-08-15 20:43 ` [PATCH 2/2] jbd2: fix descriptor block size handling errors with journal_csum Darrick J. Wong
2014-08-26  2:44   ` Theodore Ts'o

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).