Commit Graph

119 Commits

Author SHA1 Message Date
Theodore Ts'o
a435ec3449 Add support for backing up the journal inode location in the
superblock.  E2fsck will automatically save the journal information
in the superblock if it is not there already, and will use it if the
journal inode appears to be corrupted.  ext2fs_add_journal_inode() 
will also save the backup information, so that new filesystems
created by mke2fs and filesystems that have journals added via
tune2fs will also have journal location written to the superblock as
well.  Debugfs's logdump command has been enhanced so that it can
use the journal information in the superblock.

The debugfs man page has been improved to more fully describe the
logdump command.

Added two new functions, ext2fs_file_open2() and 
ext2fs_inode_io_intern2() which take a pointer to an inode structure;
this is needed so that e2fsck and debugfs can synthesize a
fake journal inode and use it to access the journal.
2003-08-21 00:40:26 -04:00
Theodore Ts'o
8b949fb581 Fix tests so that they work even with --disable-htree.
f_salveage_dir: Remove HTREE flag from the test image's
	superblock.  (It is not needed).

f_h_reindex: Skip this test of the htree is not enabled

f_dup_de: If htree is not enabled, clear the htree flag, and use
	alternate expect scripts for the test.
2003-08-01 13:25:26 -04:00
Theodore Ts'o
9c7ec17809 Update for 1.34 release. 2003-07-26 01:03:34 -04:00
Theodore Ts'o
71df0dc393 Update for 1.33 release.
Fix typo's in README.subset

Change debian control file so it doesn't bomb out if the EVMS FSIM
is not there, since it is not built on the Hurd.  Resolves Debian
bug #189687.
2003-04-21 16:17:09 -04:00
Theodore Ts'o
44b0ec1069 test_config: Define DYLD_LIBRAY_PATH so that "make check" works on
Darwin systems when building with shared libraries.
2003-04-19 14:22:19 -04:00
Theodore Ts'o
2a77a784a3 E2fsck now updates the global free block and
inode counters from the block group specific counters
quietly.  This is needed for an experimental patch which
eliminates locking the entire filesystem when allocating
blocks or inodes; if the filesystem is not unmounted
cleanly, the global counts may not be accurate.
2003-04-05 22:50:44 -05:00
Theodore Ts'o
1de6394526 f_h_badnode, f_h_badroot, f_h_reindex: Updated expect script to
remove the optimizing directories message.
2003-03-25 23:08:29 -05:00
Theodore Ts'o
bc4066dabe f_dup_de: Added test case provided from Debian bug report #176814 2003-03-15 04:04:11 -05:00
Theodore Ts'o
ed78c021c3 Fix up lots of portability problems that caused e2fsprogs not to build successfully
under Solaris.
2003-03-06 11:09:18 -05:00
Theodore Ts'o
38513011b9 Update files for 1.32 release. 2002-11-09 15:00:56 -05:00
Theodore Ts'o
ae65b29f11 Update files for 1.31 release. 2002-11-08 20:08:48 -05:00
Theodore Ts'o
feb44c6955 Skip byteswap tests on --disable-swapfs
Disable certain tests that depend on the byteswapping functions
being present so that "make check" succeeds even if --disable-swapfs
is passed to the configure script.
2002-11-08 14:55:38 -05:00
Theodore Ts'o
5d823a478f Update files for 1.30 release. 2002-11-01 02:13:53 -05:00
Theodore Ts'o
ad4fa46604 Avoid counting directory entries during a directory salvage.
Add additional checks to HTREE directories.  We now check the count
and limit fields in the htree header, as well as assuring that the
hash table in each interior node is in ascending order.  We also
check to make sure all leaf nodes are have the expected depth in 
the tree.

Updated test cases to deal with all of the above.
2002-09-30 11:19:19 -04:00
Theodore Ts'o
c663305947 Update for 1.29 release. 2002-09-24 01:26:50 -04:00
Theodore Ts'o
87ee8dcad3 Update changelogs for 1.28 release 2002-08-31 03:02:57 -04:00
Theodore Ts'o
0684a4f33b Overhaul extended attribute handling. Should now be correct with
respect to the latest V2 bestbits ACL code.
2002-08-17 10:19:44 -04:00
Theodore Ts'o
838e773e7a Change e2fsck to use a red/black tree in pass1b, to remove O(n**2)
algorithms.  Makes e2fsck much, much faster in certain rare cases
where the filesystem is severely corrupted.
2002-08-01 12:37:00 -04:00
Theodore Ts'o
850d05e9aa Add e2fsck -D option which optimizes/compresses directories.
General cleanup of rehash code.  (Fixed a few bugs, reformatted
code to make it more maintainable, etc.)
2002-07-25 00:00:08 -04:00
Theodore Ts'o
b7a00563b2 Add support to e2fsck to reindex directories to use hash trees. 2002-07-20 00:28:07 -04:00
Theodore Ts'o
503f9e7f6e Add support for the half-MD4 HTREE hash.
Add HTREE root node tests.
2002-06-26 16:52:10 -04:00
Theodore Ts'o
8fdc9985c1 Add initial support for htree directories. 2002-06-25 23:26:34 -04:00
Andreas Dilger
b21bf26778 Do sanity checking of the number of blocks and inodes in a group for
8192-byte and 16384-byte blocksize filesystems.

Change the default bytes-per-inode ratio of a new filesystem to be at most
one inode per block for large blocksizes.
2002-06-10 11:05:56 -06:00
Theodore Ts'o
da307041e7 Check for inodes which are too big (either too many blocks, or
would cause i_size to be too big), and offer to truncate the inode.
Remove old bogus i_size checks.

Add test case which tests e2fsck's handling of large sparse files.
Older e2fsck with the old(er) bogus i_size checks didn't handle
this correctly.
2002-05-21 21:19:14 -04:00
Theodore Ts'o
bcf9c5d401 Fix up Andreas' changeset. Avoid use of dynamic automatic arrays,
and check for EXT2_INDEX_FL for special devices, and consider them to
be invalid if they are set.
2002-05-21 09:14:17 -04:00
Andreas Dilger
b94a052a25 Add more complete tests for symlinks: nul termination of long links and length
Improve the f_badsymlinks test case for these new tests.
2002-05-18 13:16:30 -06:00
Theodore Ts'o
a8e772498c Update for 1.27 release. 2002-03-08 03:12:14 -05:00
Theodore Ts'o
f2d5c93703 Fixed the journal handling so that an offer is made to clear the
journal filesystem in all cases.

Fixed a bug in e2fsck which caused it to give spurious I/O manager
bad messages right before crashes.
2002-03-07 03:13:07 -05:00
Theodore Ts'o
f122632e6b E2fsck now prints ranges in pass 5 when printing deltas in
the block and inode bitmaps.
2002-03-07 02:47:07 -05:00
Theodore Ts'o
57173d0feb Update Changelog messages to use tytso@mit.edu for all addresses
after September 7, 2001.  (Forgot to update my emacs file to get
rid of the tytso@valinux.com address.  Oops.)
2002-02-26 14:59:39 -05:00
Theodore Ts'o
7d4343d0d0 Lots of small random portability fixes to make e2fsprogs build
under AIX --- even without the 5L compatibility toolkit, and even
using the uber-crippled AIX native C compiler.
2002-02-12 02:34:44 -05:00
Theodore Ts'o
31a20a34da f_swapfs: Fix expect script to deal with extra spaces now printed
by debugfs's ls command.
2002-02-03 01:24:37 -05:00
Theodore Ts'o
a5f3f5c191 Update files for 1.26 release. 2002-02-03 01:00:22 -05:00
Andreas Dilger
f10ff6429b Add new Makefile target "make testnew" which will allow easy testcase
creation for e2fsck.
2002-01-06 21:58:52 -07:00
Theodore Ts'o
8cf93332d1 Fix e2fsck's handling of external journals,and update journal
recovery files from 2.4.17-pre8.
2001-12-16 02:23:36 -05:00
Gabriel Paubert
b3b3d465b1 journal.c: fix an endianness bug.
f_badorphan: revert previous, erroneous change.
2001-11-30 13:45:28 +01:00
Theodore Ts'o
24934b597b f_badorphan, f_journal: Update expect files to reflect the fact
that new e2fsck's will move the .journal file to a hidden
	inode.
2001-11-30 11:52:46 +01:00
Theodore Ts'o
aa4a58ba24 f_miss_blk_bmap: Add new test which checks for bug in e2fsck
where it wouldn't allocate a missing block bitmap on
	filesystems with a blocksize of 2k or 4k.
2001-11-26 20:00:07 -05:00
Theodore Ts'o
62e3e7fe4f journal.c (clear_v2_journal_fields, e2fsck_journal_load): If the
V2 fields are set on a V1 journal superblock, or an
	internal V2 journal has s_nr_users is non-zero, clear the
	entire journal superblock beyond the V1 superblock.  This
	fixes botched V1->V2 updates.

problem.c, problem.h (PR_0_CLEAR_V2_JOURNAL): Add new problem code.

f_bad_local_jnl: New test which tests for a V2 journal with bad 
	fields caused by a botched V1->V2 upgrade.
2001-10-07 02:13:30 -04:00
Theodore Ts'o
fbf9111216 Update changelogs for 1.25 release. 2001-09-20 10:47:47 -04:00
Theodore Ts'o
fb70775b0f Update for 1.24a release 2001-09-04 15:00:37 -04:00
Theodore Ts'o
109624a133 Update for 1.24 release. 2001-08-31 00:59:55 -04:00
Theodore Ts'o
943ed874fc Add missing log entry showing when we released e2fsprogs 1.23 2001-08-27 12:29:22 -04:00
Andreas Dilger
888b29d14b Ignore .failed and .new files when running e2fsck tests. 2001-08-04 02:23:14 -06:00
Theodore Ts'o
9341cf2964 f_bad_inode, f_badsymlinks: Update expect files to reflect
changes in the problem code texts.

f_swapfs: The image file used by f_swapfs had bugs which got
	caught by Andreas' changes to be more strict about
	symlinks.
2001-08-04 20:51:01 -04:00
Andreas Dilger
67052a8aee Add extra checks for bad symlinks, including zero length symlinks,
too long i_size for slow and fast symlinks, i_size_high set, multiple
blocks for slow symlinks.
2001-08-04 00:51:18 -06:00
Andreas Dilger
0d9ef644d9 Add several tests for bad symlinks, including immutable flags, zero
i_size, too large i_size, and i_size_high set.
2001-08-04 00:30:07 -06:00
Theodore Ts'o
a092c563f7 Update problem message printed when special files have the immutable
flag set.  Update the f_filetype test case.
2001-07-27 22:40:09 -04:00
Theodore Ts'o
e667687581 f_badinode: Update expect.1 to match change in invalid symlink
size text.
2001-07-07 13:23:14 -04:00
Theodore Ts'o
67960139d7 Update changelogs for 1.22. 2001-06-23 00:16:37 -04:00