Commit Graph

191 Commits (4ed8ebe2684aa3863ce8286d29195baf5e879876)

Author SHA1 Message Date
Theodore Ts'o 21afac096d ChangeLog, pass1.c, problem.c, problem.h, problemP.h:
pass1.c: Treat inodes with a low dtime (that were from a corrupted
  	orphan list) specially.
  problem.c, problem.h: Add new problem codes PR_1_LOW_DTIME and
  	PR_1_ORPHAN_LIST_REFUGEES, and a new latch group, PR_LATCH_LOW_DTIME.
  problemP.h: Expand the size of the problem flag to be an int instead
  	of a short.  Expand space in the flag word which is reserved for
  	problem latch flags from 3 bits to 8 bits.
ChangeLog, expect.1, expect.2, image.gz, name:
  f_badorphan: New test which verifies corrupted orphan list handling.
2001-05-14 12:47:41 +00:00
Theodore Ts'o 54c637d4d2 Many files:
badblocks.c, chattr.c, dumpe2fs.c, e2image.c, findsuper.c, lsattr.c,
  	mke2fs.c, mklost+found.c, tune2fs.c, util.c: Change location of
  	ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, resize2fs.h:
  resize2fs.h: Change location of ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, debugfs.h:
  debugfs.h: Change location of ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, e2fsck.h, scantest.c:
  e2fsck.h, scantest.c: Change location of ext2_fs.h to be
  	ext2fs/ext2_fs.h
ChangeLog, Makefile.in, tst_uuid.c, uuid_time.c:
  tst_uuid.c, uuid_time.c: Remove unneeded #include of ext2_fs.h
ChangeLog, Makefile.in, e2p.h:
  e2p.h: Change location of ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, test_icount.c, test_rel.c:
  test_icount.c, test_rel.c: Change location of ext2_fs.h to be
  	ext2fs/ext2_fs.h
2001-05-14 11:45:38 +00:00
Theodore Ts'o 424cd2beb7 ChangeLog, e2fsck.h, journal.c, problem.c, problem.h, super.c:
super.c (check_super_block): Be more strict on checking
  	s_r_blocks_count superblock field.
  problem.c, problem.h (PR_0_JOURNAL_UNSUPP_ROCOMPAT,
  	PR_0_JOURNAL_UNSUPP_INCOMPAT, PR_0_JOURNAL_RESET_COMPAT): New problem
  	codes.
  journal.c (e2fsck_journal_load): Use a problem code to report
  	unsupported feature flags.  There is code to clear unsupported flags,
  	but since this is dangerous, it's not allowed in the problem code
  	table.
  journal.c (e2fsck_journal_reset_super): initialize the journal
  	sequence number to a random value to avoid recovering bad transactions
  	from a corrupt journal.
2001-05-14 04:06:56 +00:00
Theodore Ts'o 328a5ce4ae ChangeLog, journal.c:
journal.c: Code cleanup; initialize journal_enable_debug using an
  	initializer.
2001-05-13 20:21:25 +00:00
Theodore Ts'o fc9a69ca37 ChangeLog, unix.c:
unix.c (PRS): Skip validation of -C's file descriptor if it is zero,
  	since that is special case.
2001-05-12 13:43:46 +00:00
Theodore Ts'o f0b8c87d2a ChangeLog, super.c:
super.c (release_orphan_inodes): Add gettext quoting around
  	"Truncating" and "Clearing" for i18n.
2001-05-09 06:03:58 +00:00
Theodore Ts'o e39ac92269 ChangeLog, util.c:
util.c (fatal_error): Use the correct magic number when checking the
  	magic number for the io_channel data structure.  Also remove
  	extraneous call to io_channel_flush() that was left over from an
  	editing session.
2001-05-05 06:47:24 +00:00
Theodore Ts'o b9852cd87b ChangeLog, pass2.c:
pass2.c (check_dir_block): Ignore EXT2_ET_DIR_CORRUPTED errors from
  	ext2fs_read_dir_block().
2001-05-05 05:14:59 +00:00
Theodore Ts'o ae8160e692 ChangeLog, unix.c:
unix.c (PRS): Validate the completion information file descriptor so
  	that the completion bar won't get accidentally written onto the disk.
2001-05-01 21:13:37 +00:00
Theodore Ts'o 5f629b7491 ChangeLog, e2fsck.8.in:
e2fsck.8.in: Add explanation that you can use mke2fs -n -b blocksize
  	to printout alternate superblock locations.
2001-05-01 20:01:08 +00:00
Theodore Ts'o bc57f15390 ChangeLog, unix.c:
unix.c (check_if_skip): If the max_mount_count is zero, treat it as
  	having no count set.
2001-04-26 04:11:46 +00:00
Theodore Ts'o ef059870af ChangeLog, super.c:
super.c (check_super_block): Fix bad calculation of inodes_per_block,
  	and tighten min/max checks to be a bit more paranoid.  Thanks to
  	Andreas Dilger for pointing out this bug.
2001-04-17 00:40:02 +00:00
Theodore Ts'o 15986f7931 ChangeLog, jfs_user.h, journal.c:
journal.c (mark_buffer_uptodate): Add emulation of kernel function
  	mark_buffer_uptodate.
2001-03-29 19:22:16 +00:00
Theodore Ts'o 78eccb85b8 revoke.c:
Make insert_revoke_hash static (since it's not used outside this function).
2001-03-29 19:16:44 +00:00
Theodore Ts'o 1f73503816 ChangeLog, recovery.c, revoke.c:
recovery.c, revoke.c: Synchronize with 0.6b ext3 files.
2001-03-29 19:00:50 +00:00
Theodore Ts'o 1833186cbb .del-jfs_e2fsck.h~c0cc80d6:
Remove obsolete header file.
2001-03-29 18:55:43 +00:00
Theodore Ts'o e9e2a20a11 journal.c:
Fix stupid typo.
2001-02-20 16:31:38 +00:00
Theodore Ts'o d051521278 ChangeLog, journal.c:
journal.c (e2fsck_run_ext3_journal): Force a flush of the filesystem
  	and io_channel before replaying the journal.
2001-02-13 04:32:53 +00:00
Theodore Ts'o 67a473ecb9 problem.c:
Add quick compression of journal -> @j
jfs.h:
  Eliminate force of JFS_DEBUG for userspace
2001-02-08 02:34:50 +00:00
Theodore Ts'o 4e009f6a2e journal.c:
Fix minor typo in C comment
2001-02-08 02:26:04 +00:00
Theodore Ts'o a05c589a5e Makefile.in:
Update makefile dependencies
2001-01-18 02:37:21 +00:00
Theodore Ts'o a5c33f26db ChangeLog, pass1.c:
pass1.c (check_blocks): Fix large file checking code so that files >
  	2GB are considered large files, and restrict directories from being >
  	2GB.
version.h:
  Update for WIP release.
2001-01-18 02:34:03 +00:00
Theodore Ts'o a9ca2016e1 ChangeLog, pass1.c, problem.c, problem.h:
pass1.c (e2fsck_pass1): Cap the maximum legal size of a file by the
  	limit caused by the fact that i_blocks is in 512 byte units, and that
  	the Linux buffer cache also fundamentally assumes 512 byte sectors.
  	Make sure that the journal inode is a regular file, and when clearing
  	an unused journal inode, make sure the icount db is updated.
  problem.c, problem.h (PR_1_JOURNAL_BAD_MODE): Add new problem code.
ChangeLog, journal.c:
  journal.c (e2fsck_journal_fix_unsupported_super): Remove unused
  	function.  Add FIXME notes to e2fsck_get_journal(), from Andreas
  	Dilger.
2001-01-12 21:53:25 +00:00
Theodore Ts'o 37b6b2975f ChangeLog, problem.c:
problem.c: For PR_1_RESERVED_BAD_MODE, print a description of the
  	reserved inode.  In PR_0_JOURNAL_HAS_JOURNAL, prompt to clear the
  	journal, rather than deleting it (which is more accurate).  (From
  	Andreas Dilger.)
2001-01-12 21:16:13 +00:00
Theodore Ts'o 6a6d3d44d6 ChangeLog, journal.c:
journal.c: Make sure all functions which return an error code use the
  	errcode_t return type, and not "int"
  	(e2fsck_journal_release): Add new parameter, "drop", which is used
  	when we just want to deallocate the journal without trying to write
  	out any changes.
  	(mark_buffer_clean): New function e2fsck_check_ext3_journal): If we
  	fail loading the journal, make sure we free all memory associated with
  	it.
  	(recover_ext3_journal): If we fail to load the journal or initialize
  	the revoke data structures, make sure we free all memory associated
  	with the journal.
2001-01-12 21:11:24 +00:00
Theodore Ts'o 721edd0edd ChangeLog, super.c:
super.c: Minor whitespace cleanups, from Andreas Dilger.
mtrace.h:
  mtrace.h: Minor whitespace cleanups, from Andreas Dilger.
ChangeLog, message.c:
  message.c (special_inode_name): Add more special inode names (From
  	Andreas Dilger)
2001-01-12 21:05:57 +00:00
Theodore Ts'o 58a75177ca ChangeLog, util.c:
util.c (fatal_error): Check to make sure the io_manager data structure
  	is sane before trying to flush the io_channel.  (From Andreas Dilger)
2001-01-12 20:59:19 +00:00
Theodore Ts'o 4035f40bc4 ChangeLog, pass2.c:
pass2.c: Minor whitespace cleanups, from Andreas Dilger.
2001-01-12 20:25:50 +00:00
Theodore Ts'o 7e92dfae9e ChangeLog, journal.c, problem.c:
journal.c (e2fsck_journal_fix_bad_inode): Set pctx->ino to the bad
  	journal number.
  problem.c (PR_0_JOURNAL_BAD_INODE): Use pctx->ino instead of pctx->num
  	when printing the bad journal inode number.
2001-01-12 15:30:25 +00:00
Theodore Ts'o 5ba23cb149 ChangeLog, e2fsck.h, flushb.c, iscan.c, unix.c:
iscan.c, unix.c, e2fsck.h: Don't use NOARGS, and use
  	ext2fs_sync_device() instead of using BLKFLSBUF.
  flushb.c: Don't use NOARGS anymore; everything is STDC these days.
ChangeLog, pass1.c:
  pass1.c (process_block): Remove dead code which was never getting
  	executed.
2001-01-11 19:15:02 +00:00
Theodore Ts'o 86c627ec11 Many files:
dirinfo.c, e2fsck.h, emptydir.c, iscan.c, jfs_user.h, journal.c,
  	message.c, pass1.c, pass1b.c, pass2.c, pass3.c, pass4.c, pass5.c,
  	problem.h, scantest.c, super.c, swapfs.c: Change ino_t to ext2_ino_t.
2001-01-11 15:12:14 +00:00
Theodore Ts'o 95a5bc918f ChangeLog, problem.c:
problem.c: Fix another broken @F vs @f problem.
2001-01-11 04:58:21 +00:00
Theodore Ts'o 53ef44c40a Many files:
journal.c, pass1.c, pass1b.c, pass3.c, recovery.c, revoke.c, super.c,
  	unix.c, util.c: Fix random gcc -Wall complaints.
  jfs_user.h: Use more sophisticated inline handling to allow building
  	with --enable-gcc-wall
2001-01-06 05:55:58 +00:00
Theodore Ts'o d74edf4e86 ChangeLog, message.c, problem.c:
Whoops, @d was already taken by "directory".  Use @v for device, and
  re-order the listing of at-expansions to avoid this problem in the
  future.
2001-01-03 19:38:04 +00:00
Theodore Ts'o f18996c8eb ChangeLog, pass1.c, problem.c, problem.h:
pass1.c (e2fsck_pass1): Moved journal inode handling out to its own
  	block; if the journal inode is not in use, and it contains data, offer
  	to clear it.
  problem.h, problem.c (PR1_JOURNAL_INODE_NOT_CLEAR): Add new problem
  	code.
  problem.c: Modified problem table to use a new abbreviations.
2001-01-03 16:57:24 +00:00
Theodore Ts'o e904406eb5 ChangeLog, message.c:
Add @d abbreviation for device.
2001-01-03 15:39:37 +00:00
Theodore Ts'o 1ce6453931 ChangeLog, message.c:
message.c: Add @j abbreviation for journal.
2001-01-03 15:34:20 +00:00
Theodore Ts'o cc7067b40b ChangeLog, Makefile.in, jfs_user.h:
jfs_user.h: Moved contents of jfs_e2fsck.h into jfs_user.h.
2001-01-03 13:24:06 +00:00
Theodore Ts'o 8c2dc52180 journal.c:
Fix typo in comment.
2001-01-03 13:14:23 +00:00
Theodore Ts'o d3f35b6451 ChangeLog, journal.c:
journal.c (e2fsck_check_ext3_journal): Force a fsck if we remove the
  	journal stored on a reserved inode.  Also force a fsck if the journal
  	appears to exist while !NEEDS_RECOVERY, and we forcibly reset the
  	journal.
2001-01-03 13:00:43 +00:00
Theodore Ts'o 5dd8f963d0 ChangeLog, journal.c, pass1.c, super.c, unix.c:
journal.c, pass1.c, super.c, unix.c: Replace use of struct ext2fs_sb
  	with struct ext2_super_block.
ChangeLog, debugfs.c:
  debugfs.c Replace use of struct ext2fs_sb with struct ext2_super_block.
2001-01-01 15:51:50 +00:00
Theodore Ts'o f5ae75e5f0 ChangeLog, pass1.c:
pass1.c (check_blocks): Remove use of EXT2_HAS_*_FEATURE macros.
2001-01-01 14:52:52 +00:00
Theodore Ts'o 2fe1efe2e5 ChangeLog, ext2fs.h:
ext2fs.h: Cleaned up header file by removing definitions of feature
  	flags that might not have been defined in older ext2 header files.
  	Now that we're using our own include/linux/ext2fs.h header file, this
  	can never happen.
  jfs_dat.h: Removed old header file which is no longer needed.
ChangeLog:
  jfs_compat.h: Remove uneeded header file.
2000-12-31 13:39:17 +00:00
Theodore Ts'o c59a704b79 ChangeLog, mtrace.c, mtrace.h:
malloc.h, mtrace.c: Renamed malloc.h to mtrace.h to avoid conflicts
  	with the system header file.
2000-12-31 01:52:03 +00:00
Theodore Ts'o b2f93192a1 ChangeLog, journal.c, problem.h:
problem.h: Fixed numbering of pass1 error messages; an extra 0 had
  	slipped into some of the numbers.  (Pointed out by Andreas Dilger)
  journal.c (e2fsck_journal_fix_corrupt_super): Clean up unnecessary
  	automatic variable.  Add explanatory comment about the kernel
  	emulation routines.  (Suggested by Andreas Dilger)
2000-12-30 20:33:42 +00:00
Theodore Ts'o c500767e1b .del-jfs.h~fa6593e8:
Remove unneeded file.
2000-12-18 02:45:32 +00:00
Theodore Ts'o 9b5657591b ChangeLog, super.c:
super.c (release_orphan_inodes): Fix spelling typo in error message.
ChangeLog, unix.c:
  unix.c (main): Clarify coments (no code changes)
ChangeLog, journal.c:
  journal.c (e2fsck_check_ext3_journal): Check to make sure the journal
  	fields are consistent if any of the superblock fields are set.  (Backs
  	out erroneous change made by sct, pointed out by Andreas.)
2000-12-13 18:50:22 +00:00
Theodore Ts'o 8188c9e6b3 ChangeLog, pass1.c:
pass1.c (e2fsck_pass1): Offer to update the filesystem revision level
  	if we need to set large files flag.  Patch from Andreas Dilger.
2000-12-13 18:39:14 +00:00
Theodore Ts'o a917d1ccf4 ChangeLog, closefs.c, ext2fs.h, jump.funcs, super.c:
Rename _ext2fs_update_fs_dynamic_rev to _ext2fs_update_dynamic_rev
2000-12-13 18:36:23 +00:00
Theodore Ts'o 7b59f1efb1 ChangeLog, super.c:
super.c (check_super_block): If we have any of the compatibility flags
  	set, we need to have a revision 1 filesystem.  Most kernels will not
  	check the flags on a rev 0 filesystem and we may have corruption
  	issues because of the incompatible changes to the filesystem.  Patch
  	from Andreas Dilger.
2000-12-13 18:11:44 +00:00