Commit Graph

1070 Commits (0684a4f33b5c268fe12f57fcbc77a880c79ab282)

Author SHA1 Message Date
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
Stephen Tweedie eb16f861e9 Clear dtime field on truncated orphan inodes. 2002-08-14 11:00:44 +01:00
Theodore Ts'o 917e875098 Makefile.in: Move dupfs.o and test_io.o from the
needed-by-debugfs object list to the needed-by-resizer
	object list.  Fixes compile problem if the system is built
	with only --disable-debugfs.
2002-08-13 15:16:47 -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 fe4dd429dc link.c (ext2fs_link): When adding a new link to a directory,
clear the HTREE bit.
2002-07-29 19:26:33 -04:00
Theodore Ts'o cefbf4870c resize2fs.c (block_mover): If there are no blocks to move,
release the bmap table.  This significantly speeds up
	resize2fs when shrinking or expanding a filesystem by a
	very small number of blocks (which EVMS will do).
2002-07-26 01:56:22 -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 542867fb70 util.c (ask_yn, read_a_char): Note when the user has typed ^C,
and abort processing by longjmp'ing to ctx->abort_loc.
2002-07-24 07:42:02 -04:00
Theodore Ts'o cc90bdfd08 dirhash.c (ext2fs_dirhash): Fix bug which caused MD4
calculations for names > 32 characters to be completely
	bogus.  Changed MD4 calculation to match what is currently
	being used in the CVS gkernel tree.
2002-07-23 13:11:53 -04:00
Theodore Ts'o 3214a453db pass1.c (e2fsck_pass1): If e2fsck is run with -n, don't create
the dirs_to_hash list, since we don't want to reindex
	directories if the filesystem is opened read-only.
2002-07-23 12:00:00 -04:00
Theodore Ts'o 155f577b2b htree.c (do_htree_dump): Fix a bug where we were not cleanly
closing the pager after errors, which would leave the
	tty in noecho mode.
2002-07-21 14:17:45 -04:00
Theodore Ts'o 4cae04529e Add SIGINT and SIGTERM handling to fsck and e2fsck. For e2fsck,
make sure we gracefully clean up and only exit at safe points.
For fsck, we pass the SIGINT/SIGTERM signal to the child processes,
so they can do their own cleanup.
2002-07-21 14:14:03 -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 3ea1f0fb45 dirhash.c (halfMD4Transform): Shift the hash by one bit,
since that's required by the directory indexing code.
2002-07-19 22:30:37 -04:00
Theodore Ts'o 621732c956 htree.c (htree_dump_int_node): Add byte swapping code sot that
the htree dump function works on a big-endian machine.
2002-07-18 22:19:51 -04:00
Theodore Ts'o 8d7f458743 parse.c (uuid_parse): Fix uuid parsing bug which didn't complain
for certain types of invalid input text.  (Addresses
	Debian bug #152891).

tst_uuid.c: Add test cases for invalid text strings passed to
	uuid_parse.
2002-07-15 23:49:57 -04:00
Theodore Ts'o 34be9609de debugfs.c (do_show_super_stats): Calculate and print the number
of directories on a filesystem --- because we can and
	because it can be useful.
2002-07-15 16:56:41 -04:00
Theodore Ts'o 62acaa1de1 pass2.c (e2fsck_pass2): Use dx_dir->numblocks instead of
dx_dir->ino to indicate that a bad inode was cleared.
2002-07-15 16:54:42 -04:00
Theodore Ts'o a8a813ee33 fsetflags.c (fsetflags), fgetflags.c (fgetflags): Save
errno if the ioctl fails, and restore it just before we
	return.
2002-07-14 16:13:55 -04:00
Theodore Ts'o 50cd7e06e2 ext2fs.h, read_bb_file.c: Change private to priv_data, to avoid
using a C++ reserved word.
2002-07-14 16:00:50 -04:00
Theodore Ts'o 593c6ead7e Various portability fixes which should help out HURD.
The iterate_on_dir function in libe2p has been changed to be more
general, so it relies less on the layout of struct dirent.  We also
make sure the errno returned by the ioctl is returned by 
fgetversion() and fsetversion().
2002-07-14 15:58:38 -04:00
Theodore Ts'o f154d2f687 unix_io.c (unix_open): Only attempt the setrlimit workaround if
the kernel version is 2.4.10 -- 2.4.17, since otherwise an
	old version of glibc (built against 2.2 headers) will
	interact badly with the workaround to actually cause more
	problems.  I hate it when the glibc folks think they're
	being smarter than the kernel....
2002-07-14 08:33:32 -04:00
Theodore Ts'o 7098810daf mke2fs.c (zap_sector): Clear the buffer *after* testing for the
BSD sector label.  Otherwise the first 512 bytes don't get
	zapped.  (Addresses Debian bug #147256.)
2002-07-14 08:00:00 -04:00
Theodore Ts'o 9e6c5dd73e ext2_fs.h: Add superblock field for reserved group descriptors. 2002-07-09 11:08:10 -04:00
Theodore Ts'o 2b1f8279e8 Fixed up some grammar problems with the ext2ed README, added some
clarifications.
2002-07-09 01:33:51 -04:00
Theodore Ts'o d7f64ae838 debugfs.c (do_rmdir), debugfs.8.in: Implement the rmdir command.
Addresses Debian bug #138003.
2002-07-09 01:27:05 -04:00
Theodore Ts'o 4e9bf7fa01 Added amusing political correctness quote. 2002-07-07 16:32:46 -04:00
Theodore Ts'o f0865ce4d6 mke2fs.8.in: Cleaned up man page, and made it a bit more
OS-agnostic.  Addresses Debian bug #144621.  Hope this
	makes the Hurd whiners happy.  :-)
2002-07-02 10:08:27 -04:00
Theodore Ts'o 5cfd7404ba chattr.1.in: Fix man page typo. (Addresses Debian bug #141938) 2002-06-28 10:47:24 -04:00
Theodore Ts'o 2cb403b255 bitops.h: Add #define's for ext2fs_{l,b}e{32,16}_to_cpu and
ext2fs_cpu_to_{l,b}e{32,16}
2002-06-28 08:10:29 -04:00
Theodore Ts'o 5818d6789a ismounted.c (check_mntent): In AIX 4.3, MOUNTED isn't defined.
Add appropriate fallbacks in this case.
2002-06-27 21:19:45 -04:00
Theodore Ts'o 21fa6de989 ADD TAG: E2FSPROGS-1.28-WIP-0626 2002-06-26 17:14:45 -04:00
Theodore Ts'o a1ee53785c Bump versions for 1.28-WIP release. 2002-06-26 17:14:45 -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
Theodore Ts'o 88372d5c4b Applied Andrew Morton's patch to support the dirsync option. 2002-06-15 18:58:39 -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
Andreas Dilger 7da78ff17d ext2_fs.h: Further minor cleanups of the header. Consolidate
some checks for __KERNEL__ into one place.
2002-06-09 17:38:50 -06:00
Theodore Ts'o 26bfdca8f2 fs_ext2.c (fs_init_task): Fix minor bugs pointed out by Steve
Pratt.  Fixed a selection bug and added checks to make
	sure volumes are not mounted when creating the list of
	volumes which can be mkfs'ed by the ext2/3 plugin.
2002-06-01 21:48:24 -04:00
Theodore Ts'o 3fb47e19e3 Add changelog file for EVMS. 2002-05-30 12:36:32 -04:00
Theodore Ts'o 41cce580f3 main.c (main): If the filesystem has errors or is not valid,
then require an e2fsck -f run to be done on the filesystem
	more.
2002-05-28 23:19:14 -04:00
Theodore Ts'o 39cc87feb2 Add support for expanding and contracting filesystems. Fix a few minor bugs
since the last commit.
2002-05-28 23:16:10 -04:00
Theodore Ts'o ff6dbcca9c Add EVMS FSIM plugin to e2fsprogs. 2002-05-24 22:44:42 -04:00
Andreas Dilger 0fbd1a8a9a ext2_fs.h: Remove macros accessing u.ext2_sb field and use
the EXT2_SB() macro instead.  Remove kernel function
	prototypes also.  This matches the 2.5 kernel, and
	is also cleaner for other reasons.  Whitespace cleanup.
2002-05-23 00:32:34 -06:00
Theodore Ts'o 0d63467ddb Update to support the V2 Bestbits EA format. 2002-05-22 00:22:38 -04:00
Theodore Ts'o bff61a7aaa configure.in: On Linux systems, if the prefix is defaulted to
/usr, then default mandir to /usr/share/man
2002-05-21 22:21:38 -04: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