Commit Graph

131 Commits (e1c6b2f02bf5be8bf12ef82e20ef5ee590d6f56d)

Author SHA1 Message Date
Theodore Ts'o e1c6b2f02b ChangeLog, tune2fs.8.in:
tune2fs.8.in: Add clarifying statement about converting user and group
  	names to uid's before storing them in the superblock.  (Debian bug
  	#67446)
2000-12-02 06:19:33 +00:00
Theodore Ts'o 8ddaa66bfe ChangeLog, mke2fs.8.in, mke2fs.c:
mke2fs.c(main): Expand the -j option so that it parses option=argument
  	style options, and add support for creating filesystems with external
  	journals.
  mke2fs.8.in: Document new syntax for the -j option.
2000-11-17 04:55:24 +00:00
Theodore Ts'o 72ed126483 ChangeLog, Makefile.in, e2image.h, ext2_err.et.in, ext2fs.h, imager.c:
imager.c (ext2fs_image_{inode,super,bitmap}_{read,write}, ext2_fs.h,
  	Makefile.in: New file that has routines that save ext2fs metadata to a
  	file.
  ext2_err.et.in (EXT2_ET_MAGIC_E2IMAGE): New error code assigned.
  e2image.h: New file which defines the file format for the ext2 image
  	file.  (Saved copy of ext2 metadata to a file as a saving throw
  	against worst-case damage.)
ChangeLog, Makefile.in, e2image.c:
  e2image.c, Makefile.in: New program which saves ext2 metadata to a
  	file for people who need a last-ditch saving throw.
2000-11-12 19:32:20 +00:00
Theodore Ts'o f6f6583239 ChangeLog, mke2fs.c:
mke2fs.c (PRS): Applied Andreas Dilger's patch to make the -r -s
  	handling a bit more sane.  (Even though -s is deprecated at this
  	point.)
ChangeLog, expect.1:
  f_journal: Update to take into account new printing by the e2fsck
  	program.
version.h:
  Update for upcoming WIP release.
2000-10-25 03:01:37 +00:00
Theodore Ts'o 0056be14d7 ChangeLog, get_device_by_label.c:
get_device_by_label.c: Apply fix from Erik Troan to support 16
  	character labels.
2000-10-25 02:24:33 +00:00
Theodore Ts'o 4381966695 ChangeLog, llseek.c:
llseek.c: Add #ifdef's for IA64 (it's a 64-bit platform, so we don't
  	need to use llseek).
ChangeLog, fsck.c:
  fsck.c (device_already_active): Add a special case check for MD
  	devices, so we don't try to check them in parallel with other devices.
2000-10-25 02:06:09 +00:00
Theodore Ts'o 85ef4ae87a ChangeLog, mke2fs.8.in, mke2fs.c:
mke2fs.c (PRS, main), mke2fs.8.in: Add support for the -j option,
  	which builds an ext2/3 filesystem with an ext3 journal.
2000-10-24 19:33:45 +00:00
Theodore Ts'o e294cf2f64 ChangeLog, mke2fs.c:
mke2fs.c (zap_sector): Fix really stupid typo which gcc 2.95
  	didn't catch.
2000-10-24 18:41:44 +00:00
Theodore Ts'o 3f1e9a5db6 ChangeLog, fsck.c:
fsck.c: Add base device definitions for hd[e-h], for those systems
  	with four IDE interfaces.
2000-09-12 21:21:52 +00:00
Theodore Ts'o d7e39b0609 ChangeLog, dumpe2fs.c, mke2fs.c:
mke2fs.c (zap_sector): Fix error message printed when zap_sector
  	fails.
  dumpe2fs.c (list_desc): Fixed format string bug when printing the
  	inode table location in non-hex format.
2000-09-11 17:01:35 +00:00
Theodore Ts'o 556ccbd6f9 ChangeLog, Makefile.in, get_device_by_label.c:
get_device_by_label.c: Add call to ext2fs_find_block_device if we
  	can't find the device using the name given by /proc/partitions.  (This
  	can happen if devfs is compiled into the kernel, but not mounted.)
2000-08-20 19:11:05 +00:00
Theodore Ts'o 80c22c9014 ChangeLog, dumpe2fs.8.in, dumpe2fs.c, mke2fs.c:
dumpe2fs.c (usage): add fhx options to usage message, add -x option to
  	print out the per-group block numbers in hex, add line for location of
  	primary/backup superblock and group descriptors
  mke2fs.c: rename max to group_blk_max avoid potential macro conflict
2000-08-14 15:32:11 +00:00
Theodore Ts'o e41784eb0e ChangeLog, mke2fs.c:
mke2fs.c (zap_sector): Change zap_bootsect to more general zap_sect.
  	(main): Clear the superblock when starting mke2fs, to avoid leaving
  	the filesystem in an inconsistent state.
2000-08-14 14:44:15 +00:00
Theodore Ts'o 28412de600 ChangeLog, get_device_by_label.c:
get_device_by_label.c: Improve /proc/partitions parsing in fsck, and
  	speed up fsck -a.
2000-07-27 02:45:55 +00:00
Theodore Ts'o f9e67064ce configure.in:
Commit this file for future use; contains a configure.in script for when
  libuuid gets separtead out into its own package.
libext2fs.texinfo:
  Update version numbers for 1.19 release.
TODO:
  Commit TODO list for 1.19 release.
README:
  Update file for 1.19 release.
ChangeLog, e2fsprogs.spec:
  e2fsprogs.spec: Merge in a few changes from the Red Hat 6.2 spec file,
  	now that we're using a modern rpm to build e2fsprogs.  Also updated
  	version number to 1.19.
version.h:
  Update version number for 1.19 release.
ChangeLog:
  Check in changes for 1.19 release.
2000-07-13 23:25:54 +00:00
Theodore Ts'o a551b78347 ChangeLog, badblocks.8.in, badblocks.c:
badblocks.8.in: Added text explaining that the -n and -w options are
  	mutually exclusive.
  badblocks.c (usage): Fix usage message to make it clear that the block
  	count must be specified if the starting block is to be specified.
  	(The starting block should be a option, in the long run.)
  badblocks.c (test_nd): Save and restore the currently_testing variable
  	before going into the write verification loop.  This avoids a loop
  	termination problem if the last block on the disk is bad.  Also, turn
  	off the SIGALRM signal while restoring blocks after the user types ^C.
  	The num_saved variable is now static so that it won't get clobbered by
  	a longjmp.  buf_used and bb_count are no longer static, since they
  	aren't used by the cleanup routines anymore.
  badblocks.c (main): Removed an unsued varaible (buf_size).  Fixed bad
  	getopt argument that didn't allow the 'b' option to take an argument.
  	Added error checking when parsing the starting block number.  Fixed
  	lint warning in fscanf format string.
2000-07-13 22:05:31 +00:00
Theodore Ts'o 19c689196b ChangeLog, fsck.c:
fsck.c (execute, wait_one): Treat fsck.ext3 the same as fsck.ext2
  	(because they are the same) for the purposes of the progress bar
  	display logic.
ChangeLog, ls.c:
  ls.c (list_super): Display the journal information fields in the
  	superblock if the filesystem has a journal.
2000-07-07 03:25:13 +00:00
Theodore Ts'o 45d9e2ff7c ChangeLog, tune2fs.8.in, tune2fs.c:
tune2fs.8.in: Update manual page to document what happens if
  	max_mount_count is negative.
  tune2fs.c (main): Allow setting the maximal count value to be
  	negative, since the kernel interprets that as forcing a check.
2000-07-07 03:12:54 +00:00
Theodore Ts'o 5b1519bf52 ChangeLog, fsck.c:
fsck.c (lookup, load_fs_info, check_all): Use lazy evaluation for
  	calling interpret_device(), since this requires root privileges if the
  	partitions need to be scanned.  Otherwise, it's not possible to do
  	non-proot fsck's for removeable devices such as floppies if there are
  	any LABEL= or UUID= entries in /etc/fstab.
2000-07-06 14:16:08 +00:00
Theodore Ts'o 981dc56ae3 ChangeLog, badblocks.8.in, badblocks.c:
badblocks.c (check_mount, main): Check to see if the filesystem is
  	mounted before doing a read/write or non-destructive test.  This can
  	be overriden using the new -f option.
  badblocks.8.in: Added documentation for the -f option.
2000-07-06 14:13:29 +00:00
Theodore Ts'o 35964b5c4a ChangeLog, badblocks.8.in, badblocks.c:
badblocks.8.in: Update manual page to reflect that the blocks-count
  	parameter is now optional.  Also properly document the start-block
  	parameter.
  badblocks.c (main): Allow the blocks-count parameter to be optional.
  	If it's not specified, use the size of the device as a default.
2000-07-06 13:19:43 +00:00
Theodore Ts'o d49a22b734 ChangeLog, badblocks.c:
badblocks.c (test_nd): Significantly simplify the logic so that it's
  	more obviously what's going on.  Fixed a few potential cases which
  	weren't handled correctly in the old, overly complicated logic.
  	(flush_bufs): Now doesn't take a second argument, and always forces a
  	sync; this is required before it's really safe to call BLKFLSBUF, at
  	least for some kernels.
2000-07-06 00:31:27 +00:00
Theodore Ts'o 7dc435082e badblocks.8.in:
Update man page explanation for badblocks.
  Update man page's explanation for the -c option.
2000-06-12 16:45:30 +00:00
Theodore Ts'o 26ab531523 ChangeLog, mke2fs.c:
mke2fs.c (PRS): Add a much more specific error message if the
  	filesystem size is defaulted and get_device_size returns a size of
  	zero.  Otherwise, users get a confusing "invalid argument while passed
  	to ext2 library" error message.
2000-05-29 15:05:42 +00:00
Theodore Ts'o 415ed79ebc Many files:
Remove generated file.
2000-05-25 23:46:39 +00:00
Theodore Ts'o bdcb8234e7 .cvsignore:
Supress build files when builddir==srcdir
2000-05-25 23:19:08 +00:00
Theodore Ts'o c96e511a0c ChangeLog, fsck.c:
fsck.c (interpret_device): Add better error messages if a UUID= or
  	LABEL= specification is given.
2000-05-08 14:47:15 +00:00
Theodore Ts'o 4ea0a1109d ChangeLog, problem.c, problem.h, super.c:
problem.c, problem.h (PR_0_HURD_CLEAR_FILETYPE): Add new problem code.
  super.c (check_super_block): If the OS type in the superblock is the
  	Hurd, check to see if the filetype feature is set, and offer to clear
  	it if so.  This needs to be done since the Hurd doesn't properly
  	support the filetype feature.  (And since the hurd allows the
  	transmogrification of files to special files and vice versa --- for no
  	good reason that I can understand --- it can't support the filetype
  	feature for the forseeable future, either.)
ChangeLog, mke2fs.c:
  mke2fs.c (main): We forcibly turn off the filetype feature if the OS
  	is the hurd, since the hurd doesn't support it.  (And since the hurd
  	allows the transmogrification of files to special files and vice versa
  	--- for no good reason that I can understand --- it can't support the
  	filetype feature for the forseeable future, either.)
  mke2fs.c (proceed_question): Fix reversed sense of proceed_question
  	that was busted due to the internationalization patch.  Fixed bug
  	where if proceed_question was called twice, the input buffer wasn't
  	cleared of the previous question's newline.
ChangeLog, expect.1, expect.2, image.gz, name:
  f_hurd: Add test for Hurd-specific features (right now, just checks to
  	make sure the filetype feature is cleared)
ChangeLog, ls.c:
  ls.c (list_super): Change the string displayed for the Hurd to be
  	GNU/Hurd, instead of just "GNU".
2000-05-08 13:33:17 +00:00
Theodore Ts'o e2207ce595 ChangeLog, Makefile.in, jump.funcs, jump.import, jump.params:
Makefile.in (uuid_time): Compile uuid_time in two steps (first create
  	.o, then link it against the libraries) to work around bug in a.out
  	linker.
  dll/jump.funcs, dll/jump.import, dll/jump.params: Update a.out shared
  	library control files to reflect new added files.
ChangeLog, feature.c, jump.funcs:
  feature.c: Make feature_list static; it shouldn't be exported.
  dll/jump.funcs: Update a.out shared library control file.
ChangeLog, badblocks.c:
  badblocks.c (flush_bufs): Use fsync() if the system doesn't support
  	fdatasync().
2000-04-06 21:51:18 +00:00
Theodore Ts'o 373b8337c7 Many files:
badblocks.c, dumpe2fs.c, e2label.c, mke2fs.c, tune2fs.c, uuidgen.c:
  	For platforms that don't define optarg.h, manually define optarg and
  	optind.
ChangeLog, main.c:
  main.c: For platforms that don't define optarg.h, manually define
  	optarg and optind.
ChangeLog, unix.c:
  unix.c: For platforms that don't define optarg.h, manually define
  	optarg and optind.
2000-04-03 16:22:35 +00:00
Theodore Ts'o 4d003982f9 ChangeLog, badblocks.8.in, badblocks.c:
badblocks.8.in: Updated manual page with suggestions from David
  	Beattie.
  badblocks.c (test_nd): Generalized cleanup and bug-fixes.  We now
  	explicitly clear out the signal handlers to prevent a longjmp to a
  	deactivated stack frame.
  	(test_rw): Fixed a signed vs. unsigned comparison error.
2000-04-03 16:01:11 +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 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 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 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 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 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 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 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 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 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 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 cd08636179 libext2fs.texinfo, ChangeLog:
Update for 1.18 release.
1999-11-10 16:00:39 +00:00
Theodore Ts'o 6fdc7a325c 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.
1999-11-10 13:34:40 +00:00
Theodore Ts'o 6a35ffa0ed 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.
1999-11-04 22:34:43 +00:00
Theodore Ts'o 28e1194e65 Many files:
Update for 1.17 release.
1999-10-26 18:17:20 +00:00
Theodore Ts'o 3bc036691a 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.
1999-10-26 17:17:00 +00:00
Theodore Ts'o 9094f28440 ChangeLog, mke2fs.c:
mke2fs.c (set_fs_defaults): Changed parameter name to avoid gcc
  	warnings.
Makefile.in:
  Update dependency information.
1999-10-26 16:42:50 +00:00