Commit Graph

393 Commits (06af47f0e81c8dd75daf83c848659ef011ea5450)

Author SHA1 Message Date
Theodore Ts'o 06af47f0e8 ChangeLog, block.c:
block.c: Readibility tweak in conditionals involving ctx->fs->flags.
2000-04-03 13:51:00 +00:00
Theodore Ts'o 906e1f1866 .del-ext2_fs.h~7a460879, ChangeLog:
ext2_fs.h (EXT2_NOCOMPR_FL): Rename EXT2_NOCOMP_FL to EXT2_NOCOMPR_FL.
ChangeLog, Makefile.in, pf.c:
  pf.c (print_flags): Rename EXT2_NOCOMP_FL to 	EXT2_NOCOMPR_FL.
  Makefile.in: Add "set -e" so that any errors in installing header
  	files causes an immediate exit.
2000-04-03 13:48:52 +00:00
Theodore Ts'o e589f678e1 ChangeLog, gen_uuid.c:
gen_uuid.c (get_random_bytes): Make more paranoid about misbehaving
  	/dev/urandom.  If we get a return of zero without an error more than 8
  	times in a row, we break out and return an error.  Also, if
  	/dev/urandom doesn't exist, try /dev/random.
ChangeLog, ext2fs.h:
  ext2fs.h: Use AUTOCONF SIZEOF_* macros if available to determine how
  	to define __s64 and __u64.  Turn off "compression is experimental"
  	warning if the cpp macro I_KNOW_THAT_COMPRESSION_IS_EXPERIMENTAL is
  	defined.
2000-04-03 13:45:40 +00:00
Theodore Ts'o 78f9351b46 ABOUT-NLS, ChangeLog:
Fix grammar/spelling nits.
2000-04-03 13:31:09 +00:00
Theodore Ts'o ffe4cab315 Many files:
badblocks.8.in, chattr.1.in, dumpe2fs.8.in, lsattr.1.in,
  	mklost+found.8.in, tune2fs.8.in: Update Remy Card's e-mail address.
  chattr.1.in: Update which attributes aren't supported.
2000-04-03 13:27:41 +00:00
Theodore Ts'o 286a31aa8a 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.
2000-04-03 13:17:59 +00:00
Theodore Ts'o e8aed8c8db ChangeLog, MCONFIG.in:
MCONFIG.in (CPPFLAGS): Add define of CPPFLAGS from @CPPFLAGS@.  Remove
  	uneeded parenthesis around shell pipelines containing a "cd" command.
2000-04-03 03:18:59 +00:00
Theodore Ts'o ceec25a595 ChangeLog, remove_preformat_manpages:
Add e2label.8 to the remove_preformat_manpages script.  (Probably
  isn't being used any more, but...)
2000-04-03 02:43:51 +00:00
Theodore Ts'o 0601232332 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.
2000-02-12 20:12:43 +00:00
Theodore Ts'o 1917875fcd 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.
2000-02-11 15:55:07 +00:00
Theodore Ts'o 5a63dd28f2 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.
2000-02-11 15:44:08 +00:00
Theodore Ts'o 2c1a0ce7c6 ChangeLog, swapfs.c:
swapfs.c (ext2fs_swap_super): Swap the compression usage bitmap.
2000-02-11 15:39:19 +00:00
Theodore Ts'o 8f3f29d383 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.
2000-02-11 05:04:44 +00:00
Theodore Ts'o e1a0a3e304 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.
2000-02-11 05:00:19 +00:00
Theodore Ts'o dede39bbb8 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.
2000-02-11 04:48:03 +00:00
Theodore Ts'o 4ee4ad3757 ChangeLog:
util.c: Make resource tracking message more concise.
2000-02-08 23:22:19 +00:00
Theodore Ts'o 80c5d7e45f 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.
2000-02-08 23:19:32 +00:00
Theodore Ts'o fdbba5c2ac TODO:
Update todo list.
version.h:
  Update version file.
2000-02-08 23:16:51 +00:00
Theodore Ts'o a1774c328b ABOUT-NLS:
Add e2fsprogs specific notes.
2000-02-08 22:05:28 +00:00
Theodore Ts'o e435507f29 ABOUT-NLS:
Checkin original version of ABOUT-NLS from the FSF.
2000-02-08 21:54:15 +00:00
Theodore Ts'o a4fa100c5b .cvsignore, nyc.po:
More i18n checkins.
tune2fs.c:
  Fix some stupid i18n compilation bugs.
2000-02-08 21:35:41 +00:00
Theodore Ts'o 8f5c0f66ca badblocks.c:
Fix I18N compilation bug.
2000-02-08 20:29:44 +00:00
Theodore Ts'o 5bc5a89c2a Many files:
Check in gettext library from 0.10.35.
Makefile.in.in, POTFILES.in, it.po:
  Initial commit of Internationalization support.
2000-02-08 20:20:46 +00:00
Theodore Ts'o a64c9c13e5 ChangeLog, configure, configure.in, aclocal.m4:
configure.in, aclocal.m4: Add support for GNU gettext
  	internationalization support.
2000-02-08 20:17:21 +00:00
Theodore Ts'o 28ffafb09c 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.
2000-02-08 19:14:02 +00:00
Theodore Ts'o 58efb8250a ChangeLog, expect:
f_swapfs: Fix expected text to match changed debugfs dump command for
  	i_generation field.
2000-02-08 00:50:34 +00:00
Theodore Ts'o d9c56d3ca0 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>.
2000-02-08 00:47:55 +00:00
Theodore Ts'o 0c4a07264e 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>.
2000-02-07 03:11:03 +00:00
Theodore Ts'o 565aea1f40 .del-ext2_fs.h~7a460879, ChangeLog:
ext2_fs.h: Fix header to skip defining EXT@FS_DEBUG since blows out on
  non GCC compilers.
2000-02-07 00:01:17 +00:00
Theodore Ts'o dd018f5aa4 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.
2000-02-06 23:57:07 +00:00
Theodore Ts'o 0a617317ee 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.
2000-02-02 19:14:36 +00:00
Theodore Ts'o b4ee1fb28e 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
2000-02-02 19:08:51 +00:00
Theodore Ts'o 80e808fceb 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.
2000-02-02 16:19:59 +00:00
Theodore Ts'o 73ae2d4a23 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.
2000-02-02 16:13:14 +00:00
Theodore Ts'o 41a817eb13 .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.)
2000-02-02 16:06:35 +00:00
Theodore Ts'o 582134cccf ChangeLog, tune2fs.c:
tune2fs.c (usage): Update the usage message to correctly document the
  	-s option.
2000-01-19 13:26:23 +00:00
Theodore Ts'o 894edb2eaf 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.
2000-01-18 21:27:12 +00:00
Theodore Ts'o 879ac920e3 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."
2000-01-18 20:59:11 +00:00
Theodore Ts'o e597304ab2 ChangeLog, debugfs.c:
debugfs.c (main): Use return instead of exit at the end to avoid some
  	compiler warnings
2000-01-18 17:58:34 +00:00
Theodore Ts'o 77200f4ed7 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.
2000-01-18 17:53:27 +00:00
Theodore Ts'o 3cb7784f30 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!?!)
2000-01-18 16:30:27 +00:00
Theodore Ts'o 7b352e35ad ChangeLog, execute_cmd.c:
execute_cmd.c (ss_execute_line): Fix memory leak; we weren't freeing
  	the argv array.
2000-01-18 16:24:13 +00:00
Theodore Ts'o a1ccadb4ad ChangeLog, e2fsck.8.in:
e2fsck.8.in: Update language about where to find a backup superblock.
1999-11-23 13:57:16 +00:00
Theodore Ts'o 86a63e92eb 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.
1999-11-23 13:52:48 +00:00
Theodore Ts'o bfd2193e52 ChangeLog, tune2fs.8.in:
tune2fs.8.in: Fix man page so that the sparse_super filesystem option
  	is properly named.
1999-11-23 13:48:58 +00:00
Theodore Ts'o 6733c2fd00 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__.
1999-11-23 02:23:30 +00:00
Theodore Ts'o ec8d2c3f6e ChangeLog, message.c:
message.c (safe_print): Fix to properly display ^A, ^B, etc. and to
  	print Delete as ^?
1999-11-19 18:52:36 +00:00
Theodore Ts'o dab278af81 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.
1999-11-19 18:49:27 +00:00
Theodore Ts'o 5c36a2f85b 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.
1999-11-19 18:42:30 +00:00
Theodore Ts'o 4bca5ba90e e2fsprogs.lsm:
Update for 1.18 release.
1999-11-10 18:32:40 +00:00