]>
Commit | Line | Data |
---|---|---|
85e53f42 TT |
1 | E2fsprogs 1.44.3 (July 10, 2018) |
2 | ================================ | |
ae3a1d57 TT |
3 | |
4 | Updates/Fixes since v1.44.2: | |
5 | ||
6 | UI and Features | |
7 | --------------- | |
8 | ||
9 | The debugfs inode_dump command can now print a hex dump of the i_block | |
10 | array and the extra space in the inode, as a convenience to someone | |
11 | investigating a corrupted inode. | |
12 | ||
13 | The debugfs block_dump and inode_dump command can now print low-level | |
14 | dump of extended attribute data structures in the block or inode. | |
15 | ||
16 | The dumpe2fs command can now print out information in the Multi-Mount | |
17 | Protection (MMP) block. This is also available as e2mmpstatus command | |
18 | for compatibility with the Lustre utilities. | |
19 | ||
20 | The debugfs command can now operate on some file systems with | |
21 | corrupted superblocks so they can be fixed. This includes file | |
22 | systems with a corrupted inodes count field and file systems where not | |
23 | all of the allocation bitmaps have valid locations or are not | |
24 | readable. | |
25 | ||
26 | ||
27 | Fixes | |
28 | ----- | |
29 | ||
30 | The inode's project ID is now properly byte-swapped on big-endian | |
31 | systems. | |
32 | ||
33 | E2fsprogs now ignores s_desc_size for file systems that do not have | |
34 | the 64-bit feature set. This makes it more consistent with the | |
35 | kernel, so it can now operate on file systems that the kernel is | |
36 | willing to mount. | |
37 | ||
38 | E2fsck now considers device inodes with the extents flag as corrupt | |
39 | and offer to clear them. | |
40 | ||
ae3a1d57 TT |
41 | E2fsck more properly handles cases where s_inodes_count is corrupted. |
42 | ||
43 | E2fsck no longer spews large number of errors when the superblock | |
44 | badly corrupted (restoring its behavior pre-1.43). | |
45 | ||
46 | E2fsck will now offer to set the dir_nlink feature if it is not set | |
47 | and file system requires the dir_nlink feature because there are too | |
48 | many subdirectories in a directory. | |
49 | ||
50 | E2fsck will no longer loop infinitely due to a maliciously crafted | |
51 | file system which has a fully uninitialized inode table in the first | |
52 | block group. | |
53 | ||
a3f2d976 TT |
54 | E2fsck will no longer hang if the last block in the file system is a |
55 | fixed-metadata block. (Very rare, but could happen.) | |
56 | ||
57 | E2fsck no longer allows initialized blocks to exist past i_size. This | |
58 | is something the Linux implementation of ext4 has never done (and should | |
59 | never do). | |
60 | ||
61 | While replaying the journal in e2fsck, certain errors would previously | |
62 | cause e2fsck to print a non-sensical error message (e.g., "Unknown code | |
63 | ____ 251 while recovering journal"). This has been fixed. | |
64 | ||
ae3a1d57 TT |
65 | In cases where more than 75% of the block group will be used for group |
66 | descriptor table, mke2fs would previously create an invalid file | |
67 | system with both the meta_bg and resize_inode features enabled. It | |
68 | will now disable the resize_inode feature. | |
69 | ||
70 | The mke2fs program now properly creates a file system which is exactly | |
71 | 1 << 32 blocks. Previously the s_inodes_count field would overflow, | |
72 | and the file system would be created with a minimal number of inodes. | |
73 | ||
a3f2d976 TT |
74 | Recent kernels will report errors on a file or block device which |
75 | occurred before the file or block device was opened via fsync() or | |
76 | close(). This will cause e2fsck to incorrectly report a failure. Work | |
77 | around this by calling fsync() immediately after the file or block | |
78 | device is opened in the unix_io layer, and throwing away the error. | |
79 | ||
ae3a1d57 TT |
80 | Filefrag will no longer ignore errors returned by fsync. |
81 | ||
82 | Debugfs will no longer print spurious checksum errors when failing to | |
83 | open a file system for unrelated reasons. | |
84 | ||
85 | Updated/fixed various man pages. (Addresses Launchpad Bug: #1743553) | |
86 | ||
87 | ||
88 | ||
89 | Performance, Internal Implementation, Development Support etc. | |
90 | -------------------------------------------------------------- | |
91 | ||
92 | Synchronized changes from Android's AOSP e2fsprogs tree. | |
93 | ||
a3f2d976 TT |
94 | Debugfs's mknod command now works correctly on some 32-bit systems where |
95 | previously it had a portability problem caused by some object files | |
96 | being compiled with LFS, and some without. This fixes some regression | |
97 | test failures on 32-bit MIPS (for example). | |
98 | ||
ae3a1d57 TT |
99 | Various clean ups, portability, and performance improvements to |
100 | e2fsprogs's regression test framework. | |
101 | ||
102 | Fixed Coverity, sparse, gcc -Wall, and clang warnings/nits. | |
103 | ||
a3f2d976 | 104 | Update Czech, Dutch, Spanish, French, Polish, Swedish, Ukrainian, and |
ae3a1d57 | 105 | Vietnamese translations. |
b1d874a6 | 106 |