tune2fs.c (main): Add support to allow HAS_JOURNAL flag to be cleared,
but only if the filesystem is unmounted or mounted read-only. Changed
struct ext2fs_sb to struct ext2_super, and cleaned up old code which
was needed for old versions of ext2_fs.h (not needed since we're using
our own version now).
fsck.c (check_all): Call interpet_device to resolve LABEL= and UUID=
right away so that the device_already_active() logic can do the right
thing. Also cleaned up the the root filesystem logic checking code;
fixed up a logic bug with the parallel_root option.
lsattr.c (list_attributes): Minor cleanup to smooth out logic flow.
Also removed static initialized variables to zero.
ChangeLog, lsattr.1.in:
lsattr.1.in: Add pointer to chattr man page for definition of the file
attributes.
chattr.c (decode_arg, get_flag): Use a table-driven method for
decoding the ext2 file flags character options. Add support for the
journaled data flag.
chattr.1.in: Document the -j/+j/=j flag.
base_device.c (base_device): Add support for DAC960 device names.
fsck.c (device_already_active): Handle the case where base_device
doesn't know how to interpret the device name, instead of core
dumping.
mke2fs.c (main, parse_journal_opts): Add support for creating V1
superblocks. We now pass in a journal_flags field to the journal
creation routines for this purpose.
mke2fs.c: Remove zero initializers to save a few bytes from the
executable image. (Are we excited yet?)
jfs_e2fsck.h, jfs_user.h: Replaces jfs_compat.h. The jfs.h file has
been moved to the include/linux directory.
journal.c, revoke.c, recovery.c: Updated files from Stephen to support
the V2 superblock and revoke processing. The journal.c and revoke.c
files are copies from the ext3 kernel source.
Makefile.in: Added revoke.c to the list of source/object files.
Makefile.in:
Fix up some mistakes in the source file list, and regenerate the
dependencies.
Update Makefile dependencies.
ChangeLog, jfs.h:
jfs.h: Remove excess #include of JFS_DEBUG. Not needed for e2fsprogs,
since we optioanlly define it in the configuration file system.
fsck.c (device_already_active): Change to use new version of
base_device() which now returns dynamically allocated memory.
base_device.c (base_device): New version moved from fsck.c which now
understands ugly devfs names. (Debian bug #65181)
base_device.tst: Test case for base_device.c
fsck.c (wait_one): When we let a new fsck take control of the console
to display the progress bar, set FLAG_PROGRESS to so that fsck knows
not to start new processes during an fsck pass with the progress
bar. (Should fix debian bug #65267)
mke2fs.c(main): Expand the -j option so that it parses option=argument
style options, and add support for creating filesystems with external
journals.
mke2fs.8.in: Document new syntax for the -j option.
imager.c (ext2fs_image_{inode,super,bitmap}_{read,write}, ext2_fs.h,
Makefile.in: New file that has routines that save ext2fs metadata to a
file.
ext2_err.et.in (EXT2_ET_MAGIC_E2IMAGE): New error code assigned.
e2image.h: New file which defines the file format for the ext2 image
file. (Saved copy of ext2 metadata to a file as a saving throw
against worst-case damage.)
ChangeLog, Makefile.in, e2image.c:
e2image.c, Makefile.in: New program which saves ext2 metadata to a
file for people who need a last-ditch saving throw.
mke2fs.c (PRS): Applied Andreas Dilger's patch to make the -r -s
handling a bit more sane. (Even though -s is deprecated at this
point.)
ChangeLog, expect.1:
f_journal: Update to take into account new printing by the e2fsck
program.
version.h:
Update for upcoming WIP release.
llseek.c: Add #ifdef's for IA64 (it's a 64-bit platform, so we don't
need to use llseek).
ChangeLog, fsck.c:
fsck.c (device_already_active): Add a special case check for MD
devices, so we don't try to check them in parallel with other devices.
mke2fs.c (zap_sector): Fix error message printed when zap_sector
fails.
dumpe2fs.c (list_desc): Fixed format string bug when printing the
inode table location in non-hex format.
get_device_by_label.c: Add call to ext2fs_find_block_device if we
can't find the device using the name given by /proc/partitions. (This
can happen if devfs is compiled into the kernel, but not mounted.)
dumpe2fs.c (usage): add fhx options to usage message, add -x option to
print out the per-group block numbers in hex, add line for location of
primary/backup superblock and group descriptors
mke2fs.c: rename max to group_blk_max avoid potential macro conflict
mke2fs.c (zap_sector): Change zap_bootsect to more general zap_sect.
(main): Clear the superblock when starting mke2fs, to avoid leaving
the filesystem in an inconsistent state.
Commit this file for future use; contains a configure.in script for when
libuuid gets separtead out into its own package.
libext2fs.texinfo:
Update version numbers for 1.19 release.
TODO:
Commit TODO list for 1.19 release.
README:
Update file for 1.19 release.
ChangeLog, e2fsprogs.spec:
e2fsprogs.spec: Merge in a few changes from the Red Hat 6.2 spec file,
now that we're using a modern rpm to build e2fsprogs. Also updated
version number to 1.19.
version.h:
Update version number for 1.19 release.
ChangeLog:
Check in changes for 1.19 release.
badblocks.8.in: Added text explaining that the -n and -w options are
mutually exclusive.
badblocks.c (usage): Fix usage message to make it clear that the block
count must be specified if the starting block is to be specified.
(The starting block should be a option, in the long run.)
badblocks.c (test_nd): Save and restore the currently_testing variable
before going into the write verification loop. This avoids a loop
termination problem if the last block on the disk is bad. Also, turn
off the SIGALRM signal while restoring blocks after the user types ^C.
The num_saved variable is now static so that it won't get clobbered by
a longjmp. buf_used and bb_count are no longer static, since they
aren't used by the cleanup routines anymore.
badblocks.c (main): Removed an unsued varaible (buf_size). Fixed bad
getopt argument that didn't allow the 'b' option to take an argument.
Added error checking when parsing the starting block number. Fixed
lint warning in fscanf format string.
fsck.c (execute, wait_one): Treat fsck.ext3 the same as fsck.ext2
(because they are the same) for the purposes of the progress bar
display logic.
ChangeLog, ls.c:
ls.c (list_super): Display the journal information fields in the
superblock if the filesystem has a journal.
tune2fs.8.in: Update manual page to document what happens if
max_mount_count is negative.
tune2fs.c (main): Allow setting the maximal count value to be
negative, since the kernel interprets that as forcing a check.
fsck.c (lookup, load_fs_info, check_all): Use lazy evaluation for
calling interpret_device(), since this requires root privileges if the
partitions need to be scanned. Otherwise, it's not possible to do
non-proot fsck's for removeable devices such as floppies if there are
any LABEL= or UUID= entries in /etc/fstab.
badblocks.c (check_mount, main): Check to see if the filesystem is
mounted before doing a read/write or non-destructive test. This can
be overriden using the new -f option.
badblocks.8.in: Added documentation for the -f option.
badblocks.8.in: Update manual page to reflect that the blocks-count
parameter is now optional. Also properly document the start-block
parameter.
badblocks.c (main): Allow the blocks-count parameter to be optional.
If it's not specified, use the size of the device as a default.
badblocks.c (test_nd): Significantly simplify the logic so that it's
more obviously what's going on. Fixed a few potential cases which
weren't handled correctly in the old, overly complicated logic.
(flush_bufs): Now doesn't take a second argument, and always forces a
sync; this is required before it's really safe to call BLKFLSBUF, at
least for some kernels.
mke2fs.c (PRS): Add a much more specific error message if the
filesystem size is defaulted and get_device_size returns a size of
zero. Otherwise, users get a confusing "invalid argument while passed
to ext2 library" error message.
problem.c, problem.h (PR_0_HURD_CLEAR_FILETYPE): Add new problem code.
super.c (check_super_block): If the OS type in the superblock is the
Hurd, check to see if the filetype feature is set, and offer to clear
it if so. This needs to be done since the Hurd doesn't properly
support the filetype feature. (And since the hurd allows the
transmogrification of files to special files and vice versa --- for no
good reason that I can understand --- it can't support the filetype
feature for the forseeable future, either.)
ChangeLog, mke2fs.c:
mke2fs.c (main): We forcibly turn off the filetype feature if the OS
is the hurd, since the hurd doesn't support it. (And since the hurd
allows the transmogrification of files to special files and vice versa
--- for no good reason that I can understand --- it can't support the
filetype feature for the forseeable future, either.)
mke2fs.c (proceed_question): Fix reversed sense of proceed_question
that was busted due to the internationalization patch. Fixed bug
where if proceed_question was called twice, the input buffer wasn't
cleared of the previous question's newline.
ChangeLog, expect.1, expect.2, image.gz, name:
f_hurd: Add test for Hurd-specific features (right now, just checks to
make sure the filetype feature is cleared)
ChangeLog, ls.c:
ls.c (list_super): Change the string displayed for the Hurd to be
GNU/Hurd, instead of just "GNU".
Makefile.in (uuid_time): Compile uuid_time in two steps (first create
.o, then link it against the libraries) to work around bug in a.out
linker.
dll/jump.funcs, dll/jump.import, dll/jump.params: Update a.out shared
library control files to reflect new added files.
ChangeLog, feature.c, jump.funcs:
feature.c: Make feature_list static; it shouldn't be exported.
dll/jump.funcs: Update a.out shared library control file.
ChangeLog, badblocks.c:
badblocks.c (flush_bufs): Use fsync() if the system doesn't support
fdatasync().
badblocks.c, dumpe2fs.c, e2label.c, mke2fs.c, tune2fs.c, uuidgen.c:
For platforms that don't define optarg.h, manually define optarg and
optind.
ChangeLog, main.c:
main.c: For platforms that don't define optarg.h, manually define
optarg and optind.
ChangeLog, unix.c:
unix.c: For platforms that don't define optarg.h, manually define
optarg and optind.
badblocks.8.in: Updated manual page with suggestions from David
Beattie.
badblocks.c (test_nd): Generalized cleanup and bug-fixes. We now
explicitly clear out the signal handlers to prevent a longjmp to a
deactivated stack frame.
(test_rw): Fixed a signed vs. unsigned comparison error.
chattr.1.in:
lsattr.1.in: Change "version" to "version/generation number".
chattr.1.in: Fix stupid file vs filesystem typo.
tune2fs.c Fix spelling error (spare vs sparse).
mke2fs.c (PRS): Add safety check to make sure the number of blocks
doesn't exceed 32 bits on a 64 bit machine.
chattr.c: Random cleanup; file-only variables are now static. Options
for setting/clearings flags put into order, and #ifdef's removed
(since we now use a built-in header file). Add error message if user
tries to set and reset the same flag.
lsattr.c: Random cleanup; file-only variables are now static. The -l
"long" listing has been changed to look nicer. Options names have
been renamed to be more descriptive.