Commit Graph

802 Commits (55fd07ed0a5f4ed3dcc770526ee1ad3be967ac98)

Author SHA1 Message Date
Theodore Ts'o 55fd07ed0a This patch completes the initial extended attribute/ACL support for
e2fsck.  We now check the entire EA block to make sure that the all
of the EA entries look sane.
2001-07-19 16:31:25 -04:00
Theodore Ts'o 0f2cfe2579 Fix really stupid typo. 2001-07-10 14:34:41 -04:00
Theodore Ts'o 3c6b8977d4 Speed up journal recovery in userspace by avoiding a pointless
unconditional ext2_flush() call.  Also made ext2_flush() more
efficient when the superblock is modified after the filesystem has
been flushed, and make it clear the superblock dirty flag
after doing the superblock/block group descriptor flush.
2001-07-10 14:27:58 -04:00
Theodore Ts'o 2979b5272e Fix problems in po's Makefile.in.in and POTFILES.in. 2001-07-10 00:45:58 -04:00
Theodore Ts'o 7b63fff9b6 pass1b.c (pass1b, process_pass1b_block): Change the num_bad
field calculation so that it only counts EA block entries
	as a single multiply claimed block (since once we clone
	the EA blocks for one inode, we fix the problem for all of
	the other inodes).  Also, I moved the num_bad calculation
	from process_pass1b_block to the end of pass1b.  This
	fixes a *significant* performance bug in pass1b which hit
	people who had to had a lot of multiply claimed blocks.
	(Can you say O(n**3) boys and girls?  I knew you could...
	Fortunately, this case didn't happen that much in actual practice.)
2001-07-07 23:01:31 -04:00
Theodore Ts'o b5acdb6ae2 pass1.c (e2fsck_pass1): Defer inodes which have an extended attribute
block for later processing to avoid extra seeks across the disk.
	(process_inode_cmp): If there is no indirect block, sort by the
	extended attribute (i_file_acl) block.
2001-07-07 22:27:40 -04:00
Theodore Ts'o f41e7e6961 bitops.h (ext2fs_find_first_bit_set): Use %esi instead of %ebx to
avoid register conflicts when compiling in PIC mode.
2001-07-07 22:14:23 -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 7abb2bdcd6 pass1b.c (clone_file_block): Fix bugs when cloning extended attribute
blocks.  Moved free of block_buf to after the code which clones the
	extattr block, and fixed logic for changing pointers to the extended
	attribute field in the inodes which were affected.
 
(decrement_badcount): New function which is used whenever we need to
	decrement the number of files which claim a particular bad block.
	Fixed bug where delete_file wasn't checking check_if_fs_block() before
	clearing the entry in block_dup_map.  This could cause a block which
	was claimed by multiple files as well as the filesystem metadata to
	not be completely fixed.
2001-07-07 13:20:34 -04:00
Theodore Ts'o e8a3ee628a Add code to check and fix incorrect reference counts in the extended
attribute blocks.
2001-07-07 11:12:50 -04:00
Theodore Ts'o ac493821ea Add new functions to bitops.h to find quickly search for set bits in
a bitmask.  (In both C and i386 assembler).
2001-07-04 14:04:58 -04:00
Theodore Ts'o 21d14ec7aa Add support for XFS filesystems. 2001-07-03 21:43:07 -04:00
Theodore Ts'o 342d847db3 Add initial support for extended attribute blocks 2001-07-02 11:54:09 -04:00
Theodore Ts'o 636a954a30 Use long long to calculate the percentage
of the number of blocks in use in the filesystem.
2001-06-29 17:57:26 -04:00
Theodore Ts'o acd8df68c9 Don't predefine RM; it's defined by MCONFIG 2001-06-27 07:51:11 -04:00
Theodore Ts'o 3adfccba5d ADD TAG: E2FSPROGS-1_22 2001-06-23 00:25:18 -04:00
Theodore Ts'o 2520f20aa4 Update size of tarball. 2001-06-23 00:25:18 -04:00
Theodore Ts'o 67960139d7 Update changelogs for 1.22. 2001-06-23 00:16:37 -04:00
Theodore Ts'o 19d6b54b2d Update for 1.22 release. 2001-06-23 00:13:09 -04:00
Theodore Ts'o 7978621611 Synchronize with Debian release 1.21+1.22-WIP-0620-1 2001-06-22 23:05:23 -04:00
Theodore Ts'o b23520d050 mkjournal.c (ext2fs_add_journal_inode): Move close of file
descriptor so that adding a journal to a mounted
	filesystem doesn't die.  (Fixes a bug accidentally
	introduced in e2fsprogs 1.21.)
2001-06-22 21:52:14 -04:00
Theodore Ts'o 7833262585 mkjournal.c (ext2fs_add_journal_inode): Only use fchflags if
HAVE_CHFLAGS and UF_NODUMP are defined, since the Hurd has
	fchflags without defining UF_NODUMP.  (Addresses Debian
	bug #101361)
2001-06-22 21:20:47 -04:00
Theodore Ts'o d90f3494b2 e2fsck/flushb.c and lib/ext2fs/flushb.c: Use platform independent
method of defining the BLKFLSBUF and FDFLUSH ioctl's.
	Also include sys/mount.h since on newer glibc's BLKFLSBUF
	is defined there.
2001-06-22 21:01:17 -04:00
Theodore Ts'o 16645f802a bitops.h: The C language versions of ext2fs_swab16/32 need to be
included if EXT2FS_ENABLE_SWAPFS is defined, since we need to support
	byte swapping even if we don't support the conversion functions.
	(Fixes Debian bug #101686).
2001-06-22 20:54:11 -04:00
Theodore Ts'o 163337b069 uuid.h: Add protection against multiple inclusion 2001-06-22 20:51:42 -04:00
Theodore Ts'o b006f361ed ADD TAG: WIP-20010620 2001-06-22 20:50:05 -04:00
Theodore Ts'o 6a8256e982 Update version for 1.22-WIP release 2001-06-22 20:50:05 -04:00
Theodore Ts'o 990d96a9d0 Makefile.in: Avoid including BitKeeper files into the source tarball. 2001-06-22 20:47:24 -04:00
Theodore Ts'o 89a1fa831f dirblock.c (ext2fs_read_dir_block): Remove use of dir_entry_2 since
the byte-swapping code all assumes the ext2_dir_entry structure.
	(It's a question of whether or not name_len should be byte-swapped or
	not, and whether it's a 16 bit or 8 bit field.)
2001-06-22 20:40:51 -04:00
Theodore Ts'o 42475e281d super.c (release_inode_blocks): Don't try to release the blocks if the
orphaned inode is a device file, symlink, or some other kind of
	special file that doesn't have a block list.
2001-06-22 20:35:38 -04:00
Theodore Ts'o 20a57e98df Filter out CR characters from the output, since BK filtered \r fromthe
expect files.  This is needed to make the regression test suite work
again.
2001-06-22 20:29:54 -04:00
Theodore Ts'o 22d4478036 ADD TAG: E2FSPROGS-1_21 2001-06-16 01:14:28 +00:00
Theodore Ts'o f4f75bae85 ChangeLog:
Update for 1.21 release.
2001-06-16 01:14:28 +00:00
Theodore Ts'o b90b826b9a Many files:
Synchronize with the Debian package 1.20+1.21-WIP-0614-1.
RELEASE-NOTES, version.h, libext2fs.texinfo, e2fsprogs.lsm:
  Update for 1.21 release.
2001-06-15 22:54:34 +00:00
Theodore Ts'o d1e66b7936 ChangeLog, Makefile.in:
Makefile.in: Fix bug in installation of ext2_types.h.  It is a file
  	which is generated and is therefore found in the build directory, not
  	source directory.
2001-06-15 22:44:32 +00:00
Theodore Ts'o 997b820e94 ChangeLog, ismounted.c:
ismounted.c (check_mntent_file): Use a test file in / to check to see
  	if the root filesystem is mounted read-only.  This protects against
  	the case where /etc might not be on /, as well as the case where
  	/etc/mtab doesn't exist.  (Both are should-never happen scenarios, but
  	you never know...)
2001-06-15 18:33:43 +00:00
Theodore Ts'o a35bcab0dd configure:
Update to latest configure.in script.
version.h:
  Update for WIP release.
2001-06-14 07:20:12 +00:00
Theodore Ts'o e9a2d07171 tune2fs.8.in:
Fix minor man page nits.
2001-06-14 07:15:02 +00:00
Theodore Ts'o e333845b2a RELEASE-NOTES, ChangeLog:
Add Debian bug number which got resolved.
2001-06-14 07:11:33 +00:00
Theodore Ts'o 562ba5ecea ChangeLog, mke2fs.c:
mke2fs.c (PRS): Remove unneeded test in when creating a external
  	filesystem journal.
2001-06-14 07:05:44 +00:00
Theodore Ts'o 6bd134809c ChangeLog, ismounted.c:
ismounted.c (ext2fs_check_if_mounted): Fix grammer in comment.  Remove
  	unneeded #pragma argsused, since the arguments are always used.
2001-06-14 07:00:55 +00:00
Theodore Ts'o f76ad46200 problem.c:
Fix tabbing/indenting from Andreas.
2001-06-14 06:58:33 +00:00
Theodore Ts'o 66cf2f6035 ChangeLog, mke2fs.c, tune2fs.8.in, tune2fs.c, util.c, util.h:
tune2fs.c, mke2fs.c, util.c, util.h (print_check_message): Move the
  	message which displays how often the filesystem will be checked from
  	mke2fs into a utility subroutine.  Then cause tune2fs to call that
  	function to display the message after adding a journal to a
  	filesystem.
  mke2fs.8.in: Add manual page fixups and explanation for why it's good
  	to check filesystems periodically from Andreas Dilger.
2001-06-14 06:42:44 +00:00
Theodore Ts'o b6a0807b08 ChangeLog, unix.c:
unix.c (check_if_skip): Adapted patch from Andreas Dilger which prints
  	the number of mounts or days elapsed since the last check when e2fsck
  	is forced to check an otherwise clean filesystem.
2001-06-14 01:16:17 +00:00
Theodore Ts'o 6579488028 ChangeLog, ext2_types.h.in:
ext2_types.h.in: If linux/types.h has been defined, then don't try to
  	redefine the typedefs.
ChangeLog, Makefile.in:
  Makefile.in: Make the install target depend on $(SUBS) to accomodate
  	the fools who want to compile and install e2fsprogs as root using just
  	one command.
2001-06-14 00:24:42 +00:00
Theodore Ts'o 7d614e3d04 RELEASE-NOTES:
Fixed release note entry since we ended up installing ext2_fs.h in
  /usr/include/ext2fs.
2001-06-13 23:49:05 +00:00
Theodore Ts'o 364a373e16 ChangeLog, setsuper.c:
setsuper.c: Add s_lastcheck field to the fields which can be modified
  	using set_super_value.  (Suggested by Andreas Dilger)
ChangeLog, Makefile.in:
  Makefile.in (HFILES): Add ext2_types.h to the list of files which
  	should be installed.
2001-06-13 23:46:39 +00:00
Theodore Ts'o 83d5abf1d7 ChangeLog:
Add debian bug number reference.
  Add debian bug reference.
2001-06-13 23:31:27 +00:00
Theodore Ts'o 66a461469c ChangeLog, ismounted.c:
ismounted.c (check_mntent_file): Work around GNU hurd brain damage.
2001-06-13 23:26:19 +00:00
Theodore Ts'o 30ae14c9de ChangeLog, Makefile.in:
Makefile.in: Limit some .o files from being included into the library
  	if --disable-debugfs, --disable-swapfs, --disable-imager, or
  	--disable-resizer are used.
2001-06-13 22:38:56 +00:00