Theodore Ts'o [Fri, 25 Jun 2004 04:52:08 +0000 (00:52 -0400)]
setflags.c, fsetflags.c: On linux systems, undefine HAVE_CHFLAGS
to deal with lame glibc's that define this function
without actually implementing it. Can you say "attractive
nuisance", boys and girls? I knew you could! (Thanks to
Pavel Troller for reporting this braindamage.)
Theodore Ts'o [Thu, 27 May 2004 01:29:14 +0000 (21:29 -0400)]
closefs.c (ext2fs_flush): Make sure the master superblock is
written last, and only after other I/O has been flushed to
disk. Thanks to Junfeng Yang from the Stanford
Metacompilation group for pointing a potential ordering
constraint problem if we don't write things out in the
right order.
Theodore Ts'o [Thu, 27 May 2004 01:04:07 +0000 (21:04 -0400)]
Implement the ability for the test_io mechanism to abort after n reads
or writes to a particular block. The block is specified by
TEST_IO_BLOCK environment variable, and the read/write count
by the TEST_IO_READ_ABORT and TEST_IO_WRITE_ABORT environment
variables. The block data is now only dumped if the 0x10 bit
is set in TEST_IO_FLAGS.
Theodore Ts'o [Thu, 27 May 2004 00:58:45 +0000 (20:58 -0400)]
Fixed potential ordering constraint problem in e2fsck's journal
recovery code by implementing the sync_blockdev function. Thanks to
Junfeng Yang from the Stanford Metacompilation group for pointing this
out.
Revert change to add dependency on awk; it isn't needed since awk is
a virtual package which is "de facto essential" by virtual of the fact
that essential packages such as base-files depends on it.
probe.c (blkid_verify_devname): If the time is earlier than the
last modified time of the device, then force a reverify;
it means the system time may not be trustworthy.
In the blkid library, if the BLKID_FILE environment
variable is set, use it to find the blkid.tab file if the
calling application did not supply a filename.
In e2fsck, when trying to determine if the system is running on
battery, be more flexible about the name of the ACPI device that
corresponds to the AC adapter. (Addresses Debian bug #242136)
tune2fs.c (main): If the environment variable
TUNE2FS_SKIP_MOUNT_CHECK is set, do not try
to check if the filesystem is mounted.
(update_feature_set): If the compatibility bitmasks were
not modified, don't set the superblock dirty bit.
Refine the build process to avoid re-running subst all the time on
some generated files, by having subst update the modtime on these
files even when the generated file hasn't changed. We do this with
generated files that do not have any downstream dependencies.
Change licensing of libuuid man pages from GPL to 3-clause BSD-style,
with permission from Andreas Dilger (the original author of the man
pages), email dated Mon, 29 Mar 2004 23:11:53 -0700, Message-ID 20040330061153.GD1177@schnapps.adilger.int.
Matthias Andree [Tue, 30 Mar 2004 02:17:14 +0000 (04:17 +0200)]
unix_io.c, pass1.c:
int -> unsigned for 1 bit wide bitfields - we cannot have a value and a sign in 1 bit.
Fixes some of the Intel C++ 8.0 warnings (-w1 level).
Theodore Ts'o [Mon, 22 Mar 2004 01:16:19 +0000 (20:16 -0500)]
Don't close the file descriptor when determining the size.
This bug was introduced in the previous getsize changes,
and was screwing up the blkid library probe functions.
(Addresses Debian Bug #239191)
Theodore Ts'o [Mon, 8 Mar 2004 19:18:56 +0000 (14:18 -0500)]
e2image.8.in: Update manpage to detail that writing to stdout is
currently only supported when writing a raw image dump.
(Addresses Debian bug #236383)
Theodore Ts'o [Fri, 5 Mar 2004 01:30:16 +0000 (20:30 -0500)]
logsave.c (main): Use setsid() to avoid getting killed by init
(run_program): Add a newline after reporting the exit code
or signal when the program exits.
Theodore Ts'o [Fri, 27 Feb 2004 02:06:58 +0000 (21:06 -0500)]
badblocks.c (pattern_fill): Fix bug accidentally added when
fixing up gcc -Wall nits. badblocks -t random was not
getting handled properly because ~0 needed to be cast to
an unsigned long instead of an unsigned char. (Addresses
Debian bug #234828)
Theodore Ts'o [Tue, 24 Feb 2004 03:30:54 +0000 (22:30 -0500)]
debugfs.c (internal_dump_inode): Display the major/minor device
numbers for block/character devices.
(do_mknod): Add support for new-style device numbers (where
the major or minor number is greater than 255 and less
than 65535). (Addresses Sourceforge bug #865289)
Theodore Ts'o [Tue, 24 Feb 2004 02:26:23 +0000 (21:26 -0500)]
Makefile.in (PROFILED_LIBS, PROFILED_DEPLIBS): Fix reference to
libblkid so that the build will work with --enable-profile
(Addresses Sourceforge bug #811408)
Theodore Ts'o [Sun, 22 Feb 2004 02:02:15 +0000 (21:02 -0500)]
fsck.c (execute): Use '&&' instead of '&'. (It didn't cause a
problem because we got lucky, but let's do things right.
Fix from Thomas Woerner at Red Hat.)
Theodore Ts'o [Sun, 22 Feb 2004 01:53:03 +0000 (20:53 -0500)]
e2fsck.c (e2fsck_run): Clear the SETJMP_OK flag when returning
so we don't double longjump into an invalid stack frame.
(Thanks to Matthias Andree for providing this fix.)
Theodore Ts'o [Sun, 1 Feb 2004 02:24:51 +0000 (21:24 -0500)]
problem.c (fix_problem): Don't call print_e2fsck_message if the
message is empty; otherwise, the NLS substitution will
print the .po header, which is Just Wrong.
Theodore Ts'o [Sun, 1 Feb 2004 02:16:35 +0000 (21:16 -0500)]
fgetflags.c, fgetversion.c, fsetflags.c, fsetversion.c: Apply
patch from Brian Bergstrand to support ext2_ioctl() in
Darwin. This is implemented via the fsctl system call.
Theodore Ts'o [Fri, 30 Jan 2004 07:07:13 +0000 (02:07 -0500)]
gen_uuid.c (uuid_generate_time): Fix bug pointed out by Ralf
S. Engelshall; when generating a random ethernet address
because one is not available, set the least significant
bit of the first byte of the MAC address, since it is the
first bit to be transmitted, and is therefore the
multicast bit.
Theodore Ts'o [Fri, 30 Jan 2004 06:48:06 +0000 (01:48 -0500)]
Fix a byte swap bugs, including one which caused e2fsck to
incorrectly treat as valid symlinks created with SE Linux
(Debian bug #228723) as well as failing the f_journal test case on
big endian systems due to the backup journal blocks not being swapped.