-E2fsprogs 1.39-WIP (March 29, 2006)
-===================================
+E2fsprogs 1.40-WIP (October 2, 2006)
+====================================
-Dumpe2fs will now print the size of the journal (if present).
+Fixed overflow and signed/unsigned problems caused by the number of
+blocks or inodes exceeding 2**31 or being close to 2**32-1;.
-Fix 32-bit cleanliness in e2fsprogs so that we can support filesystems
-between 2**31 and 2**32 blocks.
+Fix resize2fs so that it gives user-intelligible error messages if the
+filesystem or the kernel does not support on-line resizing.
+(Addresses Debian Bug: #380548)
-Fix mklost+found so that it creates a full-sized directory on
-filesystems with larger block sizes.
+Require mke2fs -F -F for really dangerous operations, since -F is
+needed for less dangerous operations such as creating filesystems
+images in regular files, or creating filesystems on whole block
+devices. These relatively innocuous usages should NOT be confused
+with running mke2fs on an apparently-mounted or in-use filesystem.
-Fix a file descriptor leak in blkid library.
+Allow the default inode size to be specified into the mke2fs.conf
+file.
+
+Make the smallest default journal size is big enough so that on-line
+resizing should always work.
+
+Fix silly spelling error in e2fsck. (Addresses SourceForge bug:
+#1531372)
+
+Fix debugfs coredump when lsdel is run without an open filesystem
+(Addresses Debian Bug: #378335)
+
+Fix debugfs display bug us that bytes that have the high bit set are
+displayed as "ec" instead of "ffffffec".
+
+Add support in lsattr so it will display the EXT4_EXTENTS_FL flag.
+
+Device mapper scanning wasn't working in the blkid library because the
+pathnames had an extra "/dev" when they were being probed.
+
+Add GFS/GFS2 support to the blkid library.
+
+Fix blkid support of empty FAT filesystem labels.
+
+Avoid recursing forever (or for a long time) when the blkid library
+searches for a device and there are symlinks to directories in /dev.
+
+Avoid unaligned halfword access in blkid when accessing FAT
+superblocks, as this will cause Sparc/Solaris systems to throw a
+SIGBUS error.
+
+The latest devmapper libraries requires pthreads, add -lpthreads to
+the static link libraries for e2fsck.static if devmapper is enabled.
+(Addresses Debian bug: #388718)
+
+Improve the (non-installed, for experts only) findsuper program by
+printing the uuid and label from the superblocks, as well as the
+starting and ending offsets of the filesystem given the information in
+the superblock. Omit by default printing superblocks that are likely
+found in located in an ext3 journal unless an explicit -j option is
+given.
+
+Updated French and Dutch translations and added Vietnamese translation.
+
+Use FreeBSD's DIOCGMEDIASIZE and DIOCGDINFO ioctls if available when
+determining a partition's size, since binary searching to determine
+the device doesn't work on FreeBSD.
+
+Fixed spelling mistakes, typos, and otherwise clarified man pages.
+(Addresses Debian Bug: #369761, #373004)
+
+Fixed various Debian packaging issues --- see debian/changelog for
+details. (Addresses Debian Bugs #389554, #390664)
+
+
+Programmer's notes:
+-------------------
+
+Fix misc/Makefile.in so that it builds even if e2fsck hasn't been built yet
+(Addresses Sourceforge Bug: #1565561)
+
+Remove unused variables and other lint/gcc -Wall cleanups
+
+Add check to ext2fs_get_device_size() so it will return EFBIG for for
+filesystems contained in regular files where the filesystem image size
+is returned by stat64().
+
+Added the 64-bit byte swapping function ext2fs_swab64().
+
+Added two new helper functions to prevent 2**31/2**32-1 overflow
+problems: ext2fs_div_ceil() and e2p_percent().
+
+Create new ext2fs library inline functions ext2fs_group_first_block()
+and ext2fs_group_last_block() in order to calculate the starting and
+ending blocks in a block group.
+
+Create the generated files read-only to remind developers not to edit them.
+
+Added an "make rpm" target to top-level Makefile
+
+Added various FreeBSD portability fixes.
+
+Exclude mercurial files from the RPM build tree to speed up copy/build.
+
+Use root_sysconfdir to define the locations of mke2fs.conf and
+e2fsck.conf instead of using a hard-coded /etc pathname.
+
+Prevent e2fsck.h and ext2_ext_attr.h from getting included multiple times.
+
+Fixed "make clean" in blkid's Makefile.in file from removing tst_*.c files.
+
+If diff -u is supported, use it to report test failures.
+
+Updates/improvements to RPM spec file
+
+
+E2fsprogs 1.39 (May 29, 2006)
+=============================
+
+Fix 32-bit cleanliness in e2fsprogs so that we can support filesystems
+between 2**31 and 2**32 blocks.
Change mke2fs to use /etc/mke2fs.conf as a configuration file to
configure the filesystem features, blocksize, and inode_ratio for
different filesystem types.
+Mke2fs will now create filesystems hash trees and on-line resizing
+enabled by default, based on the new /etc/mke2fs.conf file.
+
The e2fsprogs tools (resize2fs, e2fsck, mke2fs) will open the
filesystem device node in exclusive mode to prevent accidents by
system administrators. In the case of resize2fs and mke2fs, it will
Fixed a bug in mke2fs which caused it to to fail when creating the
resize inode for large filesystems. (Addresses Debian Bug #346580)
+When allocating space for the RAID filesystems with the stride
+parameter, mke2fs will now place each portion of the group's inode
+table right up after the superblock (if present) in order to minimize
+fragmentation of the freespace.
+
+Speed up mke2fs and e2fsck by writing inode and block bitmaps more
+efficiently by writing the inode and block bitmaps in one pass, thus
+reducing the number of disk seeks required.
+
Add support for on-line resizing to resize2fs.
Fix blkid library so that logic to determine whether or not a device's
E2fsck will stop and print a warning if the user tries running a
read/write badblocks test on a read-only mounted root filesystem.
+Fix a memory leak in e2fsck's error paths. (Thanks to Michael
+C. Thompson for pointing these out; they were originally found using
+Coverity.)
+
When resizing a file containing a filesystem, resize2fs will expand or
truncate a file as necessary. (Addresses Debian Bug: #271607)
+Resize2fs will now automatically determine the RAID stride parameter that
+had been used to create the filesystem, and use that for newly created
+block groups. The RAID stride parameter may also be manually specified
+on the command line using the new -S option to resize2fs.
+
Fix mke2fs so that it correctly creates external journals on
big-endian machines (such as a S/390).
+Fix a bug in the e2p library which could cause dumpe2fs to (rarely)
+fail to print out the journal or hash seed UUID. (Thanks to Guillaume
+Chambraud for pointing this out.)
+
+Dumpe2fs will now print the size of the journal (if present).
+
Fix debugfs's set_inode_field command so it can properly set the frag,
fsize, uid_high, gid_high, and author fields in the inode instead of
silently failing, and so that setting the i_size actually sets i_size
Fix a bug in debugfs's icheck which would incorrectly report the owner
of an extended attribute block.
+Fix the debugfs commands htree_dump, dx_hash, and list_dir so they print a
+print a usage message when an illegal option character is given.
+
+Fix debugfs's dump_unsued command on filesystems with a 64k blocksize
+so it won't core dump. (Addresses SourceForge bug #1424311)
+
+Fix mklost+found so that it creates a full-sized directory on
+filesystems with larger block sizes.
+
+Fix a file descriptor leak in blkid library.
+
Fix a display bug in "badblocks -sv" so that the done message properly
clears the block number at the end of the test. (Addresses Debian Bug
#322231)
Fixed spelling mistakes, typos, and otherwise clarified man pages and
documentation. (Addresses Debian Bugs: #329859, #322188, #316811,
-#312515, #351268, #357951, #347295, #316040)
+#312515, #351268, #357951, #347295, #316040, #368392, #368393, #368394,
+#368179)
Fixed various Debian packaging issues --- see debian/changelog for
details. (Addresses Debian Bugs #317862, #320389, #290429, #310950,
-#310428, #330737, #330736, #329074, #356293)
+#310428, #330737, #330736, #329074, #356293, #360046, #366017, #364516,
+#362544, #362970)
+
Programmer's notes:
-------------------
+Update config.guess and config.sub to latest version (2006-02-23) from
+FSF.
+
+Fix asm_types.h type conflicts on AMD 64 platforms. (Addresses Debian
+Bugs: #360661, #360317)
+
Fixed the Makefile so that they work correctly on newer versions of
GNU make (i.e., 3.81).
might need to specify -L paths to needed libraries. (Addresses
Sourceforge Bug #1261549)
+Add a new feature, EXT2_FEATURE_COMPAT_LAZY_BG, which is initially
+intended for testing purposes. It allows an ext2/ext3 developer to
+create very large filesystems using sparse files where most of the
+block groups are not initialized and so do not require much disk
+space. Eventually it could be used as a way of speeding up mke2fs and
+e2fsck for large filesystem, but that would be best done by adding an
+RO_COMPAT extension to the filesystem to allow the inode table to be
+lazily initialized on a per-block basis, instead of being entirely
+initialized or entirely unused on a per-blockgroup basis.
+
+Fix backwards compatibility so e2fsprogs will better compile on Linux
+2.0.35 systems.
+
+Make test scripts more robust against locale-related environment variables
+
+Fix type warning problem with sizeof() in ext2fs_open2().
+
+Fix type warning problem with time_t in debugfs.
+
E2fsprogs 1.38 (June 30, 2005)
==============================