1E2fsprogs 1.35 (February 28, 2004) 2================================== 3 4E2fsck has a new -k option, which in conjunction with the -c options, 5preserves the existing badblocks list. 6 7Cleaned up e2fsck's preen-mode messages during the passes 1b, 1c, and 1d. 8 9E2fsprogs will now deal correctly with symlinks that contain 10extended attribute information, which can be created using SE Linux. 11(Addresses Debian Bug #232328) 12 13Remove a double longjmp into an invalid stack frame bug in e2fsck. 14(This was during an abort sequence, which normally worked on Linux and 15caused a core dump on other operating systems.) 16 17Fix NLS bug in e2fsck, by avoiding trying to expand an empty string 18(the NLS library will replace "" with the .po header information). 19 20Fix a bug in mke2fs which caused -T largefile or -T largefile4 to core 21dump due to a division by zero error. (Addresses Debian bug #207082) 22 23Fixed a bug in e2fsck which caused it to incorrectly fix a filesystem 24when reconnecting a directory requires creating a lost+found 25directory. (Addresses Debian bug #219640). 26 27Fixed a bug where e2fsck would bomb out if a journal needed to be 28replayed when using an alternate superblock. 29 30E2fsck will give an extra grace period before actually forcing a check 31if the laptop is running on battery. The next time fsck runs while 32the system is on the AC mains, or after the grace period is exceeded, 33the filesystem will be checked. (Addresses Debian bug #205177) 34 35E2fsck will inform the user when there are 5 or fewer mounts before a 36filesystem check will be forced. (Addresses Debian bug #157194) 37 38Fix e2fsck's handling of corrupted indirect blocks in the bad block. 39We now correctly handle the case where there is an overlap between a 40block group descriptor or a superblock and a bad block indirect block. 41In the case where the indirect block is corrupted, we now suggest 42"e2fsck -c". 43 44Fix byte swap bugs in e2fsck that caused the journal backup location 45in the superblock and symlinks created by SE Linux to be cleared 46by e2fsck on big-endian machines. (Addresses Debian bug #228723) 47 48E2fsck -c now replaces the current list of bad blocks with the ones 49found by badblocks. 50 51Fix bugs in e2fsck and tune2fs which could cause a core dump if a 52non-existent LABEL or UUID specifier is to e2fsck or tune2fs. 53 54Fix a potential bug in e2fsck which could cause it to core dump when 55trying to print the location of the backup superblock. 56 57Protect against a potential core dump in e2fsck when printing a 58message about backup superblocks. 59 60Add support for backing up the journal inode location in the 61superblock. E2fsck will automatically save the journal information in 62the superblock if it is not there already, and will use it if the 63journal inode appears to be corrupted. ext2fs_add_journal_inode() 64will also save the backup information, so that new filesystems created 65by mke2fs and filesystems that have journals added via tune2fs will 66also have journal location written to the superblock as well. 67Debugfs's logdump command has been enhanced so that it can use the 68journal information in the superblock. 69 70E2fsck will now update all superblocks when moving the journal inode. 71 72Shrink the size of the e2fsck executable by moving some initialized 73variables to the BSS segment. 74 75E2fsck will avoid printing the ^A and ^B characters which bracket the 76progress bar when stdout and stdin are a tty device instead of a pipe 77to another program. (Addresses Debian bug #204137) 78 79Debugfs's mkdir command will automatically expand the directory if 80necessary. (Addresses Debian Bug: #217892) 81 82Fixed a bug in debugfs so that copying a file from /dev/null uses the 83correct mode bits. (Addresses Debian Bug: #217456) 84 85If the environment variables DEBUFS_PAGER and PAGER are not set, 86debugfs now searches for the appropriate pager to use, beginning with 87/usr/bin/pager, and then falling back to 'more' and 'less'. 88(Addresses Debian bug #221977) 89 90Debugfs will now support 2.6 device numbers where the major or minor 91number may be larger than 255. (Addresses Sourceforge bug #865289) 92 93Fix debugging printf in resize2fs. (Addresses Debian Bug #271605) 94 95Chattr now stops processing options when it sees '--'. (Addresses 96Debian bug #225188) 97 98Fix regression tests so they work correctly when e2fsprogs is compiled 99with configure --disable-htree. 100 101Fix bug in uuid library when there is no network card and the library 102is generating a time-based uuid. The random MAC address was not 103correctly generated to be a multicast address. 104 105Add compile_et extensions from Heimdall that were missed the first time 106around. 107 108Fix bug in badblocks when using O_DIRECT; we need to make sure that 109we're reading from an offset which is page aligned. For read-only and 110read-write tests, we try to recover after an error so that we can 111continue reading on page-aligned boundaries. (Addresses Debian Bug 112#203713) 113 114Badblocks now checks 64 blocks at a time instead of 16. (Addresses 115Debian bug #232240) 116 117Updated and clarified various man pages. (Addresses Debian Bug 118#206845, #222606, #214920, #232406) 119 120Updated and fixed translations. (Addresses Debian bugs #200086, #214633) 121 122Fixed various Debian packaging issues (see debian/changelog). 123 124Programmer's notes: 125------------------- 126 127Fixed a build problem so that e2fsprogs would compile with the 128--enable-profile option to configure selected. (Addresses Sourceforge 129bug #811408) 130 131Fixed C++ problems with the ext2fs.h header. (Addresses Red Hat 132Bugzilla Bug #112448) 133 134Centralize code which calculates the location of the superblock 135and block group descriptors so that it is in a single library routine. 136 137Added two new functions, ext2fs_file_open2() and 138ext2fs_inode_io_intern2() which take a pointer to an inode structure. 139 140Fix compile_et to output the correct prototype for 141initialize_xxx_err_table_r() in the header file. (Addresses Debian 142bug #204332) 143 144In the lib/et makefile, make sure com_err.info is deleted on "make clean". 145 146Fix 64-bit warnings in e2fsprogs pass1b by using inttypes.h if 147present. This is for when we try stuffing an int into void * pointer. 148 149Fix type-punning which can cause gcc 3.x to miscompile code by getting 150confused about pointer aliasing. ext2fs_getmem(), ext2fs_free_mem(), 151and ext2fs_resize_mem() all now take a 'void *' instead of a 'void 152**'. The EVMS code uses an ugly union approach since we don't want to 153modify the EVMS interfaces. 154 155Make sure all Makefiles use $(MAKE) rather than hardcoded "make", to 156aid build process on systems can use invoke GNU make as "gmake". 157 158Added regression testing for mke2fs. 159 160Fixed gcc -Wall nitpicks. 161 162Fixed various compiler warnings. 163 164Add portability fixes for FreeBSD and for using fsctl under Darwin to 165support ext2 ioctl's. 166 167