Commit Graph

1117 Commits (143ac30c0277923bb946ea3f69582eec3636a732)

Author SHA1 Message Date
Theodore Ts'o 143ac30c02 resize2fs.8.in: Fix typo in man page. 2002-10-03 11:52:41 -04:00
Theodore Ts'o d237a78e4e Handle BAD_BLOCK_IN_INODE_TABLE even at the beginning of the
inode table, and shrink code by reorganizing the while loop so 
to eliminate duplicate calls to ext2fs_get_next_inode().
2002-10-03 01:09:35 -04:00
Theodore Ts'o 8132d840c8 Fix endian problems in the htree code for e2fsck and debugfs.
When byte-swapping a filesystem on a PPC architecture, byte-swap
the bitmaps since the historical big-endian ext2 variant had
byte-swapped bitmaps, and the ext2fs library assumes this.  Otherwise
the regression test suite will fail...
2002-10-02 22:07:17 -04:00
Theodore Ts'o 3432a916ed e2image.c (write_raw_image_file): Handle a bad block in the
inode table correctly.
2002-10-02 17:47:08 -04:00
Theodore Ts'o a84f4ea9cd ADD TAG: E2FSPROGS-1.30-WIP-0930 2002-09-30 11:33:36 -04:00
Theodore Ts'o d5e7810e30 Update release notes, et. al. for 1.30-WIP release. 2002-09-30 11:33:36 -04: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 93599d0c40 In ext2ed, if there is a directory entry of length 0,
go to the next block, so we don't end up looping forever.
2002-09-30 00:12:10 -04:00
Theodore Ts'o dbfb3f0b0c get_device_by_label.c: Applied sourceforge patch #613447, which
adds support for reiserfs volumes for LABEL= and UUID=
	fstab entries.
2002-09-29 22:42:27 -04:00
Theodore Ts'o 41ec7bb61f badblocks.c (main): Appled sourceforge patch #600451, which
addresses sourceforge bug #600388, by AEF.  This allows
	badblocks to work correctly on read-only devices such as
	CD-ROM's, DVD's, etc.
2002-09-29 22:37:40 -04:00
Theodore Ts'o e8254bfd3b pass2.c (check_dir_block): Do a more paranoid check when trying
to determine whether or not a directory entry is a
	completely empty leaf block or leaf node.  Otherwise
	e2fsck might get confused into thinking that a valid dxdir
	was corrupted.
2002-09-29 19:30:28 -04:00
Theodore Ts'o 82b39c9f54 mke2fs.8.in, tune2fs.8.in: Clarify manual pages about using the
caret ('^') character to negate feature sets when using
	the -O option.  Define the has_journal feature to avoid
	confusion about what ^has_journal means.
2002-09-29 19:08:38 -04:00
Theodore Ts'o fe5b72d15e rehash.c (e2fsck_rehash_dir): Apply patch from Christopher Li
which avoids creating an empty directory entry at the end
	of the directory block.  This screws up earlier versions
	of the indexed directory patch.
2002-09-29 19:05:26 -04:00
Theodore Ts'o e70ae99e07 Add a more sophisticated algorithm to e2fsck to salvage corrupted
directories.

Speed up e2fsck slightly by only updating the master superblock;
there is no point to update the backup superblocks.

Fix a small bug in the rehashing code which could leave the indexed
flag set even after the directory was compressed instead of indexed.
(Not fatal, since the kernel will deal with this, but technically
it filesystem isn't consistent, and the filesystem will be marked
as being in error when the kernel comes across the directory.  It
should also never happen in real life, since directories that small
will never be indexed, but better safe than sorry.)

Also change the threshold of when directories are indexed, so that
directories of size 2 blocks will be indexed.  Otherwise they will
never be indexed by the kernel when they grow.
2002-09-28 09:16:28 -04:00
Theodore Ts'o 0a3a541509 ADD TAG: E2FSPROGS-1_29 2002-09-24 01:32:57 -04:00
Theodore Ts'o ea362406c2 Update LSM file for 1.29 release. 2002-09-24 01:32:57 -04:00
Theodore Ts'o 2a4c77bc1d Synchronize with Debian 1.28-5. 2002-09-24 01:30:00 -04:00
Theodore Ts'o c663305947 Update for 1.29 release. 2002-09-24 01:26:50 -04:00
Theodore Ts'o 84bd550148 fsck.c: If the bone-headed user enters the filename twice, the
-R option which skips the root filesystem will skip all of
	them.  (Addresses Debian bug #159423).  Note!  This is not
	a precedent for dealing intelligently with any other kind
	of doubled entry in /etc/fstab!
2002-09-24 00:13:19 -04:00
Theodore Ts'o d25f8cf646 lib/et/internal.h: Remove declaration of perror. All modern systems
can be expected to define perror() these days.
2002-09-23 23:51:57 -04:00
Theodore Ts'o 843049c4db mke2fs.c (main): Enable directory indexing by default.
tune2fs.c (update_feature_set): Allow directory indexing flag to
	be set.  If so, set the default hash to be TEA, and
	initialize the hash seed to a random value.
2002-09-22 15:37:40 -04:00
Theodore Ts'o 42e5b5f987 Flag continuation hashes in debugfs's htree command to make them
easier to find.
2002-09-22 15:27:28 -04:00
Theodore Ts'o f9e4abf714 get_device_by_label.c (init_lvm): Fix bug which caused
LABEL='xxx' to not work correctly when using LVM.
	(Reversed sense of error check reported by ateeq@hotpop.com)
2002-09-21 06:46:43 -04:00
Theodore Ts'o cf3909edfe rehash.c (copy_dir_entries): Fix bug which caused corrupted
directories if there are 4 or 8 bytes left over in a
	directory page when optimizing/reindexing a directory.
2002-09-06 10:14:12 -04:00
Theodore Ts'o b44181e9cb ADD TAG: E2FSPROGS-1_28 2002-08-31 03:12:42 -04:00
Theodore Ts'o 87ee8dcad3 Update changelogs for 1.28 release 2002-08-31 03:02:57 -04:00
Theodore Ts'o b7bad61521 Update for 1.28 release. 2002-08-31 03:00:33 -04:00
Theodore Ts'o ceecbc75c3 ehandler.c (e2fsck_handle_read_error): If the user asks to
ignore the error, offer to try forcing a write of the
	block to the disk; sometimes this will cause the drive to
	remap the bad block.
2002-08-31 02:35:35 -04:00
Theodore Ts'o ea1959f015 Fix a bug which caused e2fsck to fail to correctly check filesystems
using a non-zero hash version (i.e., half MD4 or TEA hash).

The hash version wasn't getting copied into dx_dir->hashversion and
this caused the kernel to treat all directories if they were using the 
legacy hash, which was Bad.
2002-08-31 02:32:41 -04:00
Theodore Ts'o f61fc0b5d9 Add support for the hash_seed and s_def_hash_ver fields in the
superblock.  Dumpe2fs can now print out these fields, and they 
can be modified using debugfs's set_super_value command.  Also added
to debugfs was the ability to set s_uuid and s_journal_uuid features
as well.
2002-08-24 00:04:03 -04:00
Theodore Ts'o a3da9d1df7 problem.c: Fix PR_1_RELOC_BLOCK_ALLOCATE message to explain that
it is necessary to find contiguous blocks in a particular
	block group.
2002-08-21 12:52:03 -04:00
Theodore Ts'o ee504128d3 valid_blk.c (ext2fs_inode_has_valid_blocks): Fix bug which
failed to accurately characterize non-standard slow
	symlinks.  (Which don't appear in practice on real-life
	systems, fortunately.)
2002-08-20 01:14:30 -04:00
Theodore Ts'o f33666c1ec ADD TAG: E2FSPROGS-1.28-WIP-0817 2002-08-18 03:48:55 -04:00
Theodore Ts'o 559ca6cb94 Enable HTREE support by default. 2002-08-18 03:48:55 -04:00
Theodore Ts'o 0d608df100 Update version string for WIP release. 2002-08-18 03:38:15 -04:00
Theodore Ts'o e6f2bda381 Makefile.in: Revamp makefile so that it doesn't depend
--enable-elf-shlibs.  We always build the shared library,
	since it's meant to be used as a plugin library.
2002-08-18 03:37:10 -04:00
Theodore Ts'o 9a4311a666 Clean up fsck handling, and fix bug which caused fs_shrink and
fs_expand to abort if fsck fixed a problem and exited with a 
status code of 1.
2002-08-18 02:44:58 -04:00
Theodore Ts'o 21b3ba9c56 More EVMS 1.1 CVS synchronization.
Fix up logging macros to use __FUNCTION__ correctly.
2002-08-18 02:00:42 -04:00
Theodore Ts'o 8fd69563ce fs_ext2.c, fsimext2.c: Synchronize with EVMS CVS tree.
Fixed up confusion caused by bad parameter names for
	get_fs_limits().  Added missing conversion of
	volume->vol_size from sectors to bytes.  Fix up error 
	returns for unsupported tasks as EINVAL, not ENOSYS.
	Use logical names for the API version numbers, since 
	the ABI is much more dependent on the headers.  Add
	code to byte-swap the superblock if necessary.
2002-08-18 01:48:46 -04:00
Theodore Ts'o 2b399a21e4 common.h, dlist.h, enginestructs.h, options.h, plugfuncs.c,
fs_ext2.c: Synchronize with ABI of EVMS 1.1.
2002-08-18 01:11:12 -04:00
Theodore Ts'o 118d7dacc5 Add support for searching /proc/evms/volumes when interpreting
LABEL=xxx or UUID=xxx.  

Add new utility program /sbin/findfs, which interprets LABEL=xxx or
UUID=xxx, and returns the device name.  (Part of tune2fs).
2002-08-17 23:01:22 -04:00
Theodore Ts'o e5b164373c Update to debian's 1.27+1.28-WIP-0626-1
Revert the shlibs hack.

Makefile.in: Remove inode_io.o from the standard object files 
	in libext2fs, and only build it if debugfs is enabled
	(it requires fileio.o, which is only built if 
	--disable-debugfs isn't specified to configure).
2002-08-17 21:11:29 -04:00
Theodore Ts'o 1f22ce34fc mke2fs.8.in: Add a common usage of the -n option. (Addresses
Debian Bug #146437)
2002-08-17 18:16:29 -04:00
Theodore Ts'o a141135451 fsck.c (main): If no filesystems are specified on the command
line, default to -As.  (Addresses Debian Bug #153102)

badblocks.8.in: Clarify why it's bad to do a non-destructive
	test on a r/o mounted filesystem.  (Addresses Debian Bug
	#131350)
2002-08-17 17:39:39 -04:00
Theodore Ts'o 023d111e92 chattr.1.in: Document the compression attribute flags E, X, and
Z, and explain that chattr can't set or set these flags.
	(Addresses Debian Bug #151990)

fsetflags.c (fsetflags), fgetflags.c (fgetflags.c), setflags.c
	(setflags), getflags.c (getflags): Check to make sure the
	file is a regular file or a directory before attempting to
	use the ext2 ioctls.  Otherwise, return EOPNOTSUPP.
	(Addresses Debian Bug #152029).
2002-08-17 14:44:56 -04:00
Theodore Ts'o f044b4d8a0 Update and clarify man pages (addresses Debian Bug #145044).
Let e2fsck allow use of the TEA hash.

Mke2fs will no longer abort if it can't zero blocks at the end of the
filesystem.  (Addresses Debian Bug #155007)
2002-08-17 13:32:21 -04:00
Theodore Ts'o b33278c4d6 Modify the half MD4 hash so it is no longer endian dependent. This is
a backwards incompatible change, but this should be OK since the kernel
MD4 ext3 code was only in the CVS tree, and hasn't generally escaped.

Add support for the TEA hash.
2002-08-17 10:52:51 -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 0ccd488a76 Fix stupid typo in previous changeset. 2002-08-16 17:07:06 -04:00
Theodore Ts'o ed909bbe20 Fix up extended attribute handling in e2image, resize2fs, and in
debugfs's icheck command.
2002-08-16 17:03:59 -04:00