Theodore Ts'o [Fri, 1 Aug 2003 13:41:07 +0000 (09:41 -0400)]
ext2fs_getmem(), ext2fs_free_mem(), and ext2fs_resize_mem()
all now take a 'void *' instead of a 'void **' in order to
avoid pointer aliasing problems with GCC 3.x.
Theodore Ts'o [Fri, 1 Aug 2003 04:58:00 +0000 (00:58 -0400)]
badblocks.c (set_o_direct): Add check to make sure the file
offset of the device is page aligned. (Addresses Debian
Bug #203713)
badblocks.c (test_ro, test_rw): Add code to recover after an
error so that we continue reading on page-aligned
boundaries. (Thanks to Philippe Troin <phil@fifi.org> for
the patch.)
Explicitly specify the version of libblkid1 needed in e2fsprogs.shlibs.local
in order to avoid picking up the wrong depedency. (Debian packaging
issue, closes Debian bug #203157)
Addresses Debian bug #201050. Set the libc-dev dependency correctly
and set DEB_{HOST,BUILD}_* variables correctly for architectures
other than *-linux and *-gnu.
mke2fs.c (PRS): Add warning if using -j and the blocksize is
greater than 4096, since some kernels don't support ext3
with large block sizes. (Addresses Debian bug #193773)
Do not include the top-level ChangeLog file in /usr/share/doc/e2fsprogs
for debian packages. The RELEASE-NOTES file is what people should be
reading instead.
fsck.c (wait_many): Rename wait_all() to wait_many(), and have
new semantics: WAIT_ALL vs. WAIT_ATLEAST_ONE. This fixes
a bug where when fsck is waiting for another partition on
the same spindle, it spins wasting a lot of CPU.
tag.c (blkid_find_dev_with_tag): If blkid_probe_all() returns an
error, then reflect that error upwards; don't try again
(forever). This prevents an infinite loop when /proc and
the /etc/blkid.tab file are not present.
badblocks.c (do_read, do_write, test_rw): Change the read/write
test to honor the -c option (number of blocks at a time).
do_read and do_write will try to turn on the O_DIRECT flag
if it appears that it is possible to use it. (Addresses
Debian bug #198006)
mke2fs.c (set_fs_defaults): If sector_size is 0, don't use it to
set the blocksize to zero. This causes MD devices to fail
since they don't support the BLKSSZGET ioctl. (Addresses
Debian bug #196734)
Theodore Ts'o [Tue, 24 Jun 2003 21:34:02 +0000 (17:34 -0400)]
Fix bug in resize2fs which caused it to fail on filesystems with a
non-empty bad block list. Resize2fs now discards any blocks on the
badblock list which are no longer part of the filesystem as the result
of a filesystem shrink. (Note: this means that shrinking and then
enlarging a filesystem is no longer a reversible operation;
information about bad blocks in the part of the filesystem
which is to be chopped off will be lost.)
Theodore Ts'o [Mon, 9 Jun 2003 00:32:46 +0000 (20:32 -0400)]
resize2fs.8.in: Make explicit that you need to run resize2fs
after using fdisk to adjust the partition size when
expanding the filesystem. (Addresses Debian Bug #195616)
Theodore Ts'o [Wed, 21 May 2003 21:28:29 +0000 (17:28 -0400)]
mke2fs.c (PRS, set_fs_defaults): If the sector size of the
device is larger than the default block size, then use the
sector size of the device as the default block size.
getsectsize.c (ext2fs_get_device_sectsize): New function which
returns the hardware sector size (if it is available).
Theodore Ts'o [Sun, 18 May 2003 05:11:52 +0000 (01:11 -0400)]
badblocks.c: Use an unsigned integer to support 4-byte test
patterns with the high bit set. Let the user explicitly
specify a random pattern with the argument "random".
Theodore Ts'o [Sat, 17 May 2003 20:29:27 +0000 (16:29 -0400)]
MCONFIG.in, configure.in: Only put the intl directory in the -I
search path if we are using --with-internal-gettext.
Otherwise causes compatibility problems with the woody
glibc. (Addresses Debian bug #193372)
Theodore Ts'o [Wed, 14 May 2003 03:32:59 +0000 (23:32 -0400)]
main.c (main): Add the ability to specify units to the size
parameter, and make the error and information messages
display explicitly the blocksize used by the filesystem,
to avoid confusion. (Addresses Debian bug: #189814)
Theodore Ts'o [Wed, 14 May 2003 03:03:43 +0000 (23:03 -0400)]
util.c, ls.c, logdump.c, htree.c, dump.c, debugfs.h, debugfs.c, ChangeLog:
util.c (reset_getopt), debugfs.c (do_open_filesys,
do_show_super_stats), ls.c (do_list_dir), dump.c (do_dump),
htree.c (do_htree_dump, do_dx_hash), logdump.c (do_logdump):
Define and use a new function, reset_getopt(), which does whatever
is necessary to reset getopt() again. This is different for
different implementations, so the portabilty issues are a bit of a
nightmare. (Addresses Debian bug #192834)
Theodore Ts'o [Thu, 8 May 2003 14:39:50 +0000 (10:39 -0400)]
Debian packaging issues:
* Remove e2fsprogs-bf package, as it is obsolete. (Closes: #183453)
* Remove NLS support from e2fsprogs-udeb. Save 5.5k on the boot
floppies / install media.
Theodore Ts'o [Wed, 7 May 2003 13:52:14 +0000 (09:52 -0400)]
badblocks.c, badblocks.8.in: Functional enhancements contributed
by Thayne Harbaugh. These patches allow the -t option to
control the test pattern(s) used when checking the disk.
Test patterns may be specified in all modes (r/w, r/o and
non-destructive).
Theodore Ts'o [Wed, 7 May 2003 12:35:38 +0000 (08:35 -0400)]
badblocks.c (test_rw): Fix minor memory leak with test_rw() is
called for multiple passes.
(test_nd): Fix bug in chosing randomness for the
non-destructive test. We were only using 1 bit of
randomness per byte instead of 8 due to a bit-shift bug.
Also, initialize the random number generator from the time
in main(). Thanks to Thayne Harbaugh for pointing out
these bugs.
Theodore Ts'o [Mon, 5 May 2003 16:08:47 +0000 (12:08 -0400)]
Add --enable-test-io-debug configure option which causes e2fsck and
tune2fs to use the test I/O manager.
The test I/O manager has been changed to not do anything extra by
default, unless the TEST_IO_FLAGS and/or TEST_IO_BLOCK environment
variables are set, which controls what I/O operations are logged and
a block number to watch, respectively. The log messages are sent to
stderr by default, unless a filename is specified via the
TEST_IO_LOGFILE environment variable.
Theodore Ts'o [Mon, 5 May 2003 15:35:04 +0000 (11:35 -0400)]
debugfs.c (do_imap), debugfs.h, debug_cmds.ct, debugfs.8.in:
Added new command, imap, which prints the location of a
specified inode in the inode table.
e2fsck/rehash.c (name_cmp): Sort the deleted inodes to the end
of the list, for portability to systems that whose qsort
does not perform a stable sort.
Use setvbuf instead of setbuf to force stdout and
stderr to be non-buffered when the stdout/stderr are a pipe.
This fixes a cosmetic problem when using e2fsck under logsave.
* Add support for the -a and -s options to logsave.
* Change e2fsck to bracket its progress bar output with ctrl-A and ctrl-B
characters, so that logsave -s can omit writing the progress bar output
to the log file.
Add logsave, a new program which saves the output of a command
in a log file, even if the containing directory hasn't been
mounted yet (in which case the it saves the output in
memory until it can write out the logfile).
Remove EXT2_FEATURE_RO_COMPAT_BTREE_DIR mention of since it's not
actually used, and may confuse people who are looking for
EXT2_FEATURE_COMPAT_DIR_INDEX, which is in use.
Use the SS_READLINE_PATH environment variable to control the search
for a suitable readine library. As a default, try using libreadline,
libedit, and libeditline.