Theodore Ts'o [Thu, 16 Jun 2005 19:08:00 +0000 (15:08 -0400)]
defaults/e_script, run_e2fsck, d_loaddump, f_resize_inode,
f_swapfs, f_move_itable, f_resize_inode, test_config:
Allow the diff options to be set in test_config so that
diff -u can be used on platforms that have it. (To be
done: checking whether diff can support -u in the
configure script.)
Theodore Ts'o [Sun, 5 Jun 2005 20:46:19 +0000 (16:46 -0400)]
Fix a minor spelling typo in blkid's man page, and update e2fsck's REPORTING
BUGS section to request that e2fsck's messages printed in English, and to
send a raw e2image filesystem dump if possible.
Theodore Ts'o [Sun, 5 Jun 2005 20:05:22 +0000 (16:05 -0400)]
On Linux 2.6 systems, mke2fs and badblocks will check to see whether
the filesystem appears to be busy; if so, the programs will print an
error message and abort. (Addresses Debian Bug #308594).
Theodore Ts'o [Sat, 21 May 2005 03:10:35 +0000 (23:10 -0400)]
filefrag.c (frag_report, get_bmap): The FIBMAP and FIGETBSZ ioctls return
an integer, not an unsigned long. Fix this to avoid problems on 64-bit
platforms where the size of an integer != the size of a long.
(Addresses Debian Bug #309655)
Theodore Ts'o [Tue, 10 May 2005 02:25:39 +0000 (22:25 -0400)]
Change the default journal size to be bigger for larger filesystems,
given modern memory sizes. Now, for filesystems greater than 4GB, we
use a journal of 128 MB instead 32 MB.
Theodore Ts'o [Tue, 10 May 2005 00:39:02 +0000 (20:39 -0400)]
Modify the script which generates the e2fsprogs.pot translations template
file to include comments that expand the '@' abbrevations in e2fsck/problem.c
Theodore Ts'o [Sun, 8 May 2005 06:15:02 +0000 (02:15 -0400)]
Fix bug in the secure getenv function so that the ss library will corrently
honor the PAGER and SS_READLINE_PATH environtment variables, and the
test_io io_manager in the ext2fs library honors the TEST_IO_LOGFILE,
TEST_IO_FLAGS, TEST_IO_BLOCK, and TEST_IO_READ_ABORT environment variables.
Theodore Ts'o [Sat, 7 May 2005 18:22:38 +0000 (14:22 -0400)]
Clean up the debugging code in the blkid library so that we don't use
the inline functions DEB_DUMP_* and instead use the private functions
blkid_debug_dump_*().
Theodore Ts'o [Sat, 7 May 2005 17:32:47 +0000 (13:32 -0400)]
Add new two new functions to the blkid library: blkid_dev_set_search(), and
blkid_dev_has_tag(), and change the blkid program to take advantage of these
functions.
Theodore Ts'o [Fri, 6 May 2005 20:26:13 +0000 (16:26 -0400)]
When determining the libraries needed for Debian's initrd, unset
LD_PRELOAD and LD_LIBRARY_PATH and filter out libraries found in
/etc/ld.so.preload. (Addresses Debian Bug: #304003)
Theodore Ts'o [Fri, 6 May 2005 13:42:34 +0000 (09:42 -0400)]
If the .c and .h file already exist, and they have not changed, use the
original versions of the files, so as to avoid rebuilding files when not
necessary. Also fixes a potential SMP/Parallel build problem when one
make process runs compile_et to generate the .h file, and a partially
generated .c file is compiled by another make process. (Addresses
Sourceforge Bug: #1157933)
Theodore Ts'o [Fri, 6 May 2005 03:15:55 +0000 (23:15 -0400)]
Corrects a few mistakes in the fsck man page, wraps two overlong lines,
and changes "bad" to "invalid" in some messages to avoid confusion with
"bad blocks" in the e2fsck, mke2fs, and badblocks programs. Thanks to
Benno Schulenberg. (Addresses Sourceforge Bug: #1189803)
Theodore Ts'o [Fri, 6 May 2005 02:55:20 +0000 (22:55 -0400)]
Fix a bug in filefrag so that it doesn't when the first block found is an
indirect block, it doesn't falsely count an extra discontunity. (Addresses
Debian Bug #307607).
Theodore Ts'o [Thu, 5 May 2005 22:06:04 +0000 (18:06 -0400)]
Fix libblkid's magic number recognition for the cramfs filesystem,
and add support to pull out the label for cramfs filesystems.
Thanks to Karel Zak (kzak at redhat.com) for the patch.
Use a centrally stored current time for "now" which
can be overridden using the E2FSCK_TIME environment
variable, for better reproducibility for regression tests.
Don't abort filefrag if EXT3_IOC_GETFLAGS ioctl is not supported,
so that filefrag can work on non-ext2/3 filesystems, as advertised.
(Addresses Debian Bug: #303509)
pass1.c (e2fsck_pass1): If the superblock last mount time (not
just the last write time) looks insane, then assume that
we can't do the LOW_DTIME checks.
Add paranoia checks into the blkid, ext2fs, and ss libraries to ignore
environment variables if the libraries are called from setuid or setguid
programs, or if kernel believes that the process is not eligible to create
a core dump. In addition, if the libc has __secure_getenv(), use it so that
the libc can also do any additional limitations regarding when libraries can
trust environment variables (i.e., to integrate with systems like SELinux
and Posix capabilities).
Theodore Ts'o [Thu, 31 Mar 2005 05:01:33 +0000 (00:01 -0500)]
ostype.c (e2p_os2string): Check to make sure malloc() is
successful before attempting to copy into it. Add
#include of stdlib.h to fix a core dump bug on the IA64
architecture. (Addresses Debian Bug #302200)
Theodore Ts'o [Mon, 21 Mar 2005 18:15:45 +0000 (13:15 -0500)]
Integrate code from Alex Thomas at Clusterfs to check extended attributes
stored in inodes into e2fsck.
There are a number of bug fixes and enhancements over the original lustre fsck
BK repository. The biggest one is that this extended attribute values must
be aligned on 4-byte boundaries.
Theodore Ts'o [Mon, 21 Mar 2005 06:02:53 +0000 (01:02 -0500)]
Fix mke2fs so that it writes the root directory
using ext2fs_write_new_inode(), and fix ext2fs_write_new_inode()
so that it initializes i_extra_isize properly.
Theodore Ts'o [Mon, 21 Mar 2005 01:05:22 +0000 (20:05 -0500)]
Fix e2fsck, debugfs, and the ext2fs_mkdir function so that when we create
a new inode we make sure that the extra information in the inode (any extra
fields in a large inode and any ea-in-inode information) is cleared. This
can happen when e2fsck creates a new root inode or a new lost+found directory,
or when the user uses the debugfs write, mknod, or mkdir commands. Otherwise,
the newly create inode could inherit garbage (or old EA information) from
a previously deleted inode.
Theodore Ts'o [Sat, 19 Mar 2005 01:37:45 +0000 (20:37 -0500)]
filefrag.c (frag_report): Automatically detect files that are
stored using the new experimental file fragments format,
and use the non-ext2 algorithm for determing the number of
extents. Avoid reporting a false discontinuity if there
is a non-allocated block (or extent) at the beginning of
the file.
Theodore Ts'o [Sat, 19 Mar 2005 01:11:59 +0000 (20:11 -0500)]
getsize.c (ext2fs_get_device_size): Check to see if the number
of blocks is greater than 2**32 when we are doing a binary
search to determine the device size. Thanks to Stephen
Tweedie for the patch.
Theodore Ts'o [Thu, 17 Mar 2005 06:16:34 +0000 (01:16 -0500)]
Force compile_et and mk_cmds to use /usr/bin/awk so that we will work
on any Debian system regardless of which version of awk is installed.
(Closes: #299341)
Theodore Ts'o [Fri, 4 Feb 2005 15:43:58 +0000 (10:43 -0500)]
Add support for maintainer mode, which enables the makefile rules
to rebuild the configure script from configure.in, and to reubuild the
.gmo files in po directory.
Theodore Ts'o [Fri, 4 Feb 2005 02:56:44 +0000 (21:56 -0500)]
Drop the sparc assembly bitwise operations; it's less efficient
than the GCC 3.4 compile code and triggers compiler warnings on
sparc64. Thanks to Matthias Andree for his analysis and suggestions.
(Addresses Debian Bug #232326)
Remove support for the --enable-old-bitops configure option which
was only for very old sparc systems.
Theodore Ts'o [Fri, 28 Jan 2005 17:27:35 +0000 (12:27 -0500)]
pass2.c (e2fsck_process_bad_inode): Fix a corner case involving
big-endian systems, long symlinks and i_file_acl set when
it shouldn't be. Without this bugfix, f_clear_xattr will
fail on big-endian machines.
Theodore Ts'o [Fri, 28 Jan 2005 16:45:28 +0000 (11:45 -0500)]
Fix two bugs found by the regression test suites. The bug was created when
we changed ext2fs_create_resize_inode to always create the resize inode,
even when s_reserved_gdt_blocks is zero. Mke2fs and e2fsck was calling
ext2fs_create_resize_inode() unconditionally, and depending on
s_reserved_gdt_blocks to be zero, instead of explicitly checking the
resize_inode feature.
Theodore Ts'o [Fri, 28 Jan 2005 02:40:53 +0000 (21:40 -0500)]
Fixed missing not_fixed branch in e2fsck so that if the frag size field in
the inode is not fixed, the inode_bad_map bitmap won't be cleared. Thanks to
Stephen Tweedie for pointing this out.
Theodore Ts'o [Fri, 28 Jan 2005 00:51:47 +0000 (19:51 -0500)]
blkid.c (main, compare_search_type): Make blkid -t work more
consistently when the blkid cache file is explicitly set
to /dev/null. (Addresses Debian Bug #292425)
Also expose blkid_verify() as a public function to the blkid library.
Theodore Ts'o [Fri, 28 Jan 2005 00:12:05 +0000 (19:12 -0500)]
mke2fs.c (PRS): Don't use a blocksize greater than 4k, even on
2.6 kernels, unless explicitly requested by the user; not
all 2.6 kernels (includeing stock 2.6 kernels as of this
writing) don't support blocksizes > 4k.
Theodore Ts'o [Thu, 27 Jan 2005 23:47:51 +0000 (18:47 -0500)]
Create the resize inode is created even if the s_reserved_gdt_blocks is
zero; e2fsck will now complain and recreate the resize inode if i_links_count
is zero or if it is not a regular file.
Theodore Ts'o [Thu, 27 Jan 2005 19:28:41 +0000 (14:28 -0500)]
Fix e2fsck to not delete symlinks that contain an extended attribute after
the ext_attr feature flag has been cleared. (Addresses Red Hat Bugzilla
#146284)
Theodore Ts'o [Wed, 26 Jan 2005 15:03:56 +0000 (10:03 -0500)]
resize2fs.c: Fix bug where we don't release the blocks belonging
to the old inode table blocks when we move the inode
table. (Addresses Debian Bug: #290894)
Theodore Ts'o [Wed, 26 Jan 2005 04:42:56 +0000 (23:42 -0500)]
Add library support for large (EA in inode) inodes. Make sure that garbage
doesn't get written into the reserved portion when writing into filesystems
that have large inodes defined.
Theodore Ts'o [Tue, 25 Jan 2005 08:26:10 +0000 (03:26 -0500)]
probe.c: Windows can perform a "quick format" that doesn't clear
enough of the partition that the blkid probes can get
confused. Do the NTFS test first to deal with this
Windows misfeature. (Addresses Debian Bug #291990)
Theodore Ts'o [Tue, 25 Jan 2005 08:09:24 +0000 (03:09 -0500)]
E2fsck will now check the individual block group inode and block free counts,
as well as the filesystem-wide inode and block free counts. If any of the
free counts is too large, force a full filesystem check. (Addresses
Debian Bug #291571)