Commit Graph

292 Commits (7e89304878045b35c811201b04d3efd38916dbd1)

Author SHA1 Message Date
Theodore Ts'o d3f917989b Fix gcc -Wall nits. 2003-01-25 00:26:48 -05:00
Theodore Ts'o 23b7c8b886 unix_io.c (unix_write_blk): Fix up GCC -Wall nits. 2003-01-22 18:30:01 -05:00
Theodore Ts'o 819157db79 Remove 32-bit limitations for debugfs's dump command and to the
ext2fs library's ext2fs_file_read.
2003-01-22 18:25:39 -05:00
Theodore Ts'o 4564c727e9 initialize.c (ext2fs_initialize): If the user specifies a really
large number of inodes, then reduce the number of blocks
	per group until we find a workable set of filesystem
	parameters.

ext2_err.et.in (EXT2_ET_TOO_MANY_INODES): Add new error code.
2003-01-19 21:01:22 -05:00
Theodore Ts'o 38513011b9 Update files for 1.32 release. 2002-11-09 15:00:56 -05:00
Theodore Ts'o 82c4660c75 unix_io.c (find_cached_block, reuse_cache, unix_read_blk,
unix_write_blk): Optimize routines so that we don't end up
	searching the cache twice when a block isn't in the
	cache.  If reads are larger than READ_DIRECT_SIZE, don't
	let them go through the cache.
2002-11-09 14:56:17 -05:00
Theodore Ts'o 1d47dfb91e unix_io.c (find_cached_block): Fixed bug which caused some clean
blocks to be erroneously marked as dirty, so they would
	get written back to the disk before they are evicted from
	the cache.  Harmless, but it slows down e2fsck
	significantly.
2002-11-09 10:33:49 -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 bfd418832d closefs.c (write_bgdesc, ext2fs_flush): Fix bug in meta_bg
support when the MASTER_SB_ONLY flag is set.  Some of
	the descriptor blocks that should have been written out
	were getting skipped.
2002-11-08 09:21:46 -05:00
Theodore Ts'o 5d823a478f Update files for 1.30 release. 2002-11-01 02:13:53 -05:00
Theodore Ts'o a2c8bf9483 ext2_fs.h: Add support for a new inode flag, which is to be used
for indicating the top of directory hierarchies for the
	Orlov block allocator.
2002-11-01 02:01:41 -05:00
Theodore Ts'o 15f9011add Add support for a new inode flag, which is to be used
for indicating the top of directory hierarchies for the
Orlov block allocator.
2002-11-01 01:53:52 -05:00
Theodore Ts'o 3a42fe220c ismounted.c (check_mntent, check_mntent_file): Add better
support for loopback-mounted filesystems.  Check /etc/mtab
	if /proc/mounts doesn't turn up any mount flags, since
	/etc/mtab has the loopback image filename, instead of
	/dev/loop0.  Also, check based on st_dev and st_ino, so
	that if a relative pathname or a pathnames using symbolic
	links are used, we can detect the the filesystem correctly
	in those cases.  (Addresses Sourceforge bug #619119)
2002-10-31 13:23:37 -05:00
Theodore Ts'o 55ca9ae5ec flushb.c (ext2fs_sync_device): If the BLKFLSBUF ioctl succeeds,
don't try the FDFLUSH ioctl that was required for floppies
	with older kernels.  This avoids needless whining from the
	MD device driver.  (Addresses Sourceforge bug #545832).
2002-10-31 12:21:05 -05:00
Theodore Ts'o 9ed06a1eb9 openfs.c (ext2fs_open): Fix bug which caused us to pass the
wrong group_block to ext2fs_descriptor_block_loc if we're
	using the backup superblock/block group descriptors.
	(ext2fs_descriptor_block_loc): If we're using the backup
	superblock descriptors, use the backup descriptor block in
	the next block group.
2002-10-31 11:45:06 -05:00
Theodore Ts'o 76dd5e5c28 Add support for the meta_bg feature flag to the resize2fs program.
Fix bug in meta_bg support in mke2fs, e2fsck, and dumpe2fs; we were 
incorrectly reserving the legacy block groups desriptor blocks.
2002-10-30 23:07:21 -05:00
Theodore Ts'o 9d2aefb3bc Add a new superblock field, s_mkfs_time, which indicates when
the filesystem was created.  It is set via mke2fs, and printed 
via list_super2() (which is called by dumpe2fs).  

Also, list_super2() will now print "n/a" if the last mount time
(s_mtime) is zero.
2002-10-25 17:29:55 -04:00
Theodore Ts'o 4a959fe6f1 Add support for new default mount options for the journal data mode. 2002-10-20 01:52:52 -04:00
Theodore Ts'o c046ac7f2e Add support for the meta_blockgroup filesystem format. 2002-10-20 00:38:57 -04:00
Theodore Ts'o a0c3fd5e4c Add support for new feature in ext2/3 filesystems; a default mount options field
in the superblock.  Added the tune2fs '-o' option to set this field.
2002-10-15 17:43:43 -04:00
Theodore Ts'o 3e69906495 Fix gcc -Wall nits.
Fix format bug if NLS is in use.

Add extra so that the info directory looks OK on OpenWall.
2002-10-13 23:56:28 -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 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 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 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 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 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 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 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 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 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 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 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 9e6c5dd73e ext2_fs.h: Add superblock field for reserved group descriptors. 2002-07-09 11:08:10 -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 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 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
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 31e29a12d1 Fix up Andreas's 8k blocksize changes to fix a number of bugs,
and to make the page size determined at run-time instead of 
compile time.
2002-05-17 10:53:07 -04:00
Andreas Dilger 932a489cdf Add support for creating and checking 8192-byte blocksize filesystems.
We complain if you try to create such a filesystem on a system with 4096
byte PAGE_SIZE.

Add checks for valid inode size for undocumented -I option.
2002-05-16 03:20:07 -06:00
Theodore Ts'o b38cd28363 Add a new command "bmap" to debugfs which calculates the logical->physical block
mapping for a particular inode.

Fixed a bug in the libext2 library which broke ext2fs_bmap if no inode structre
was passed inside for here.

Fixed bad calling parameters to parse_ulong which broken the -b  and -s
options to debugfs, as well as do_init, and the testb, setb, clearb functions.
2002-05-11 22:13:20 -04:00
Theodore Ts'o f0efd2976b ismounted.c (check_mntent_file, is_swap_device): Verify that the
file we are checking is a block device file before looking
	at st_rdev, since it's not valid for normal files.
	(is_swap_device): Move so that it is outside the
	HAVE_MNTENT_H, so that it is always built.
2002-04-27 17:07:52 -04:00