mirror of https://github.com/vitalif/e2fsprogs
![]() It turns out that there are some serious problems with the on-disk format of journal checksum v2. The foremost is that the function to calculate descriptor tag size returns sizes that are too big. This causes alignment issues on some architectures and is compounded by the fact that some parts of jbd2 use the structure size (incorrectly) to determine the presence of a 64bit journal instead of checking the feature flags. These errors regrettably lead to the journal corruption reported by Mr. Reardon. Therefore, introduce journal checksum v3, which enlarges the descriptor block tag format to allow for full 32-bit checksums of journal blocks, fix the journal tag function to return the correct sizes, and fix the jbd2 recovery code to use feature flags to determine 64bitness. Add a few function helpers so we don't have to open-code quite so many pieces. Switching to a 16-byte block size was found to increase journal size overhead by a maximum of 0.1%, to convert a 32-bit journal with no checksumming to a 32-bit journal with checksum v3 enabled. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reported-by: TR Reardon <thomas_reardon@hotmail.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu> |
||
---|---|---|
config | ||
contrib | ||
debian | ||
debugfs | ||
doc | ||
e2fsck | ||
ext2ed | ||
include/nonunix | ||
install-utils | ||
intl | ||
lib | ||
misc | ||
po | ||
resize | ||
tests | ||
util | ||
.gitignore | ||
.hgignore | ||
.missing-copyright | ||
.release-checklist | ||
ABOUT-NLS | ||
COPYING | ||
INSTALL | ||
INSTALL.elfbin | ||
MCONFIG.in | ||
Makefile.in | ||
README | ||
README.subset | ||
RELEASE-NOTES | ||
SHLIBS | ||
SUBMITTING-PATCHES | ||
TODO | ||
acinclude.m4 | ||
aclocal.m4 | ||
configure | ||
configure.in | ||
depfix.sed | ||
e2fsprogs.lsm | ||
e2fsprogs.spec.in | ||
version.h | ||
wordwrap.pl |
README
This is the new version (1.42.12) of the second extended file system management programs. From time to time, I release new versions of e2fsprogs, to fix bugs and to make the utilities more robust. You can always find information about the latest version at the the e2fsprogs web page, which is: http://e2fsprogs.sourceforge.net The INSTALL file has instructions on building and installing e2fsprogs. Provisions for building Red Hat RPMs and Debian dpkg files are supplied as well. In case of bugs in these programs, please contact Ted Ts'o at tytso@mit.edu or tytso@alum.mit.edu. See the e2fsck man page for suggestions of what sort of information to include when submitting bug reports for these programs.