Whamcloud - gitweb
Theodore Ts'o [Mon, 3 Apr 2000 13:17:59 +0000 (13:17 +0000)]
ChangeLog, Makefile.in:
Makefile.in: Remove uneeded parenthesis around shell pipelines
containing a "cd" command. Use && instead of ; so that if the "cd"
fails, the makefile stops.
ChangeLog:
Fix typo.
Theodore Ts'o [Mon, 3 Apr 2000 03:18:59 +0000 (03:18 +0000)]
ChangeLog, MCONFIG.in:
MCONFIG.in (CPPFLAGS): Add define of CPPFLAGS from @CPPFLAGS@. Remove
uneeded parenthesis around shell pipelines containing a "cd" command.
Theodore Ts'o [Mon, 3 Apr 2000 02:43:51 +0000 (02:43 +0000)]
ChangeLog, remove_preformat_manpages:
Add e2label.8 to the remove_preformat_manpages script. (Probably
isn't being used any more, but...)
Theodore Ts'o [Sat, 12 Feb 2000 20:12:43 +0000 (20:12 +0000)]
ChangeLog, e2fsck.h, unix.c:
unix.c (e2fsck_update_progress): Limit the number of updates to the
progress bars to 8 times a second. This allows a 9600 baud console
link to keep up.
Theodore Ts'o [Fri, 11 Feb 2000 15:55:07 +0000 (15:55 +0000)]
Many files:
unix.c (main): If compression is enabled on the filesystem, print a
warning message (for now).
message.c: Add new compression shortcut: @c == compress
problem.c, problem.h (PR_1_COMPR_SET): Add new error code.
pass1.c (check_blocks): If the inode has EXT2_COMPRBLK_FL flag set,
check to see if the filesystem supports compression. If it does pass
this information down to process_block() so it can treat the
compressed block flag words correctly. If not, offer to clear the
flag, since it shouldn't be set.
(process_block): If an inode has the compressed inode flag set, allow
EXT2FS_COMPRESSED_BLKADDR.
pass1b.c (process_pass1b_block, delete_file_block, clone_file_block):
pass2.c (deallocate_inode_block): Use HOLE_BLKADDR to check to see if
the block can be skipped.
ChangeLog, Makefile.in:
Makefile.in: Exclude the internationalization files from being
distributed.
ChangeLog, configure, configure.in:
configure.in: Add support for --enable-compression. This is
experimental code only for now, which is why it's under --enable test.
Once it's stable, it will always be compiled in.
TODO:
Commit additional TODO items.
Theodore Ts'o [Fri, 11 Feb 2000 15:44:08 +0000 (15:44 +0000)]
ChangeLog, ext2fs.h:
ext2fs.h: Define EXT2FS_COMPRESSED_BLKADDR and HOLE_BLKADDR.
Conditionally include Compression as a supported type if
ENABLE_COMPRESSION (via --enable-compression) is turned on.
Theodore Ts'o [Fri, 11 Feb 2000 15:39:19 +0000 (15:39 +0000)]
ChangeLog, swapfs.c:
swapfs.c (ext2fs_swap_super): Swap the compression usage bitmap.
Theodore Ts'o [Fri, 11 Feb 2000 05:04:44 +0000 (05:04 +0000)]
ChangeLog, configure, configure.in:
configure.in: Define HAVE_EXT2_IOCTLS based solely on the OS type,
instead of basising on whether a test program compiles. This was
screwing up on some Linux kernel header files, and we know the Hurd
doesn't support the ext2 ioctls anyway.
types.h:
Add newline at end of file.
Theodore Ts'o [Fri, 11 Feb 2000 05:00:19 +0000 (05:00 +0000)]
Many files:
chattr.1.in:
lsattr.1.in: Change "version" to "version/generation number".
chattr.1.in: Fix stupid file vs filesystem typo.
tune2fs.c Fix spelling error (spare vs sparse).
mke2fs.c (PRS): Add safety check to make sure the number of blocks
doesn't exceed 32 bits on a 64 bit machine.
chattr.c: Random cleanup; file-only variables are now static. Options
for setting/clearings flags put into order, and #ifdef's removed
(since we now use a built-in header file). Add error message if user
tries to set and reset the same flag.
lsattr.c: Random cleanup; file-only variables are now static. The -l
"long" listing has been changed to look nicer. Options names have
been renamed to be more descriptive.
Theodore Ts'o [Fri, 11 Feb 2000 04:48:03 +0000 (04:48 +0000)]
ChangeLog, Makefile.in, e2p.h, pf.c:
Makefile.in: Install the e2p.h header.
e2p.h, pf.c (print_flags): Change the third parameter of print_flags()
to be an option parameter, although we only support one option at this
point.
pf.c (print_flags): Updated to use a more generic structure for
storing the ext2 inode flags. Add support for the (current) set of
compression flags.
Theodore Ts'o [Tue, 8 Feb 2000 23:22:19 +0000 (23:22 +0000)]
ChangeLog:
util.c: Make resource tracking message more concise.
Theodore Ts'o [Tue, 8 Feb 2000 23:19:32 +0000 (23:19 +0000)]
ChangeLog, e2fsck.h, pass1.c, pass1b.c:
e2fsck.h:
pass1.c (mark_table_blocks, e2fsck_pass1): Remove
ctx->block_illegal_map, since it's not needed by pass1, and pass1b has
been modified to calculate it manually if needed. This reduces the
memory footprint needed by e2fsck.
pass1b.c (check_if_fs_block): New static function which returns
whether or not a block overlaps with filesystem metadata. This
replaces consulting the block_illegal_map bitmap.
util.c:
Make resource tracking message more concise.
Theodore Ts'o [Tue, 8 Feb 2000 23:16:51 +0000 (23:16 +0000)]
TODO:
Update todo list.
version.h:
Update version file.
Theodore Ts'o [Tue, 8 Feb 2000 22:05:28 +0000 (22:05 +0000)]
ABOUT-NLS:
Add e2fsprogs specific notes.
Theodore Ts'o [Tue, 8 Feb 2000 21:54:15 +0000 (21:54 +0000)]
ABOUT-NLS:
Checkin original version of ABOUT-NLS from the FSF.
Theodore Ts'o [Tue, 8 Feb 2000 21:35:41 +0000 (21:35 +0000)]
.cvsignore, nyc.po:
More i18n checkins.
tune2fs.c:
Fix some stupid i18n compilation bugs.
Theodore Ts'o [Tue, 8 Feb 2000 20:29:44 +0000 (20:29 +0000)]
badblocks.c:
Fix I18N compilation bug.
Theodore Ts'o [Tue, 8 Feb 2000 20:20:46 +0000 (20:20 +0000)]
Many files:
Check in gettext library from 0.10.35.
Makefile.in.in, POTFILES.in, it.po:
Initial commit of Internationalization support.
Theodore Ts'o [Tue, 8 Feb 2000 20:17:21 +0000 (20:17 +0000)]
ChangeLog, configure, configure.in, aclocal.m4:
configure.in, aclocal.m4: Add support for GNU gettext
internationalization support.
Theodore Ts'o [Tue, 8 Feb 2000 19:14:02 +0000 (19:14 +0000)]
ChangeLog, bitops.h:
bitops.h (ext2fs_mark_generic_bitmap, ext2fs_unmark_generic_bitmap,
ext2fs_mark_block_bitmap, ext2fs_unmark_block_bitmap,
ext2fs_mark_inode_bitmap, ext2fs_unmark_inode_bitmap): Change to
return the previous state of the bit that is being marked or unmarked.
For speed optimization.
ChangeLog, pass3.c:
pass3.c (check_directory): Only do the loop detection algorithm if
we've searched over 2048 parent directories and haven't found the end
yet. This means that in the common case, we don't allocate or clear
the inode_loop_detection bitmap, which for large systems, merely
clearing the bitmap for each directory was turning out to be quite
expensive. Thanks to Jani Jaakkola (jjaakkol@cs.helsinki.fi) for
identifying this problem.
ChangeLog, Makefile.in, e2fsck.h, unix.c:
Makefile.in: Call sync after finishing building all in this directory.
unix.c (PRS): sync the filesystem before trying to use BLKFLSBUF, to
minimize the chance of causing dirty blocks to get dropped.
e2fsck.h: Manually define BLKFLSBUF if not defined, and we're on a
Linux/i386 system.
Theodore Ts'o [Tue, 8 Feb 2000 00:50:34 +0000 (00:50 +0000)]
ChangeLog, expect:
f_swapfs: Fix expected text to match changed debugfs dump command for
i_generation field.
Theodore Ts'o [Tue, 8 Feb 2000 00:47:55 +0000 (00:47 +0000)]
Many files:
badblocks.c, chattr.c, dumpe2fs.c, e2label.c, findsuper.c, fsck.c,
get_device_by_label.c, lsattr.c, mke2fs.c, mklost+found.c,
nls-enable.h, partinfo.c, tune2fs.c, uuidgen.c: Add
Internationalization support as suggested by Marco d'Itri
<md@linux.it>.
Theodore Ts'o [Mon, 7 Feb 2000 03:11:03 +0000 (03:11 +0000)]
Many files:
badblocks.c, e2fsck.h, ehandler.c, emptydir.c, extend.c, flushb.c,
iscan.c, message.c, pass1.c, pass1b.c, pass3.c pass4.c, pass5.c,
problem.c, scantest.c, swapfs.c, unix.c, util.c: Add
Internationalization support as suggested by Marco d'Itri
<md@linux.it>.
Theodore Ts'o [Mon, 7 Feb 2000 00:01:17 +0000 (00:01 +0000)]
.del-ext2_fs.h~
7a460879, ChangeLog:
ext2_fs.h: Fix header to skip defining EXT@FS_DEBUG since blows out on
non GCC compilers.
Theodore Ts'o [Sun, 6 Feb 2000 23:57:07 +0000 (23:57 +0000)]
ChangeLog, badblocks.8.in, badblocks.c:
badblocks.c: Fix non-destructive read/write patches from David
Beattie. Non-standard variable-length automatic arrays removed.
Non-destrutive write test fixed so that logic is clearer and more
provably correct. (I believe the old code had a bug where the disk
data wasn't restored if it was interrupted at the wrong time.)
badblocks.8.in: Document new options in man page.
Theodore Ts'o [Wed, 2 Feb 2000 19:14:36 +0000 (19:14 +0000)]
ChangeLog, main.c, resize2fs.h:
resize2fs.h: Remove unneeded #include of linux/fs.h
main.c: Fix gcc -Wall bug. main() should return an int.
Theodore Ts'o [Wed, 2 Feb 2000 19:08:51 +0000 (19:08 +0000)]
ChangeLog, fsck.c, mke2fs.c, partinfo.c:
fsck.c (interpret_device): If there was an attempt to interpret a
device specification of the type "UUID=" or "LABEL=", and it fails,
check to see if /proc/partitions is readable. If not, print a warning
message about /proc perhaps not being mounted, and exit.
mke2fs.c (check_plausibility): Remove unneeded #include of linux/fs.h.
Add #define of MAJOR if necessary.
partinfo.c: Remove unneeded #include of linux/fs.h
Theodore Ts'o [Wed, 2 Feb 2000 16:19:59 +0000 (16:19 +0000)]
ChangeLog, debugfs.c:
debugfs.c (dump_inode): Remove #ifdef for i_version vs. i_generation
since we know it will always be i_generation now.
ChangeLog, e2fsck.h, flushb.c, scantest.c:
e2fsck.h, flushb.c, scantest.c: Remove uneeded include of linux/fs.h
bmap.c:
Fix silly spelling typo.
ChangeLog, getsize.c, ismounted.c, swapfs.c:
getsize.c, ismounted.c: Remove unneeded include of linux/fs.h
swapfs.c: Remove #ifdef HAVE_EXT2_INODE_VERSION since it's not needed
any more; we know it will always be i_generation. Add support for
swapping the high bits of the uid and gid.
Theodore Ts'o [Wed, 2 Feb 2000 16:13:14 +0000 (16:13 +0000)]
ChangeLog, configure, MCONFIG.in, configure.in:
MCONFIG.in: Always include src/include in the include path now. This
forces us to use our internally provided ext2_fs.h file, for sanity's
sake.
configure.in: If linux/fs.h isn't found, then add build/include into
the include path only, since src/include is now always included.
Removed define of HAVE_LINUX_FS_H, since we're not using it any more.
Removed i_version vs. i_generation check, since with the included
header file it is a permanently known quantity. Removed AC_C_CROSS
since it has been merged into AC_PROG_CC in autoconf 2.13.
Theodore Ts'o [Wed, 2 Feb 2000 16:06:35 +0000 (16:06 +0000)]
.del-ext2_fs.h~
7a460879, ChangeLog:
ext2_fs.h: Update to use header file from Linux 2.3.39. (Changes from
kernel header file: Use asm/types.h instead of linux/types.h, and the
__GNU__ versus __hurd__ #ifdef change, with the FSF irrationality
failsafe. See 1999-10-25 Changelog.)
Theodore Ts'o [Wed, 19 Jan 2000 13:26:23 +0000 (13:26 +0000)]
ChangeLog, tune2fs.c:
tune2fs.c (usage): Update the usage message to correctly document the
-s option.
Theodore Ts'o [Tue, 18 Jan 2000 21:27:12 +0000 (21:27 +0000)]
ChangeLog, Makefile.in:
Makefile.in: Since LIBUUID can sometimes include "-lsocket" we need a
separate DEPLIBUUID that can be used in Makefile's dependency rules.
Theodore Ts'o [Tue, 18 Jan 2000 20:59:11 +0000 (20:59 +0000)]
ChangeLog, badblocks.c:
badblocks.c: Folded in patches David Beattie <dbeattie@usa.net>. Need
to do cleanup before release: use of GCC extensions (dynamic arrays);
unclean coding tricks (use of || instead of if statements, etc.).
Comments from David Beattie:
"I added non-destructive write-testing, and quite a few other
features. The non-destructive write testing, triggered by new "-n"
command-line option, will write test patterns to the disk, but only
after reading data off the disk into memory. Then, comparing the test
patterns gives a result as to whether or not those sectors are
reliable. Finally, the original data is written back.
To streamline this operation, I added another option, "-c
blocks_at_once", which will give the number of disk blocks to process
at one time (mnemonic--"count"). I made this default to 16 (as in the
read-only testing mode), and also affect the read-only testing mode.
Of course, read-only mode needs (count * block_size) amount of memory,
and non-destructive read-write needs 3 times that much, so it makes
sense to do the calculations and not overrun available RAM...I would
have liked to implement and auto-memory-usage heuristic, but I have no
idea if it's even possible to determine the amount of free memory on a
Unix system except by reading /proc entries, and that didn't seem
portable. I did NOT make this blocks_at_once affect the behavior of
the test_rw routine, as it is processing the whole disk at once,
anyway.
I *think* that I got higher detection rates on my hard drive using
random test data than patterned test data, so my non-destructive mode
initializes its test data buffer randomly.
I fixed a typo in flush_bufs that caused the ioctl BLKFLSBUF to never
get compiled into the program.
Also, I added an "undocumented" (I didn't put it into the usage
message; you can if you think it's useful) "-h" option to specify the
host device to flush--useful if you want to test out my
"non-destructive" code on something other than a hard drive, such as a
file on a hard drive, and want the host hard drive to flush.
I provided support for an "input" file (via option "-i", similar to
the "-o" option)...containing a list of already-known bad blocks; it
will skip testing those blocks, thus adding speed to the bad block
scan (on my computer, hitting a physically bad block causes a
half-second-or-more freeze as the kernel waits for the hard drive to
give up and reset itself; pretty annoying when you already know the
block is bad from a previous scan).
Finally, the real killer, the persistent re-scan (option: "-p
num_passes") that I created will, if desired, persistently re-scan the
drive until it has completed a user-decidable number of passes in a
row during which no new bad blocks are found. On my drive, I would
see behavior that a certain percentage of bad blocks would be found
with each pass (it was not reliable in the defective areas!), so I
wanted it to check it over and over again until it didn't find any
more, several times. Perhaps this will be useful to others. Defaults
of course to zero, meaning it will stop after the first pass. I used
"-p 2" on my drive, and it ran for 2 1/2 days...then used "-p 3" a
couple days later and it ran for a few more hours, and since then the
rest of my drive has been completely reliable.
Implementation of these last two features, "-i" and "-p", I did using
a bb_list from libext2fs. I debated whether bad blocks input through
"-i" should be output into the "-o" file (or stdout, of course), and
decided against it, but left the code to do so in place, commented
out, just for your information.
In order to maintain data integrity upon interruption of a
non-destructive-write test, I created a signal handler which I install
which will write back whatever original disk data is in the buffers
upon any of the fatal signals (except SIGKILL, of course).
Of course, ideally, the new options would be reflected in the
badblocks manual page, but I am not experienced at manual page
modification; if you decide my patch to badblocks should be
incorporated into the distribution, I could learn how to update the
manpage and other documentation, or you could do it for me after
exercising your opinions, if you have any, on exactly what the
command-line parameters should be called and which ones should be in
the distribution."
Theodore Ts'o [Tue, 18 Jan 2000 17:58:34 +0000 (17:58 +0000)]
ChangeLog, debugfs.c:
debugfs.c (main): Use return instead of exit at the end to avoid some
compiler warnings
Theodore Ts'o [Tue, 18 Jan 2000 17:53:27 +0000 (17:53 +0000)]
ChangeLog, MCONFIG.in:
MCONFIG.in (DEPLIBUUID): Since LIBUUID can sometimes include
"-lsocket" we need a separate DEPLIBUUID that can be used in
Makefile's dependency rules.
ChangeLog, Makefile.in:
Makefile.in: Since LIBUUID can sometimes include "-lsocket" we need a
separate DEPLIBUUID that can be used in Makefile's dependency rules.
Theodore Ts'o [Tue, 18 Jan 2000 16:30:27 +0000 (16:30 +0000)]
ChangeLog, Makefile.in, fsck.c:
Really fix the bug where "fsck -As" will actually allow interactive
fsck's. (For those people who like to do interactive fsck's in the
/etc/rc scripts!?!)
Theodore Ts'o [Tue, 18 Jan 2000 16:24:13 +0000 (16:24 +0000)]
ChangeLog, execute_cmd.c:
execute_cmd.c (ss_execute_line): Fix memory leak; we weren't freeing
the argv array.
Theodore Ts'o [Tue, 23 Nov 1999 13:57:16 +0000 (13:57 +0000)]
ChangeLog, e2fsck.8.in:
e2fsck.8.in: Update language about where to find a backup superblock.
Theodore Ts'o [Tue, 23 Nov 1999 13:52:48 +0000 (13:52 +0000)]
ChangeLog, pass1.c:
pass1.c (process_inodes): Add shortcut handling; if
process_inodes_count is zero, return right away, to avoid calling
qsort with a non-positive count.
Theodore Ts'o [Tue, 23 Nov 1999 13:48:58 +0000 (13:48 +0000)]
ChangeLog, tune2fs.8.in:
tune2fs.8.in: Fix man page so that the sparse_super filesystem option
is properly named.
Theodore Ts'o [Tue, 23 Nov 1999 02:23:30 +0000 (02:23 +0000)]
ChangeLog, mke2fs.c:
mke2fs.c: Change log2() and log10() to int_log2() and int_log10() to
avoid namespace collisions. Change #ifdef sparc to #ifdef __sparc__.
Theodore Ts'o [Fri, 19 Nov 1999 18:52:36 +0000 (18:52 +0000)]
ChangeLog, message.c:
message.c (safe_print): Fix to properly display ^A, ^B, etc. and to
print Delete as ^?
Theodore Ts'o [Fri, 19 Nov 1999 18:49:27 +0000 (18:49 +0000)]
ChangeLog, mkdir.c:
mkdir.c (ext2fs_mkdir): Only update the parent's inode link counts if
the link was successful. Patch suggested by jeremy@goop.org.
Theodore Ts'o [Fri, 19 Nov 1999 18:42:30 +0000 (18:42 +0000)]
ChangeLog, Makefile.in:
Makefile.in (distclean): Remove TAGS and Makefile.in.old from the
source directory. Also, when making the .exclude file for the
source_tar_file, exclude those two files as well.
Makefile.in (distclean): Remove TAGS and Makefile.in.old from the
source directory.
Theodore Ts'o [Wed, 10 Nov 1999 18:32:40 +0000 (18:32 +0000)]
e2fsprogs.lsm:
Update for 1.18 release.
Theodore Ts'o [Wed, 10 Nov 1999 16:00:39 +0000 (16:00 +0000)]
libext2fs.texinfo, ChangeLog:
Update for 1.18 release.
Theodore Ts'o [Wed, 10 Nov 1999 15:56:16 +0000 (15:56 +0000)]
README, RELEASE-NOTES, TODO, e2fsprogs.spec, version.h:
Update for 1.18 release.
Theodore Ts'o [Wed, 10 Nov 1999 15:50:24 +0000 (15:50 +0000)]
ChangeLog, problem.c, problemP.h:
problem.c (fix_problem): Support a new flag, PR_PREEN_NO which means
the answer is assumed to be no in preen mode. This is now used in the
PR_1_SET_IMMUTABLE code, so that in preen mode we ignore these inodes
and just print a warning message.
Theodore Ts'o [Wed, 10 Nov 1999 13:34:40 +0000 (13:34 +0000)]
ChangeLog, e2fsck.h, pass1.c, pass2.c, pass3.c, problem.c, problem.h, util.c:
pass1.c (e2fsck_pass1): If the filesystem does not support imagic
inodes, if an inode has the imagic flag set, offer to clear the imagic
flag. If a valid device/fifo/socket has the immutable flag set, call
the new helper function check_immutable() to offerto clear the
immutable flag.
pass2.c (check_filetype): Use the new ext2_file_type() helper function
instead of calculating the file_type information manually.
pass3.c (e2fsck_reconnect_file): When adding a link to lost+found,
calculate the filetype information so that ext2fs_link() can use the
information if applicable. (get_lost_and_found): Create the
/lost+found directory with the correct filetype information if
applicable.
util.c (ext2_file_type), e2fsck.h: New function which returns the
directory entry file type information given the inode's mode bits.
problem.c, problem.h: Added new problem codes PR_1_SET_IMAGIC and
PR_1_SET_IMMUTABLE.
ChangeLog, mke2fs.8.in:
mke2fs.8.in: Update manual page so that the sparse_option filesystem
option is properly named.
Theodore Ts'o [Wed, 10 Nov 1999 13:17:24 +0000 (13:17 +0000)]
ChangeLog, run_e2fsck, expect.1, expect.2, image.gz, name, script:
f_imagic: New test case which tests handling of imagic inodes in an
non-imagic-enabled filessystem.
f_imagic_fs: New test case which tests handling of imagic inodes in an
imagic-enabled filesystem.
f_filetype: New test case which tests setting filetype information in
a filesystem. Also tests handling of immutable special files
(device/fifo).
run_e2fsck: Add support for PREP_CMD, which allows a test case to
specify some commands which will be run (via eval) after the image is
compressed and before running e2fsck.
Theodore Ts'o [Mon, 8 Nov 1999 22:05:04 +0000 (22:05 +0000)]
ChangeLog, Makefile.in, badblocks.c, freefs.c, tst_badblocks.c:
Makefile.in (tst_badblocks): Add freefs.o to the object list, since
ext2fs_badblocks_list_free was moved to freefs.c.
tst_badblocks.c: Use the newer badblocks API names. Add duplicate
blocks to the test inputs to test dealing with adding blocks which are
already in the badblocks list.
badblocks.c (ext2fs_badblocks_list_add): If appending to the end of
the list, use a shortcut O(1) operations instead of an O(n) operation.
(Idea suggested by David Beattie.)
freefs.c (ext2fs_free): Use ext2fs_badblocks_list_free() instead of
badblocks_list_free(), to save a procedure call.
Theodore Ts'o [Mon, 8 Nov 1999 19:27:13 +0000 (19:27 +0000)]
ChangeLog, icheck.c, ncheck.c:
icheck.c (do_icheck):
ncheck.c (do_ncheck): If ext2fs_open_inode_scan() returns
EXT2_ET_BAD_BLOCK_IN_INODE_TABLE loop to skip over the bad blocks in
the inode table.
Theodore Ts'o [Mon, 8 Nov 1999 18:46:54 +0000 (18:46 +0000)]
ChangeLog, e2fsck.c, pass4.c, problem.h, unix.c:
pass4.c (e2fsck_pass4): Clear inode_imagic_map after freeing it, to
prevent it from getting freed twice.
unix.c (main): Close the filesystem before freeing the context, so
that in the event of a free()-related segmentation violation, the
filesystem is properly closed and written out.
e2fsck.c (e2fsck_reset_context): When freeing ctx->inode_reg_map, we
weren't zero'ing ctx->inode_reg_map, which could cause a segfault
later on in the e2fsck run.
problem.h (PR_2_SPLIT_DOT): Fix excess zero in problem code (now
matches the standard convention).
Theodore Ts'o [Thu, 4 Nov 1999 22:34:43 +0000 (22:34 +0000)]
ChangeLog, fsck.c:
fsck.c (main): Move setting of the interactive flag to before the call
to check_all(), so that people who try to use fsck -As can do so
interactively.
Theodore Ts'o [Tue, 26 Oct 1999 18:17:20 +0000 (18:17 +0000)]
ADD TAG: E2FSPROGS-1_17
Theodore Ts'o [Tue, 26 Oct 1999 18:17:20 +0000 (18:17 +0000)]
Many files:
Update for 1.17 release.
Theodore Ts'o [Tue, 26 Oct 1999 17:17:00 +0000 (17:17 +0000)]
ChangeLog, fsck.c:
fsck.c (PRS, device_already_active): Add debugging hook; if the
environment variable FSCK_FORCE_ALL_PARALLEL is set, then force all
fsck runs to happen in parallel.
Theodore Ts'o [Tue, 26 Oct 1999 16:42:50 +0000 (16:42 +0000)]
ChangeLog, mke2fs.c:
mke2fs.c (set_fs_defaults): Changed parameter name to avoid gcc
warnings.
Makefile.in:
Update dependency information.
Theodore Ts'o [Tue, 26 Oct 1999 16:28:59 +0000 (16:28 +0000)]
ChangeLog, subst.c:
subst.c (substitute_line): Removed some unused variables.
Theodore Ts'o [Tue, 26 Oct 1999 14:38:36 +0000 (14:38 +0000)]
ChangeLog, get_device_by_label.c:
get_device_by_label.c (has_right_label): Fixed bug where code used a
strncmp to compare a binary UUID value which may contain a NULL.
Fixed GCC warnings; added const to char * typed variables. Eliminated
non-portable use of u_char.
Theodore Ts'o [Tue, 26 Oct 1999 14:35:51 +0000 (14:35 +0000)]
ChangeLog, mke2fs.c:
mke2fs.c (PRS): Fix gcc warnings; add const to some char * variables,
including in struct mke2fs_defaults.
Theodore Ts'o [Tue, 26 Oct 1999 14:33:24 +0000 (14:33 +0000)]
ChangeLog, fsck.c:
fsck.c (wait_one): Fix gcc warnings; add #include for ctype.h, add
const to char * variables, and use NOARGS to declare functions that
take no arguments. Also fix a memory leak in execute() where we
weren't freeing argv[] after forking the child process.
Theodore Ts'o [Tue, 26 Oct 1999 14:29:22 +0000 (14:29 +0000)]
ChangeLog, e2p.h, feature.c:
feature.c: Fix GCC warnings; add const to the char * types in the
function prototypes for e2p_feature2string and e2p_edit_feature.
ChangeLog, uuid.h, uuid_time.c:
uuid_time.c (variant_string): Declare to be static to avoid gcc warnings.
uuid.h: Add function prototypes for uuid_generate_random() and
uuid_generate_time().
ChangeLog, chattr.c:
chattr.c: Add hack to compile in a definition for S_ISLNK so we can
successfully compile even with warnings turned on.
Theodore Ts'o [Tue, 26 Oct 1999 14:20:22 +0000 (14:20 +0000)]
ChangeLog, debugfs.c, debugfs.h:
debugfs.h: Add declaration for do_features()
debugfs.c: Add #incldue of e2p.h to fix gcc warnings.
ChangeLog, message.c:
message.c (safe_print): Make safe_print take an char instead of an
unsigned char to fix gcc warnings.
Theodore Ts'o [Tue, 26 Oct 1999 04:49:54 +0000 (04:49 +0000)]
ChangeLog, ext2fs.h:
ext2fs.h: Add kludge to deal with the fact that egcs cpp doesn't seem
to handle ~0UL the same way as they used to.
Theodore Ts'o [Tue, 26 Oct 1999 04:28:53 +0000 (04:28 +0000)]
util.c:
Fix stupid bugs in NT portability patch.
ChangeLog, configure, configure.in:
Add termios.h to the headers which are checked.
Theodore Ts'o [Tue, 26 Oct 1999 04:19:45 +0000 (04:19 +0000)]
ChangeLog, configure, configure.in:
configure.in: Move the code that checks for the presence of Linux
header files, to earlier in the config file, since it adds a directory
to the include path, and that needs to happen before any compile tests
are run.
Theodore Ts'o [Tue, 26 Oct 1999 02:50:36 +0000 (02:50 +0000)]
ChangeLog, gen_uuid_nt.c:
gen_uuid_nt.c (uuid_generate): W2K strikes again! An incompatible
interface change means we need to detect whether the code is running
on an NT4 or NT5 system.
config.h, ChangeLog:
config.h: Add #define's for strcasecmp and strncasecmp
Theodore Ts'o [Tue, 26 Oct 1999 02:39:02 +0000 (02:39 +0000)]
nt_io.c:
Add e-mail address to author's name.
Theodore Ts'o [Tue, 26 Oct 1999 02:34:47 +0000 (02:34 +0000)]
ChangeLog, nt_io.c:
nt_io.c (_OpenNtName): Open the device using
FILE_SYNCHRONOUS_IO_NONALERT instead of FILE_SYNCHRONOUS_IO_ALERT
(nt_open): At the end of the device open routine, unlock the drive but
do not dismount it.
Theodore Ts'o [Tue, 26 Oct 1999 02:30:16 +0000 (02:30 +0000)]
ChangeLog, mke2fs.c:
mke2fs.c (PRS): Use __u64 instead of long long for portability
reasons.
Moved #include of sys/stat.h inside #ifdef HAVE_LINUX_MAJOR_H for
portability reasons.
ChangeLog, util.c:
util.c: For NT portability, don't redefine getchar(), since stdio
defines that. Instead we introduce a new abstract macro read_a_char()
which is #defined to the right function as necessary.
Theodore Ts'o [Tue, 26 Oct 1999 02:06:39 +0000 (02:06 +0000)]
.del-ext2_fs.h~
7a460879, ChangeLog:
ext2_fs.h (i_reserved2): Use __GNU__ instead of __hurd__ to detect the
Hurd OS. To protect against future irrationality on the part of the
FSF concerning whether Linux is GNU or not, on a system which defines
both __linux__ and __GNU___, __linux__ takes precedence.
ChangeLog, initialize.c:
initialize.c (CREATOR_OS): Use __GNU__ instead of __gnu__ to detect
the Hurd OS.
ChangeLog, debugfs.c:
debugfs.c (do_dirty_filesys): Make the "dirty" command clear the valid
bit on the superblock. (And with a -clean option to set the valid
bit.) Originally it was used just to set the "needs to be written"
bit in the in-core version of the fs structure.
Theodore Ts'o [Tue, 26 Oct 1999 01:58:54 +0000 (01:58 +0000)]
ChangeLog, fsck.c:
fsck.c (execute): Fix really stupid bug in the linked list management
which caused fsck in parallel mode to go into an infinite loop.
ChangeLog, mke2fs.c:
mke2fs.c (show_stats): Capitalized Hurd to make the GNU types happy.
ChangeLog, configure.in:
configure.in: Capitalized Hurd to make the GNU folks happy.
Theodore Ts'o [Mon, 25 Oct 1999 21:03:34 +0000 (21:03 +0000)]
ChangeLog, pass2.c, problem.c, problem.h:
problem.c, problem.h (PR_2_NULL_NAME): Add new problem code.
pass2.c (check_dir_block): Require that the length of the directory
entry be at least 12 bytes. Check to see if the filename is
zero-length, and flag that as an error.
Theodore Ts'o [Sat, 23 Oct 1999 04:25:48 +0000 (04:25 +0000)]
ADD TAG: E2FSPROGS-1_16
Theodore Ts'o [Sat, 23 Oct 1999 03:33:15 +0000 (03:33 +0000)]
README, RELEASE-NOTES, TODO, e2fsprogs.lsm, e2fsprogs.spec, version.h:
Update for 1.16 release.
Theodore Ts'o [Sat, 23 Oct 1999 03:22:38 +0000 (03:22 +0000)]
Makefile.in:
Update makefile dependencies for 1.16 release.
Theodore Ts'o [Sat, 23 Oct 1999 03:19:51 +0000 (03:19 +0000)]
ChangeLog:
Update for 1.16 release.
libext2fs.texinfo:
Update version number for 1.16 release.
Theodore Ts'o [Sat, 23 Oct 1999 03:17:10 +0000 (03:17 +0000)]
debugfs.c:
Update to pass new required parameter to e2p_edit_features
mke2fs.8.in:
Update man page to add explanatory note about how the default block
size is determined.
Theodore Ts'o [Sat, 23 Oct 1999 02:51:33 +0000 (02:51 +0000)]
ChangeLog, com_err.3:
com_err.3: Fix to have correct #include path for com_err.h
Theodore Ts'o [Sat, 23 Oct 1999 01:22:17 +0000 (01:22 +0000)]
mke2fs.c, tune2fs.c:
Fixed usage messages.
Theodore Ts'o [Sat, 23 Oct 1999 01:16:22 +0000 (01:16 +0000)]
Many files:
Update copyright statements.
Theodore Ts'o [Sat, 23 Oct 1999 01:04:50 +0000 (01:04 +0000)]
ChangeLog, Makefile.in, mke2fs.8.in, mke2fs.c, tune2fs.8.in, tune2fs.c:
tune2fs.c (main): Add a new option -O which allows the user to set and
clear certain "safe" filsystem feature flags. Currently, the only
ones which are supported for modification are sparse_superblock and
filetype.
mke2fs.c (PRS): Add new option -O which allows the user to request
filesystems with specific filesystem options. By default on 2.2 and
later systems, create filesystems that have both file type information
and sparse superblocks.
Theodore Ts'o [Sat, 23 Oct 1999 01:01:09 +0000 (01:01 +0000)]
ChangeLog, e2p.h, feature.c:
feature.c (e2p_edit_feature), e2p.h: Add a new argument which allows
the calling application to limit what features the user is allowed to
set or clear using this function. Also add support for comma
separated lists.
Theodore Ts'o [Sat, 23 Oct 1999 00:58:54 +0000 (00:58 +0000)]
ChangeLog, link.c, mkdir.c, newdir.c:
mkdir.c (ext2fs_mkdir): Pass EXT2_FT_DIR flag to ext2fs_link().
link.c (ext2fs_link): This call now uses the low three bits of the
flags parameter to pass the directory filetype information; it will
set the directory entry FILETYPE information if the filesystem
supports it.
newdir.c (ext2fs_new_dir_block): If the FILETYPE superblock option is
set, then create the '.' and '..' entries with the filetype set to
EXT2_FT_DIR.
Theodore Ts'o [Fri, 22 Oct 1999 15:11:42 +0000 (15:11 +0000)]
ChangeLog, pass2.c, problem.c, problem.h:
pass2.c (check_filetype): If the filetype filesystem feature is not
set, and a directory entry has a dirent feature, offer to clear it
(since 2.0 kernels will do complain will interpret it as a very large
name length field).
Theodore Ts'o [Thu, 21 Oct 1999 19:56:34 +0000 (19:56 +0000)]
Many files:
badblocks.8.in, chattr.1.in, dumpe2fs.8.in, e2label.8.in,
fsck.8.in, lsattr.1.in, mke2fs.8.in, mklost+found.8.in,
tune2fs.8.in, uuidgen.1.in: Update man page to use a more standard
format (bold option flags and italicized variables), as suggested by
Andreas Dilger (adilger@enel.ucalgary.ca)
ChangeLog, e2fsck.8.in:
e2fsck.8.in: Update man page to use a more standard format (bold
option flags and italicized variables), as suggested by Andreas Dilger
(adilger@enel.ucalgary.ca)
ChangeLog, uuid_generate.3.in:
uuid_generate.8.in: Update man page to use a more standard format
(bold option flags and italicized variables), as suggested by Andreas
Dilger (adilger@enel.ucalgary.ca)
Theodore Ts'o [Thu, 21 Oct 1999 19:33:18 +0000 (19:33 +0000)]
Many files:
pass4.c (e2fsck_pass4): If an inode is set in the inode_imagic_map
bitmap, don't check to see if it is disconnected from the inode tree
(because it almost certainly will be). Free inode_imagic_map at the
end of pass 4.
pass2.c (check_dir_block, check_filetype): If the FILETYPE feature is
set, check the directory entry's filetype information field, and
fix/set it if necessary. (e2fsck_pass2): Free the inode_reg_map
bitmap at the end of pass 2.
pass1.c (e2fsck_pass1, alloc_imagic_map): Allocate and fill in
information for inode_reg_map and inode_imagic_map, which indicates
which inodes are regular files and AFS inodes, respectively.
Since only the master superblock is written during a restart, force
that superblock to be used after a restart; otherwise changes to the
block group descriptors end up getting ignored.
problem.c, problemP.h: If e2fsck is run -n, make def_yn variable be 0
for "no". Add support for a new flag, PR_NO_NOMSG, which supresses
the problem message if e2fsck is run with the -n option.
problem.c, problem.h (PR_2_SET_FILETYPE, PR_2_BAD_FILETYPE): Add new
problem codes.
message.c (expand_dirent_expression): Add support for %dt which prints
the dirent type information.
e2fsck.c (e2fsck_reset_context): Free new bitmaps (inode_reg_map and
inode_imagic_map).
e2fsck.h (e2fsck_t): Add new inode_reg_map and inode_magic_map to the
context structure.
ChangeLog, nt_io.c:
nt_io.c: New file which supports I/O under Windows NT.
ChangeLog, gen_uuid_nt.c:
gen_uuid_nt.c: New file which creates a UUID under Windows NT.
Many files:
Add support for non-Unix compiles
Theodore Ts'o [Wed, 20 Oct 1999 18:29:18 +0000 (18:29 +0000)]
ChangeLog, super.c:
super.c (check_super_block): Check to see whether the inodes_per_group
value in the superblock is insanely too high.
Theodore Ts'o [Wed, 20 Oct 1999 18:24:31 +0000 (18:24 +0000)]
ChangeLog, unix.c, util.c:
unix.c (PRS), util.c (ask_yn): Add #ifdef's to make e2fsprogs easier
to port to non-Unix platforms.
Theodore Ts'o [Wed, 20 Oct 1999 18:20:36 +0000 (18:20 +0000)]
ChangeLog, configure, configure.in:
* configure.in (HAVE_STATE_FLAGS): Check to see if st_flags is
actually useful (since glibc 2.1 declares it on Alpha without
it being usable). Add check for signal.h header file, which
doesn't exist on non-unix platforms.
Theodore Ts'o [Wed, 20 Oct 1999 18:14:23 +0000 (18:14 +0000)]
ChangeLog, tune2fs.c:
tune2fs.c: Fix typo (double spaces) in messages regarding changing the
sparse superblock option
Theodore Ts'o [Wed, 20 Oct 1999 18:11:01 +0000 (18:11 +0000)]
ChangeLog, fsck.c, fsck.h:
fsck.c (wait_one): If the fsck process just started, wait a second
before sending a SIGUSR1, to give it a chance to set the signal
handler; otherwise, fsck will die on an unhandled SIGUSR1.
Theodore Ts'o [Wed, 20 Oct 1999 18:06:29 +0000 (18:06 +0000)]
ChangeLog, mke2fs.c:
Fix display bug when printing out the number of superblocks.
Suggested by Yann Dirson.
Theodore Ts'o [Thu, 16 Sep 1999 14:20:07 +0000 (14:20 +0000)]
ChangeLog, expect.1, expect.2, image.gz, name:
New test case which tests duplicate '.' and '..' entries.
Theodore Ts'o [Tue, 14 Sep 1999 20:55:37 +0000 (20:55 +0000)]
ChangeLog, Makefile.in, debug_cmds.ct, debugfs.8.in, debugfs.c:
debugfs.c, debug_cmds.ct: Add new debugfs command "feature" which
allows the user to set or clear filesystme features. Add the -f
(force) option to the open command. Add the -h (superblock header
only) option to the stats command.
Theodore Ts'o [Tue, 14 Sep 1999 20:21:26 +0000 (20:21 +0000)]
ChangeLog, expanddir.c, ext2fs.h:
ext2fs.h: Add new fields for journalling and define new feature bits
used by newer filesystems: IMAGIC_INODES, HAS_JOURNAL, RECOVER.
expanddir.c (ext2fs_expand_dir, expand_dir_proc): Change where we
update the inode block count and size files so that the block count
field is updated correctly when we create an indirect block.
Theodore Ts'o [Tue, 14 Sep 1999 20:17:38 +0000 (20:17 +0000)]
ChangeLog, Makefile.in, e2p.h, feature.c, ls.c:
Makefile.in, feature.c, e2p.h: New file which is used for displaying
and editing superblock feature sets.
ls.c (print_features, list_super): Add new function print_features
which is used to display the feature bits in the superblock.
Theodore Ts'o [Tue, 14 Sep 1999 20:11:19 +0000 (20:11 +0000)]
ChangeLog, dumpe2fs.8.in, dumpe2fs.c, mke2fs.8.in, mke2fs.c, partinfo.c:
partinfo.c: Fix minor compilation bugs pointed out by Yann Dirson.
mke2fs.c: Don't turn on sparse superblocks by default on pre-2.2 kernels.
mke2fs.8.in: Add the possible valid block sizes for mke2fs. Document
the -n flag, and the new defaults for the -s flag.
dumpe2fs.c, dumpe2fs.8.in: Add new options -f (force) and -h (header-only).
mke2fs.c (PRS): Fix logic for turning on/off the sparse superblock option.
Many files:
Updated copyright statements to reflect the GPL with permission of the
original authors.
Theodore Ts'o [Tue, 14 Sep 1999 20:00:54 +0000 (20:00 +0000)]
ChangeLog, pass1b.c:
pass1b.c (clone_file_block): Don't clear the dup_map flag if the block
also shares data with the fs metadata when the count drops to 1, since
the block should still be cloned, as fs metadata isn't included in the
count.
ChangeLog, pass3.c:
pass3.c (adjust_inode_count): Fix bug where we didn't keep the
internal and external inode counts in sync when we decremented an
inode whose link count was already zero. Now we skip incrementing or
decrementing both link counts if we would cause an overflow condition.
(expand_dir, expand_dir_proc): Change where we update the inode block
count and size files so that the block count field is updated
correctly when we create an indirect block.