Whamcloud - gitweb
Build lib/ext2fs/ext2_err.h early to avoid parallel build problems
[tools/e2fsprogs.git] / RELEASE-NOTES
index 92fd2c0..514876f 100644 (file)
@@ -1,3 +1,675 @@
+E2fsprogs 1.41.1 (as of August 23, 2008)  commit id baf8ab98
+============================================================
+
+Many people are forgetting to update their mke2fs.conf file, and this
+causes ext3, ext4, and ext4dev filesystems won't get created with the
+proper features enabled.  We address this in two ways.  First, mke2fs
+will issue a warning if there is not definition for an ext3, ext4, or
+ext4dev filesystem and the user is trying to create such a filesystem
+type.  Secondly, when installing from a source build, "make install"
+will provide basic configuration file handling for /etc/mke2fs.conf.
+If it exists, and does not mention ext4dev, it will be moved aside to
+/etc/mke2fs.conf.e2fpsrogs-old and the new /etc/mke2fs.conf file will
+be installed.  If the existing /etc/mke2fs.conf file does mention
+ext4dev, then "make install" will install official mke2fs.conf file as
+/etc/mke2fs.conf.e2fsprogs-new and issue a message to the user that
+they should look to see if any changes need to be merged.
+
+Mke2fs and tune2fs now print the correct usage message describing the
+maximum journal size.  (Addresses Debian Bug: #491620)
+
+The blkid library will now recognize MacOS hfsx filesystems, and
+correctly extract the label and uuid for hfs, hfsx, and hfsplus
+filesystems.  (Addresses Sourceforge Feature Requests: #2060292)
+
+Resize2fs will now properly close out the "updating inode references"
+progress bar so there is a newline printed before printing the final
+"resize is successful" message.
+
+Resize2fs will now correctly handle filesystems with extents and/o
+uninitialized block groups correctly when file/directory blocks need
+to relocated (i.e., when shrinking a filesystem or if the resize_inode
+is not present).  To support this, the ext2fs library now supports
+initializing inode and block bitmaps that are not yet initialized when
+allocating them using ext2fs_new_block() and ext2fs_new_inode().  In
+addition, e2fs_block_iterate2() can now support changing the location
+of interior nodes of an extent tree, and ext2fs_extent_set_bmap() has
+been optimized to avoid creating unnecessary new extents when updating
+the location of blocks in the extent tree.  This will also help out
+e2fsck's recovery of obscurely corrupted filesystems with extents,
+when blocks are claimed by multiple inodes.
+
+E2fsprogs 1.41.0 intrduced a bug in libext2fs which casued e2image and
+debugfs programs to not be able to read e2image files; the signed
+vs. unsigned bug in the code which read bitmaps from the e2image has
+been fixed.   (Addresses Debian Bug: #495830)
+
+Resize2fs is now correctly managing the directory in-use counts when
+shrinking filesystems and directory inodes needed to be moved from one
+block group to another.  This bug has been around since e2fsprogs
+1.26, and is largely harmless, but does cause a filesystem corruption
+which will be flagged by e2fsck after the filesystem has been shrunk.
+E2fsck will no longer issue spurious complaints about the inode size
+caused by very large extent-based files, and by blocks reallocated
+using fallocate() with the FALLOC_FL_KEEP_SIZE option.  (Addresses
+Kernel Bugzilla: #11341)
+
+Mke2fs will now set the creation timestamp on the lost+found directory
+and the root directory.  (More generally, all new inodes created using
+the ext2fs library will correctly set the creation timestamp.)
+
+E2fsck now correctly calculates ind/dind/tind statistics in the
+presence of extent-based files.  In addition, "e2fsck -v" will report
+statistics of the depth of extent trees in the filesystem.  E2fsck can
+also give an inode fragmentation report using "e2fsck -E fragcheck"
+which can be useful when debugging the kernel block allocation
+routines.
+
+Blkid had a number of cache validation bugs in libblkid that have been
+fixed.   (Addresses Debian Bug: #493216)
+
+Debugfs's htree command now correctly understands extent-based
+directories.  It will also print out the minor hash as well as the
+major hash.
+
+The error message printed by "tune2fs -I" if the inode size was too
+small was rather confusing, so it has been improved.  Also, we won't
+try to create an undo log until we know that command-line-specified
+parameters such as "tune2fs -I <inode size>" are valid.
+
+Mke2fs will correctly enforce the prohibition against features
+(specifically read-only features) in revision 0 filesystems.  (Thanks
+to Benno Schulenberg for noticing this problem.)
+
+Mke2fs previously would occasionaly create some slightly non-optimally
+placed inode tables; this bug has been fixed.
+
+Given some filesystems found "in the wild" that had non-zero block
+group checksums even though the uninit_bg/gdt_sum feature was not
+enabled, e2fsck would issue spurious error messages.  Teach
+ext2fs_group_desc_csum_verify() to ignore the block group checksum
+entirely if the feature flag is not set.  (Addresses Debian Bug:
+#490637)
+
+The blkid program will now print out a user-friendly listing of all of
+the block devices in the system and what they contain when given the
+-L option.  (Addresses Debian Bug: #490527)
+
+Typographical errors in various program strings and usage messages
+have been fixed; most of these were pointed out by the e2fsprogs
+message catalog translators.  (Thanks, translators!)
+
+Update and clarified various man pages, as well as some typographical
+errors in the libext2fs texinfo file.
+
+Fixed various Debian packaging issues --- see debian/changelog for
+details.
+
+Add Indonesian and update French, Polish, Dutch, German, Sweedish,
+Czech, and Vietnamese Translations.  (Addresses Debian Bugs: #313697,
+#401092)
+
+Programmer's Notes
+------------------
+
+Fix portability problem with the badblocks group; for systems that
+don't have nanosleep(), try using usleep() instead.
+
+The "make check" target in the e2fsck directory now sets
+LD_LIBRARY_PATH before running the various e2fsck internal library
+regression tests.
+
+The crc32 regression test in the e2fsck library is now portable to
+greater varienty of environments, including big-endian systems and
+when cross-building e2fsprogs for embedded systems.  (Addresses
+Sourceforge Bug: #2019287)
+
+The ext2fs_extent_set_bmap() had some bugs when setting the first
+block in a file, or when replacing a single block extent.  Those cases
+fortunately were came up relatively rarely when e2fsck was checking
+files, but caused some problems when resize2fs was shrinking
+extent-based files.
+
+Various ext2fs library functions --- ext2fs_initialize() and
+ext2fs_extent_open() --- now correctly free allocated memory to avoid
+memory leaks in all of their error return paths.
+
+Ext2ed was failing to build because masix support had been removed in
+the rest of e2fsprogs, so ext2ed no longer has masix support, either.
+
+The configure script now respects the LDFLAGS environment variable if
+it is set when configure is called.  (Addresses Sourceforge Feature
+Request: #1937287)
+
+Libuuid is now more portable to the Windows platform.  (Addresses
+Sourceforge Feature Request: #1937287)
+
+The configure script now uses AC_MSG_{RESULT,WARN,ERROR} instead of
+bare echo commands so that configure flags such as --quiet work
+correctly.  (Addresses Sourceforge Patches: #2058794)
+
+A few uses of sprintf have been removed from the ext2fs library to
+make life easier for bootloaders with a limited libc environment.
+(Addresses Sourceforge Bug: #2049120)
+
+The ext2fs_read_inode() checks the validity of the inode number passed
+to it earlier, to avoid doing some needless work when it would fail
+anyway.
+
+The ext2fs_open() checks the validity of the blocksize parameter
+passed to it earlier, to avoid doing some needless work when it would
+fail anyway.
+
+Disable a very annoying automatic "%.sh -> %" GNU make rule in the
+top-level Makefile.  That automatic rule is used to better support
+SCCS, but it caused problems for a particular niche distribution which
+likes to use configure.sh files to store the configure options used to
+build a package.  Unfortuntaely GNU make will use the configure.sh to
+replace the configure script, resulting in a self-inflicted fork bomb
+leading to an out-of-memory crash.
+
+E2fsprogs is now more portable to Solaris.
+  * blkid no longer assumes that the TIOCGSIZE and TIOCGWINSZ ioctl's
+    are always present.
+  * Scripts do not assume that /bin/true is always in /bin
+  * Don't use __FUNCTION__ since Solaris's C99 doesn't support it.
+  * Flush stdio handles before calling setbuf(), since Solaris will
+    discard any pending output to the stream.
+  * Define _XOPEN_SOURCE to 600 since Solaris's header files are very
+    picky about which C compiler can beused for SUSv3 conformance.
+    Use of C99 is not compatible with SUSv2 (_XOPEN_SOURCE=500),
+    and C89 is not compatible with SUSv3 (_XOPEN_SOURCE=600).
+    Since we need some SUSv3 functions, consistently use SUSv3 so
+    that e2fsprogs will build on Solaris using c99.
+  * Solaris C99 does not support varargs C preprocessor macros
+  * Solaris header files pollute the C namespace if in/netinet.h
+    is included, which conflicts with e2fsprogs' use of the kmem_cache_t
+    typedef.
+  * Solaris ships with a pathetically ancient shell in /bin/sh so we
+    avoid the use of various more avanced shell constructs such as $().
+
+To support old GNU C compilers don't use C99/C++ comments, but only
+K&R style comments, and don't try to use __builtin_expect if __GNUC__
+is less than 3.  (__builtin_expect is only supported for gcc versions
+2.96 and up, and it's tricky to check for gcc 2.95 vs gcc 2.96; since
+this is an optimization, we only try to use __builtin_expect for gcc 3
+and up.)
+
+In e2fsck's crc routines, make sure we use WORDS_BIGENDIAN instead of
+__LITTLE_ENDIAN, which are only defined by glibc's header files and
+hence isn't portable.
+
+For the convenience for some distributions that need a static tune2fs,
+the Makefile for misc/ now has a tune2fs.static target.
+
+
+E2fsprogs 1.41 (July 10, 2008)
+==============================
+
+Add support for ext4 filesystem features, in particular extents,
+uninit_bg, flex_bg, huge_file, and dir_nlink features.  Also add
+support for checking journal checksums.  Debugfs will print new
+superblock and inode fields that were defined for ext4.  For example,
+the nanosecond and i_version fields of an inode, and the
+s_min_extra_isize and s_wanted_extra_isize fields from the superblock.
+Note: Resize2fs doesn't currently support the combination of flex_bg
+and !resize_inode.  (Addresses Debian Bug: #388452, #425477)
+
+Tune2fs can support migrating a filesystem from using 128 byte inodes
+to 256 byte inodes, so it can take advantage of the full features of
+ext4.
+
+Add support for "undo" support.  E2fsck and mke2fs can optionally
+record an undo log which can replayed by the program e2undo.
+
+E2fsck could damage a filesystem by trying to relocate inode tables
+due to corrupted block group descriptors, where the attempted inode
+table relocation would do far more harm than good.  E2fsck has been
+fixed to detect this these sorts of corrupted block group descriptors
+much earlier in e2fsck processing, so it can try to use the backup
+superblock and block group descriptors first.  This should be a much
+better strategy for recovering these types of corrupted filesystems.
+(Addresses Sourceforge Bug: #1840291)
+
+E2fsck will display a more understandable message when the last check
+field in the superblock is in the future.  (Addresses Debian Bug:
+#446005).
+
+E2fsck now performs more extensive and careful checks of extended
+attributes stored in the inode.
+
+Enhance mke2fs to print a more explanatory error message when
+ext2fs_get_device_size() returns EFBIG.  (Addresses Debian Bug:
+#488663)
+
+Fix mke2fs to use a default block size of 4k when formatting an
+external journal device.  This is done by using a fixed filesystem
+type list that consists only of the single filesystem type "journal"
+when looking up configuration keys in /etc/mke2fs.conf.  (Addresses
+Debian Bug: #488663)
+
+Speed up how mke2fs writes the journal data blocks by writing the disk
+blocks in larger chunks.
+
+Fix blkid handling of stale devices.  Fix a bug which could cause a
+core dump while garbage collecting the blkid cache, and assure that
+blkid_find_dev_with_tag() never returns a non-existent device.  Also,
+if a filesystem is found at a new /dev location, eliminate any
+duplicate stale entries which can not be verified.
+(Addresses-Debian-Bugs: #487758, #487783)
+    
+Add more paranoid checks for LVM volumes and swap partitions in
+blkid's probe function, to reduce the chances of false positives.
+
+The mke2fs program now has a much more sophisticated system for
+controlling configuration parameters of a newly created filesystem
+based on a split filesystem and usage type system.  The -t option to
+mke2fs was a deprecated alias to -c; it now specifies a filesystem
+type (ext2, ext3, ext4, etc.), while the -T option can now be a comma
+separated usage list.  The filesystem type information and type
+information is used to extract configuration parameters from the
+/etc/mke2fs.conf file.
+
+The mke2fs program will no longer complain and request the -f option
+when the user tries to create a filesystem with greater than 2**31
+blocks.
+
+When creating a filesystem for the GNU Hurd use a fs-type of Hurd and
+adjust the mke2fs.conf file so filesystems for the Hurd are created
+with a blocksize of 4096 and inode size of 128, which is all it knows
+how to handle.  (Addresses Debian Bug: #471977)
+    
+Mke2fs will always make sure that lost+found always has at least 2
+blocks, even for filesystems with very large blocksizes (i.e., 64kb).
+
+Resize2fs will now print the minimum needed filesystem size if given
+the -P option, and will resize the filesystem to the smallest possible
+size if given the -M option.
+
+Fix resize2fs to clean up the resize_inode if all of the reserved gdt
+blocks are consumed during an off-line resize.
+
+The "ls" command in debugfs now supports the -p option, which causes
+it to quote the filenames so that spaces or tabs in directory entries
+are easily visible.  (Addresses Red Hat Bugzilla: #149480; Addresses
+Sourceforge Feature Request: #1201667)
+
+Fix a potential off-by-one buffer oveflow in the fs_device_name in an
+e2image file.
+
+The chattr program will return a non-zero exit code in case of
+failures, and error messages can be suppressed with the -f option.
+(Addresses Red Hat Bugzilla: #180596)
+
+Fix a bug in badblocks which caused it to overrun an array and likely
+crash if more than 8 test patterns are specified using the -t option.
+(Addresses Debian Bug: #487298)
+    
+Add support to badblocks to limit how quickly it reads from the disk
+drive (so it can be used for background scrubbing), and so it will
+abort after finding a given number of errors.
+
+Remove support for the legacy big-endian filesystem format which only
+existed on extremely long-dead PowerPC kernels almost a decade ago.
+
+Remove MASIX support from e2fsprogs.
+
+Add I/O statistics reporting to e2fsck.
+
+Update Vietnamese, Polish, French, Spanish, German, Catalan, Dutch,
+Czech translations.
+
+Fixed various Debian packaging issues --- see debian/changelog for
+details.  (Addresses Debian Bugs: #487443, #487675, #490003)
+
+Fixed spelling mistakes, typos, and otherwise clarified man pages.
+(Addresses Debian Bugs: #393313, #487849, #440983, #440981)
+
+Programmer's Notes
+------------------
+
+Factor out bitmap code in preparation for adding 64-bit new-style
+bitmaps.
+
+Fix gcc -Wall warnings
+
+Fix the pkg-config files so that private librares are specified in
+"Libs.private:".
+
+Fix the libext2fs.texinfo manual so it builds with modern versions of
+texinfo.
+
+Silence the makefile from showing the awk command used to build the
+
+Clean up the badblocks group so to make it more portable and robust.
+
+Avoid using predictable filenames in /tmp in blkid's regression test
+suite.  Also remove bashism's in the regression test script.
+
+If the configure script is given --with-diet-libc, don't use thread
+local storage, since diet libc doesn't support TLS.  (Addresses
+Sourceforge Bug: #2000654)
+    
+Fix the blkid regression test suite to tolerate older versions of
+mkswap that don't support the -U option.
+
+A few library routines have been converted to support 64-bit block
+numbers; in particular, the I/O manager functions, the test_io,
+inode_io, and unix_io managers have all be converted to support 64-bit
+operation.
+
+Debugfs can now be extended for use by test programs.  See
+lib/ext2fs/extents.c for an example for how it can be used.  The test
+program links against the debugfs object files, and provides
+additional commands by defining an auxiliary libss command table.
+
+The lazy_bg filesystem feature, which was only used by developer's
+testing, has been removed since it has been largely supplanted by
+uninit_bg.  This also simplifies the code.
+
+
+E2fsprogs 1.40.11 (June 17, 2008)
+=================================
+
+Mke2fs, tune2fs, and resize2fs now use floating point to calculate the
+percentage of reserved blocks.  (Addresses Debian Bug: #452639)
+
+Updated Spanish and Catalan translations.
+
+Fixed various Debian packaging issues --- see debian/changelog for
+details.  (Addresses Debian Bugs: #483962, #483023)
+
+Add detection for ZFS volumes to the libblkid library.
+
+Fixed spelling mistakes, typos, and otherwise clarified man pages.
+(Addresses Debian Bug: #486463)
+
+Programmer's notes:
+-------------------
+
+Fix marginal C code in probe_lvm2() function to the blkid library more
+portable for older compilers.
+
+Fix build problems on MacOS X.  (Addresses Sourceforge Bug: #1972473)
+
+Fix ext2fs_swap{16,32,64} functions so they can be used by external
+applications on big-endian machines.  (Addresses Debian Bug: #484879)
+    
+
+E2fsprogs 1.40.10 (May 21, 2008)
+================================
+
+When deciding whether or not to revalidate a blkid cache entry, if the
+device's mtime is newer than the last time the cached entry was
+validated, force a revalidation.
+
+Fix a potential data corruption bug in e2fsck in the journal replay.
+The chances of this is happening is extremely remote, especially the
+default data=ordered or data=writeback modes.  However, if a block
+which has been journalled starts with the first four bytes 0xc03b3998,
+when e2fsck replays the journal, those four bytes will be replaced
+with zero's.  Fortunately, it is highly, highly unlikely for e2fsck
+metadata to begin with those fatal 4 byte sequence, and unless
+data=ordered mode is in use, data blocks are never journaled.
+
+Updated German, Dutch, Sweedish, and Vietnamese translations.
+
+Programmer's notes:
+-------------------
+
+Fixed various Debian packaging issues --- see debian/changelog for
+details.
+
+Remove default sizes of types when cross compiling, since autoconf
+2.50 can figure this out automatically now.
+
+
+E2fsprogs 1.40.9 (April 27, 2008)
+=================================
+
+SuSE's security team audited uuidd and came up with a few minor
+issues.  None of them are serious given that uuidd runs setuid as a
+unprivileged user which has no special access other than libuuid
+directory, but it's good to get them fixed.
+
+One additional fix in ext2fs_swap_inode_full() needed for resize2fs to
+work correctly with in-inode extended attributes.
+
+Updated German, Czech, Dutch, French, Polish, Sweedish, and Vietnamese
+translations.
+
+Debugfs will avoid using a pager if the standard output is not a tty.
+
+Fix debugfs and tune2fs to correctly handle daylight savings time when
+parsing a time string.
+
+Fixed spelling mistakes, typos, and otherwise clarified man pages.
+
+Fix fsck completion bars when multiple filesystems were being checked
+in parallel.  (Addresses Debian Bug: #432865, Addresses Launchpad Bug:
+#203323, Addresses Sourceforge Bug: #1926023)
+
+Fix fsck so that progress information is sent back correctly when
+multiple filesystems are being check and the output of fsck is being
+redirected to a file descriptor.  Also, include the device name (w/o
+spaces) in the progress information sent back via a file descriptor.
+(Addresses Launchpad Bug: #203323, Addresses Sourceforge Bug:
+#1926023)
+
+Teach fsck to treat "ext4" and "ext4dev" as ext* filesystems.
+
+If logsave receives a SIGTERM or SIGINT signal, it will now pass that
+signal to its child process.
+
+Fix mke2fs's creation of are resize inode when there is a non-standard
+s_first_data_block setting.
+
+Fix bug in blkid when run by an unprivileged user; most devices were
+not reported correctly.  9Addresses Launchpad Bug: #220275)
+
+Mke2fs will not allow the logically incorect combination of
+resize_inode and meta_bg, which had previously caused mke2fs to create
+a corrupt fileystem.
+
+Fix fsck in German locales so that a 'j' means yes.
+(Addresses Sourceforge Bug: #1947683)
+
+
+Programmer's notes:
+-------------------
+
+Fixed various Debian packaging issues --- see debian/changelog for
+details.
+
+Update valgrind options in test_script to work with valgrind 3.2.3
+
+Update texinfo.tex to a much newer version from the FSF.
+
+Remove bashism for configure script and from the lib/ss Makefile.
+Addresses Sourceforge Bug: 1921969
+
+Fix some silently broken tests: m_no_opt, m_meta_bg, and m_raid_opt.
+
+Fix build system so that if texinfo is not installed, it won't print a
+(harmless) error message.
+
+
+E2fsprogs 1.40.8 (March 13, 2008)
+=================================
+
+Fixed e2image -I so it works on image files which are larger than 2GB.
+
+Fixed e2fsck's handling of directory inodes with a corrupt size field.  If
+the size is larger than the number of blocks found in the inode, don't
+try to allocate extra empty blocks at the end of the directory to make
+up the difference; there's no point to doing that.  In addition, if
+the size is not a multiple of a blocksize, always fix it.
+
+E2fsck handled a pass 2 "should never happen error" by not giving
+enough information and then core dumping.  Unfortunately, it was all
+too easy to trigger the "should never happen" situation if a
+directory's inode size was not correct.  This has been fixed, but
+e2fsck has also been taught how to handle this situation more
+gracefully, by simply removing the inode hash tree information, so
+that it can be rebuilt again after e2fsck's pass 3.  (Addresses
+Launchpad Bug: #129395)
+
+Resize2fs had a bug resizing large inodes with extended attributes
+that was fixed in 1.40.6; unfortunately, it turned out it wasn't fixed
+completely on big-endian systems such as PowerPC.  The bug should be
+completely fixed now.  Yay for regression test suites.  (Addresses Red
+Hat Bugzilla: #434893)
+    
+Updated German, Czech, Dutch, Polish, Sweedish, and Vietnamese
+translations.  Many thanks to Philipp Thomas from Novell for stepping
+up to become the new German translation maintainer!  (Addresses Debian
+Bugs: #302512, #370247, #401092, #412882).
+
+When e2fsck is clearing a corrupt inode's HTREE directory information,
+make it clear that it is just clearing the HTREE information, not the
+entire inode.
+
+Fixed spelling mistakes, typos, and otherwise clarified man pages.  
+
+Programmer's notes
+------------------
+
+Add new functions, ext2fs_dblist_get_last() and
+ext2fs_dblist_drop_last(), which allows the caller to examine the last
+directory block entry added to the list, and to drop if it necessary.
+
+Fixed a portability problem in libblkid with DJGPP.
+
+Fix an obvious typo in an "internal error" message in e2fsck.  Thanks
+to Philipp Thomas for pointing this out.
+
+If the info files are not built, change "make install" so it doesn't
+fail with an error code.
+
+
+E2fsprogs 1.40.7 (February 28, 2008)
+====================================
+
+Remove support for clearing the SPARSE_SUPER feature from tune2fs, and
+depreciate the -s option, since it can result in filesystems which
+e2fsck can't fix easily.  There are very good reasons for wanting to
+disable sparse_super; users who wants to turn off sparse_super can use
+debugfs.  (Addresses Sourceforge Bug: #1840286)
+    
+Add missing options to mke2fs's usage message.  (Addresses Sourceforge
+Bug: #1751393)
+    
+Fix bug in resize2fs when large (greater than 128 byte) inodes are
+moved when a filesystem is shrunk; it was only moving the first 128
+bytes, so extended attributes were not getting moved.  (Addresses Red
+Hat Bugzilla: #434893)
+
+E2fsck now prints an explicit message when the bad block inode is
+updated, to avoid confusion about why the filesystem was modified.
+(Addresses Sourceforge Bug: #756460)
+    
+Allow mke2fs and tune2fs manipulate the large_file feature.
+Previously we just let the kernel and e2fsck do this automatically,
+but e2fsck will no longer automatically clear the large_file feature.
+It still isn't really necessary to worry about this feature flag
+explicitly, but some users seem to care.  (Addresses Red Hat Bugzilla:
+#258381)
+    
+Suppress message about an old-style fstab if the fstab file is empty.
+(Addresses Debian Bug: #468176)
+    
+Fix (really minor) bug in debugfs's find_free_block so it avoids
+reporting a free block more than once if there are too few free blocks
+in the filesystem.  (Addresses Sourceforge Bug: #1096315)
+    
+Change e2fsck to no longer clear the LARGE_FILES feature flag
+automatically, when there are no more > 2GB files in the filesystem.
+It's been almost a decade since there have been kernels that don't
+support this flag, and e2fsck clears it quietly without telling the
+user why the filesystem has been changed.
+    
+Fix bug which could cause libblkid to seg fault if a device mapper
+volume disappears while it is being probed.  (Addresses RedHat
+Bugzilla: #433857)
+    
+Inhance e2fsck's reporting of unsupported filesystem feature flags.
+(Addresses Sourceforge Feature Request: #1175808)
+    
+Fix option syntax in dumpe2fs for explicit superblock and blocksize
+parameters.  What was currently documented in the man page has been
+broken for some time, due to getopt() implementation changes.  The
+option sytax has been changed to one which is can be more portable
+supported and which is consistent with the format for extended options
+in mke2fs and tune2fs.  (Addresses Sourceforge Bug: #1830994)
+    
+Add support to tune2fs to clear the resize_inode feature.  This
+requires an fsck afterwards.  (Addresses Red Hat Bugzilla: #167816)
+
+Teach blkid to detect LVM2 physical volumes.  (Addresses Red Hat
+Bugzilla: #409321)
+
+Add support for setting RAID stride and stripe-width via mke2fs and
+tune2fs.  Teach dumpe2fs to print the RAID parameters.
+
+Add support for setting new superblock fields to debugfs's
+set_super_value.
+
+Add support for printing "mostly-printable" extended attributes in
+Debugfs.
+
+Add support for the -M option to fsck, which causes it to ignore
+mounted filesystem.
+
+Fix uuidd so that it creates the pid file with the correct pid number.
+(Addresses Sourceforge Bug: #1893244)
+
+Fix various gcc -Wall warnings.
+
+Update Czech, Dutch, Polish, Sweedish, and Vietnamese translations
+
+Fixed spelling mistakes, typos, and otherwise clarified man pages.  
+(Addresses Sourceforge Patch: #1399325)
+
+
+Programmer's notes:
+-------------------
+
+Fixed various Debian packaging issues --- see debian/changelog for
+details.  (Addresses Debian Bug: #466929)
+
+Add new flag EXT2_FLAG_NONFREE_ON_ERROR ext2fs_open2() which returns a
+partially filled-in filesystem object on an error, so that e2fsck can
+print more intelligent error messages.
+    
+Add a new function e2p_edit_feature2() which allows the caller to
+specify which feature flags are OK to set or clear, and which returns
+more specific information about feature flags which are not allowed to
+be set/cleared.
+    
+Set the C locale in the test_script driver since it uses [A-Za-z].
+(Addresses Sourceforge Bug: #1890526)
+
+Use fcntl locking instead of lockf in libuuid since Cygwin doesn't
+support lockf().
+
+Change configure.in to avoid using the 'dc' command unless it is
+absolutely needed. (i.e., when using parsing a WIP-style version
+number)  (Addresses Sourceforge Bug: #1893024)
+
+Add portability checks to support compilation under DJGPP.
+
+Update to the latest samba tdb code before the LGPLv3 change, which
+fixes a realloc() leak on failure.
+
+Fix memory leak in ext2fs_alloc_block().
+
+Fix makefile dependency issues for various install targets.
+(Addresses-Sourceforge-Patches: #1903484, #1903466, #1903456)
+    
+Improve descriptions for the r_move_itable and r_resize_inode tests.
+
+
 E2fsprogs 1.40.6 (February 9, 2008)
 ===================================