Theodore Ts'o [Tue, 26 Feb 2002 19:59:39 +0000 (14:59 -0500)]
Update Changelog messages to use tytso@mit.edu for all addresses
after September 7, 2001. (Forgot to update my emacs file to get
rid of the tytso@valinux.com address. Oops.)
Theodore Ts'o [Sun, 24 Feb 2002 08:08:57 +0000 (03:08 -0500)]
Update makefiles to install mkfs.ext3, and to install man pages for
mkfs.ext2/3 and fsck.ext2/3. Also remove any compressed man pages
before installing the man pages.
Theodore Ts'o [Tue, 12 Feb 2002 07:34:44 +0000 (02:34 -0500)]
Lots of small random portability fixes to make e2fsprogs build
under AIX --- even without the 5L compatibility toolkit, and even
using the uber-crippled AIX native C compiler.
Theodore Ts'o [Thu, 3 Jan 2002 09:55:25 +0000 (04:55 -0500)]
Add new debugfs commands and arguments which make it easier to
recover deleted files. The lsdel command now takes an optional
argument which allows the user to only see the most recently
deleted files. Also added a new command, undel, which automates
undeleting a deleted inode and linking it back to a directory.
Also added an optional count argument to the testb, freeb, setb,
and find_free_block commands. The ls command now takes a new
option, -d, which lists deleted directory entries.
Factored out out commonly used code into utility subroutines
for ease of maintenance and to make the executable size smaller.
Theodore Ts'o [Thu, 3 Jan 2002 08:29:19 +0000 (03:29 -0500)]
dir_iterate.c (ext2fs_dir_iterate2, ext2fs_process_dir_block):
Add support for a new flag, DIRENT_FLAG_INCLUDE_REMOVED,
which will return deleted directory entries.
ext2fs_dir_iterate2 takes a new callback function which
is identical with the one used by
ext2fs_dblist_dir_iterate(). If the directory entry is
deleted, the callback function will be called with the
entry paraemter set to DIRENT_DELETED_FILE.
Makefile.in, alloc_stats.c (ext2fs_inode_alloc_stats,
ext2fs_block_alloc_stats): New functions which update
block/inode allocation statistics in the bitmaps, block
group descriptors, and superblock.
mkjournal.c (mkjournal_proc), mkdir.c (ext2fs_mkdir),
expanddir.c (expand_dir_proc), bb_inode.c
(clear_bad_block_proc, set_bad_block_proc,
ext2fs_update_bb_inode), alloc.c (ext2fs_alloc_block):
Update to use new block/inode allocation statistics.
Theodore Ts'o [Wed, 26 Dec 2001 13:58:01 +0000 (08:58 -0500)]
tune2fs.8.in, tune2fs.c (parse_tune2fs_options, main): Add
support for new option, -T, which allows the user to set
the last checked time on the filesystem.
Theodore Ts'o [Mon, 24 Dec 2001 20:33:49 +0000 (15:33 -0500)]
Miscellaneous cleanup before 1.26-WIP release. Removed unused
.cvsignore in include/asm directory so it can disappear. Updated
makefile dependencies, and stop including <topsrc>/include in the
-I search path, since it's no longer needed.
Theodore Ts'o [Mon, 24 Dec 2001 20:20:22 +0000 (15:20 -0500)]
ismounted.c (is_swap_device): New function used by
ext2fs_check_if_mounted and ext2fs_check_mount_point which
determines whether or not the specified device is a swap
device by using /proc/swaps. More bulletproofing for
idiotic/careless system administrators!
Theodore Ts'o [Mon, 24 Dec 2001 20:01:59 +0000 (15:01 -0500)]
In mke2fs and e2fsck, specifying the -c option twice will now do
a read/write test on the disk. Update the man pages to encourage
using the -c option, and to discouraging running badblocks separately,
since users tend to forget to set the blocksize when running
badblocks.
Theodore Ts'o [Mon, 24 Dec 2001 14:40:00 +0000 (09:40 -0500)]
Mke2fs now creates the lost+found directory with 0700 permissions,
since files which get dropped into that directory may have come
from a protected directory, and the system administrator may not
deal with immediately. (Addresses Debian bug #118443)
Theodore Ts'o [Mon, 24 Dec 2001 06:40:35 +0000 (01:40 -0500)]
ismounted.c (check_mntent_file): Stat all of the entries in
/etc/mtab and/or /proc/mounts in order to catch dim-witted
system administrators who might have created alias
devices.
Theodore Ts'o [Mon, 24 Dec 2001 03:27:52 +0000 (22:27 -0500)]
Enhnaced the get backup superblock function so that it does
the right thing if the filesystem superblock is unavailable;
it will search for the superblock by iterating over possible
blocksizes.
Theodore Ts'o [Mon, 24 Dec 2001 00:33:51 +0000 (19:33 -0500)]
Move linux/jbd.h to ext2fs/kernel-jbd.h, to avoid using the
system header file version of hbd.h when using diet glibc
(since it forcibly adds /usr/include to the beginning of include
search path.)
Theodore Ts'o [Mon, 17 Dec 2001 04:23:37 +0000 (23:23 -0500)]
Fix various gcc -Wall nits. Fixed a bug in mke2fs where a bogus
error message could be printed on an malloc() failure, and e2image
was optimized to avoid needless system calls by using the stashed
inode functions.
Theodore Ts'o [Sun, 2 Dec 2001 16:23:27 +0000 (17:23 +0100)]
Fixes necessary for e2fsprogs to work using the diet libc.
- Renamed linux/list.h to be linux/linked_list.h to work around a
problem caused by diet libc insistence to search the kernel
header files ahead of all other files in the include path,
including the user specified include files.
- Worked around a bug in diet libc which core dumps when using
putc with stderr by using fputs instead. As a bonus, this
also shaved a few bytes off of com_err.o.
- Fixed a real bug in debugfs which was detected because diet libc
was more sensitive than glibc when incorrectly using fclose()
where pclose() is required.
Theodore Ts'o [Tue, 27 Nov 2001 02:05:36 +0000 (21:05 -0500)]
unix_io.c (unix_open): Work around a bug in 2.4.10+ kernels by
trying to unset the filesize limit if at all possible,
if a block device is getting opened. (The filesize limit
shouldn't be applied against writes to a block device, but
starting in 2.4.10, the kernel is doing this.)
Theodore Ts'o [Tue, 27 Nov 2001 01:00:07 +0000 (20:00 -0500)]
f_miss_blk_bmap: Add new test which checks for bug in e2fsck
where it wouldn't allocate a missing block bitmap on
filesystems with a blocksize of 2k or 4k.
Theodore Ts'o [Mon, 26 Nov 2001 20:51:14 +0000 (15:51 -0500)]
super.c (check_super_block): Make sure that if the inode table
or allocation bitmap is zero, that it is marked as
invalid, so that in pass #1, a new bitmap/inode table gets
properly allocated. (Addresses Debian Bug #116975)
Theodore Ts'o [Sat, 24 Nov 2001 21:10:52 +0000 (16:10 -0500)]
debugfs.8.in: Update manual page to document the set_super_value
and logdump commands, and move the "specifying files"
section closer to the beginning of the man page so people
won't miss it.
setsuper.c (print_possible_fields): "set_super_value -l" now
prints out the list of valid superblock fields which the
ssv command can set.
Theodore Ts'o [Fri, 9 Nov 2001 22:34:54 +0000 (17:34 -0500)]
mkjournal.c (ext2fs_add_journal_inode): When creating a .journal
file on adding a journal to an already-mounted filesystem,
try to clear the ext2 file attributes on an already
existing .journal file so that we don't fail if on a
partially added journal to the filesystem.
Theodore Ts'o [Tue, 6 Nov 2001 00:22:02 +0000 (19:22 -0500)]
Define a new ext2 file attribute, EXT2_NOTAIL_FL,
which signals that a particular inode should not have the
last bits of data (the "tail") be merged with another
file. This is necessary to keep programs like LILO happy.
Theodore Ts'o [Mon, 5 Nov 2001 23:58:46 +0000 (18:58 -0500)]
fsck.c (interpret_type): If the "auto" type is specified, make
sure interpet_device() is called so that device
specifications which use LABEL= or UUID= are translated
into a real device name.
Andreas Dilger [Fri, 9 Nov 2001 00:56:12 +0000 (17:56 -0700)]
Support very large files with debugfs (first pass).
If a file is created with "dd if=/dev/zero of=<file> bs=1k skip=2047M"
it is created properly by the kernel, but fails to be seen properly
by debugfs - the blocks are not shown by stat <inum>, nor can they
be found by icheck. This change fixes that.
Andreas Dilger [Mon, 1 Oct 2001 22:02:20 +0000 (16:02 -0600)]
Add libuuid man pages to the RPM spec file.
Add a copyright statement to the libuuid man page which identifies it
as being under LGPL. While this is conveyed in the source code, it is
not mentioned anywhere in the man pages or other documentation.
Theodore Ts'o [Sun, 7 Oct 2001 06:13:30 +0000 (02:13 -0400)]
journal.c (clear_v2_journal_fields, e2fsck_journal_load): If the
V2 fields are set on a V1 journal superblock, or an
internal V2 journal has s_nr_users is non-zero, clear the
entire journal superblock beyond the V1 superblock. This
fixes botched V1->V2 updates.
problem.c, problem.h (PR_0_CLEAR_V2_JOURNAL): Add new problem code.
f_bad_local_jnl: New test which tests for a V2 journal with bad
fields caused by a botched V1->V2 upgrade.
Theodore Ts'o [Sun, 7 Oct 2001 01:26:27 +0000 (21:26 -0400)]
e2fsck.h, journal.c (e2fsck_move_ext3_journal): Add new function
which will automatically relocate the ext3 journal from a
visible file to an invisible journal file if the
filesystem has been opened read/write.
super.c (check_super_block): Add call to e2fsck_move_ext3_journal
problem.c, problem.h (PR_0_MOVE_JOURNAL, PR_0_ERR_MOVE_JOURNAL):
Add new problem codes.