Whamcloud - gitweb
po: update sv.po (from translationproject.org)
[tools/e2fsprogs.git] / doc / RelNotes / v1.46.0.txt
1 E2fsprogs 1.46.0 (January 29, 2021)
2 ===================================
3
4 Updates/Fixes since v1.45.7:
5
6 UI and Features
7 ---------------
8
9 E2fsprogs now supports the fast_commit (COMPAT_FAST_COMMIT) feature.
10 This feature, first available in Linux version 5.10, adds a fine-grained
11 journalling which improves the latency of the fsync(2) system call.  It
12 should also improve the performance of ext4 file systems exported via
13 NFS.
14
15 E2fsprogs now supports the stable_inodes (COMPAT_STABLE_INODES) feature.
16 This needed to support the siphash file system encryption algorithm,
17 which calculates the initial vector (IV) for encryption based on the
18 UUID and the inode number.  This means that we can't renumber inodes
19 (for example, when shrinking a file system) and the UUID can't be
20 changed without breaking the ability to decrypt the encryption.
21
22 E2fsprogs now supports file systems which have both file system
23 encryption and the casefold feature enabled.  This requires Linux
24 version 5.10.
25
26 E2fsck now will check file names on file systems with case folding
27 enabled to make sure the characters are valid UTF-8 characters.  This is
28 done for file systems which enforce strict encodings, and optionally if
29 the extended "check_encoding" option is requested.
30
31 The fuse2fs program now supports the "-o norecovery" option, which will
32 suppress any journal replay that might be necessary, and mounts the file
33 system read-only.
34
35 E2fsck will now find and fix file system corruptions when the encrypted
36 files have a different policy from their containing directory.
37
38 The "htree" command in debugfs now displays the metadata checksums for
39 hash tree index blocks.
40
41 Dumpe2fs will print the error code that Linux kernels newer than v5.6
42 will save to indicate the class of error which triggered the ext4_error
43 event.
44
45 E2fsprogs programs (in particular, fuse2fs) can now update htree
46 directories without clearing the htree index.
47
48 Mke2fs now sets the s_overhead_cluster field, so that the kernel doesn't
49 need to calculate it at mount time.  This speeds up mounting very large
50 file systems.
51
52
53 Fixes
54 -----
55
56 E2fsck will properly handle checking for duplicated file names when case
57 folding is enabled.
58
59 Fix various bugs where a maliciously corrupted file systems could case
60 e2fsck and other e2fsprogs programs to crash.
61
62 Tune2fs will properly recalculate directory block checksums when
63 clearing the dir_index feature.
64
65 Fix a bug in e2fsck directory rehashing which could fail with ENOSPC
66 because it doesn't take into account the space needed for the metadata
67 checksum, and doesn't create a sufficiently deep index tree.
68
69 Clarify the e2fsck messages when it resets the directory link count when
70 it is set to the overflow value but it is no longer needed.
71
72 The filefrag program can now request the kernel to display the extent
73 status cache by using "filefrag -E".  (This requires Linux version 5.4
74 or newer.)
75
76
77 Performance, Internal Implementation, Development Support etc.
78 --------------------------------------------------------------
79
80 Speed up mke2fs when creating large bigalloc file systems by optimizing
81 ext2fs_convert_subcluster_bitmap().
82
83 Bitmap blocks are now read using multiple threads (for systems with
84 pthread support).  This speeds up dumpe2fs, e2fsck, and debugfs for very
85 large file systems.
86
87 The dumpe2fs and tune2fs will now avoiding to read the block group
88 descriptors when they are not needed, which speeds up these program when
89 operating on very large file systems.
90
91 Drop use of the sysctl(2) system call, which is deprecated in Linux.
92
93 Add support for "configure --enable-developer-features" which enables
94 features only meant for developer.  The first such feature is "e2fsck -E
95 clear_all_uninit_bits", which clears the uninitialized bit on all
96 extents for all inodes.  Note that this can end up exposing uninitialized
97 data to userspace, and should only used in very specialized situations.
98
99 The e2fsck/revoke.c and e2fsck/recovery.c files are now kept idential
100 with the fs/jbd2 versions of these files in the kernel.
101
102 Fix various compiler and Coverity warnings.
103
104 Update to use gettext 0.19.8.  This also removes the built-in "intl"
105 directory as this is now considered deprecated by gettext.  This means
106 that if the system doesn't have gettext installed on the build system,
107 we will simply disable NLS support.
108