1*6a54128fSAndroid Build Coastguard WorkerE2fsprogs 1.44.0 (March 7, 2018) 2*6a54128fSAndroid Build Coastguard Worker================================ 3*6a54128fSAndroid Build Coastguard Worker 4*6a54128fSAndroid Build Coastguard WorkerUpdates/Fixes since v1.43.9: 5*6a54128fSAndroid Build Coastguard Worker 6*6a54128fSAndroid Build Coastguard WorkerUI and Features 7*6a54128fSAndroid Build Coastguard Worker--------------- 8*6a54128fSAndroid Build Coastguard Worker 9*6a54128fSAndroid Build Coastguard WorkerE2fsprogs now supports the large_dir (INCOMPAT_LARGEDIR) feature. This 10*6a54128fSAndroid Build Coastguard Workerfeature allows larger directories to be created, both with directory 11*6a54128fSAndroid Build Coastguard Workersizes over 2GB and and a maximum htree depth of 3 instead of the 12*6a54128fSAndroid Build Coastguard Workercurrent limit of 2. These features are needed in order to exceed 13*6a54128fSAndroid Build Coastguard Workerthe currently limit of approximately 10M entries in a single 14*6a54128fSAndroid Build Coastguard Workerdirectory for 4KB blocksize (~100k for 1KB). 15*6a54128fSAndroid Build Coastguard Worker 16*6a54128fSAndroid Build Coastguard WorkerE2fsprogs now supports the ea_inode (INCOMPAT_EA_INODE) feature, which 17*6a54128fSAndroid Build Coastguard Workerstores large extended attributes in an external inode instead of a 18*6a54128fSAndroid Build Coastguard Workersingle data block. This is backwards compatible with a Lustre file 19*6a54128fSAndroid Build Coastguard Workersystem feature, but it has been extended to support deduplicating 20*6a54128fSAndroid Build Coastguard Workerextended attribute values which are used in multiple inodes. 21*6a54128fSAndroid Build Coastguard Worker 22*6a54128fSAndroid Build Coastguard WorkerThe metadata_csum feature (RO_COMPAT_METADATA_CSUM) is now enabled by 23*6a54128fSAndroid Build Coastguard Workerdefault by mke2fs. 24*6a54128fSAndroid Build Coastguard Worker 25*6a54128fSAndroid Build Coastguard WorkerThe resize2fs program will no longer complain about resizing bigalloc 26*6a54128fSAndroid Build Coastguard Workerfile systems as being dangerous when doing an on-line resize (since this 27*6a54128fSAndroid Build Coastguard Workeris purely a kernel feature). 28*6a54128fSAndroid Build Coastguard Worker 29*6a54128fSAndroid Build Coastguard WorkerDebugfs's ls command will now print the high bits of the inode's mode 30*6a54128fSAndroid Build Coastguard Workerbits. 31*6a54128fSAndroid Build Coastguard Worker 32*6a54128fSAndroid Build Coastguard WorkerFixes 33*6a54128fSAndroid Build Coastguard Worker----- 34*6a54128fSAndroid Build Coastguard Worker 35*6a54128fSAndroid Build Coastguard WorkerFixed some potential buffer overrun bugs in the blkid library and in the 36*6a54128fSAndroid Build Coastguard Workerfsck program. 37*6a54128fSAndroid Build Coastguard Worker 38*6a54128fSAndroid Build Coastguard WorkerThere were some corner cases which tune2fs wouldn't correctly handle 39*6a54128fSAndroid Build Coastguard Workerwhen operating on a file system which was not cleanly mounted and thus 40*6a54128fSAndroid Build Coastguard Workerrequired running the journal because it could be modified. Tune2fs will 41*6a54128fSAndroid Build Coastguard Workernow run the journal before trying to change the superblock, and if the 42*6a54128fSAndroid Build Coastguard Workerfile system needs to be checked after the journal has been replayed, it 43*6a54128fSAndroid Build Coastguard Workerwill require it before proceeding. Also if the file system is busy (for 44*6a54128fSAndroid Build Coastguard Workerexample, because it is in use by Lustre), but is not present in the 45*6a54128fSAndroid Build Coastguard Worker/proc/mounts or /etc/mtab, tune2fs will not try to replay the journal, 46*6a54128fSAndroid Build Coastguard Workersince this could do real damage if it the file system is being actively 47*6a54128fSAndroid Build Coastguard Workermodified by the kernel. 48*6a54128fSAndroid Build Coastguard Worker 49*6a54128fSAndroid Build Coastguard WorkerThe libss library (used by debugfs) now supports the version 7 of the 50*6a54128fSAndroid Build Coastguard Workerlibreadline shared library. 51*6a54128fSAndroid Build Coastguard Worker 52*6a54128fSAndroid Build Coastguard WorkerThe e2freefrag program will use the GETFSMAP ioctl if it is available 53*6a54128fSAndroid Build Coastguard Workerand the file system is mounted, so that the free space statistics will 54*6a54128fSAndroid Build Coastguard Workerbe more accurate. 55*6a54128fSAndroid Build Coastguard Worker 56*6a54128fSAndroid Build Coastguard WorkerThe consistency checks for symlinks (especially for encrypted and inline 57*6a54128fSAndroid Build Coastguard Workerdata file sytems) in e2fsck are now much more careful/stringent. Also 58*6a54128fSAndroid Build Coastguard Workerfixed a bug where creating a symlink using ext2fs_symlink() which was 59*6a54128fSAndroid Build Coastguard Workerexactly 60 bytes long when inline data was enabled would result in a 60*6a54128fSAndroid Build Coastguard Workermissing system.data xattr. 61*6a54128fSAndroid Build Coastguard Worker 62*6a54128fSAndroid Build Coastguard Worker 63*6a54128fSAndroid Build Coastguard WorkerPerformance, Internal Implementation, Development Support etc. 64*6a54128fSAndroid Build Coastguard Worker-------------------------------------------------------------- 65*6a54128fSAndroid Build Coastguard Worker 66*6a54128fSAndroid Build Coastguard WorkerMke2fs now uses io_channel_flush() instead of sync() for the sync_kludge 67*6a54128fSAndroid Build Coastguard Workerfeature. 68*6a54128fSAndroid Build Coastguard Worker 69*6a54128fSAndroid Build Coastguard WorkerE2fsprogs now uses i_size as the primary way of determining whether a 70*6a54128fSAndroid Build Coastguard Workersymlink is a fast symlink. 71*6a54128fSAndroid Build Coastguard Worker 72*6a54128fSAndroid Build Coastguard WorkerFix various compiler and UBSAN warnings. 73*6a54128fSAndroid Build Coastguard Worker 74*6a54128fSAndroid Build Coastguard WorkerLong running test are now skipped with "make check" and only run when 75*6a54128fSAndroid Build Coastguard Worker"make fullcheck". The test runner will warn when potentially long 76*6a54128fSAndroid Build Coastguard Workerrunning tests are being run via "make check". 77*6a54128fSAndroid Build Coastguard Worker 78*6a54128fSAndroid Build Coastguard WorkerE2fsck is now much faster for bigalloc file systems when scanning 79*6a54128fSAndroid Build Coastguard Workerextents for bigalloc file systems. (Addresses Google Bug #36886699) 80*6a54128fSAndroid Build Coastguard Worker 81*6a54128fSAndroid Build Coastguard WorkerUpdate Czech, Spanish, French, Malay, and Ukrainian translations. 82*6a54128fSAndroid Build Coastguard Worker 83