• Home
  • History
  • Annotate
  • only in /external/e2fsprogs/misc/
History log of /external/e2fsprogs/misc/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d25948b9b4a9e361ef071dc8175df0407f60b7e0 21-Nov-2014 JP Abgrall <jpa@google.com> tune2fs: Allow building it as a static lib

This allows getting all of tune2fs as a static library.
The entry point is
int tune2fs_main(int argc, char **argv).
It requires passing argv[0]="tune2fs" to get tune2fs behavior.

Bug: 18430740
Change-Id: I7bf8d96c53066a4da37778c0d67383b0b820e2ff
ndroid.mk
une2fs.c
une2fs.h
e0ed7404719a9ddd2ba427a80db5365c8bad18c0 20-Mar-2014 JP Abgrall <jpa@google.com> Switch back to 1.42.9 now that there is a fix

Revert "Revert changes that moved from 1.41.14 to 1.42.9"

This reverts commit 65f0aab98b20b5994a726ab90d355248bcddfffd.
ndroid.mk
ODULE_LICENSE_GPL
akefile.in
adblocks.8.in
adblocks.c
hattr.1.in
hattr.c
efault_profile.c
umpe2fs.8.in
umpe2fs.c
2freefrag.c
2image.8.in
2image.c
2initrd_helper.c
2undo.c
4defrag.8.in
4defrag.c
xt4.5.in
ilefrag.8.in
ilefrag.c
indsuper.c
sck.c
smounted.c
ogsave.c
sattr.c
ke2fs-hurd.conf
ke2fs.8.in
ke2fs.c
ke2fs.conf
ke2fs.conf.5.in
ke2fs.conf.in
klost+found.c
ls-enable.h
artinfo.c
une2fs.8.in
une2fs.c
til.c
til.h
uidd.c
65f0aab98b20b5994a726ab90d355248bcddfffd 06-Mar-2014 JP Abgrall <jpa@google.com> Revert changes that moved from 1.41.14 to 1.42.9

Revert "e2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H"
commit e80e74c41d85ff93f3d212ba6512340f48054a93.

Revert "Merge remote-tracking branch 'linaro/linaro-1.42.9' into aosp_master"
This reverts commit e97b2b6fc82f840e84dfc631b87f21be44ff2421, reversing
changes made to 7e2fb9d09c245eba70ee008b78007315e9c0f1df.

Revert "Prepare for upstream 1.42.9"
This reverts commit 7e2fb9d09c245eba70ee008b78007315e9c0f1df.

Bug: 13340735
Change-Id: If48b153a95ef5f69f7cdccb00e23524abff3c5a8
Signed-off-by: JP Abgrall <jpa@google.com>
ndroid.mk
ODULE_LICENSE_GPL
akefile.in
adblocks.8.in
adblocks.c
hattr.1.in
hattr.c
efault_profile.c
umpe2fs.8.in
umpe2fs.c
2freefrag.c
2image.8.in
2image.c
2initrd_helper.c
2undo.c
4defrag.8.in
4defrag.c
xt4.5.in
ilefrag.8.in
ilefrag.c
indsuper.c
sck.c
smounted.c
ogsave.c
sattr.c
ke2fs-hurd.conf
ke2fs.8.in
ke2fs.c
ke2fs.conf
ke2fs.conf.5.in
ke2fs.conf.in
klost+found.c
ls-enable.h
artinfo.c
une2fs.8.in
une2fs.c
til.c
til.h
uidd.c
3567321e376c60d42b38e97bba8011c6ca61edbf 19-Feb-2014 Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org> Add missing libext2_quota linkage and resource_track.c

Change-Id: If3983d882f97c5b4cfaf2a177d5d84c68c66fad3
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
ndroid.mk
18a1444b4f1e6a0948fd38fa0de382d86cfe04de 31-Dec-2013 Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org> Add files that would normally be generated by the e2fsprogs build system

Android doesn't run ./configure and friends, so it has to rely on
pre-populated versions of the autogenerated files.

This is somewhat bogus (e.g. hardcoded little-endian reference in
lib/ext2fs/ext2_types.h) and should at some point be fixed, but it's
what Android has always done, not a regression from the 1.41.14 branch.

Also, don't #include config.h which we don't generate (we pass what it
usually contains as -D parameters from Android.mk) anywhere.

Add a new Android.mk file for the quota library.

Change-Id: I162c6327fee5bd06261d9cdcc34bda10f04a6f21
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
adblocks.c
ase_device.c
lkid.c
hattr.c
efault_profile.c
umpe2fs.c
2freefrag.c
2image.c
2initrd_helper.c
2label.c
2undo.c
4defrag.c
ilefrag.c
indsuper.c
sck.c
smounted.c
ogsave.c
sattr.c
ke2fs.c
klost+found.c
artinfo.c
une2fs.c
til.c
uidd.c
uidgen.c
5fe0b41dba699fa14432a633c863ea8cb7bf3f5d 31-Dec-2013 Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org> Re-add Android makefiles from AOSP master

Change-Id: I6c6dbe11baa395442f4cf845ad39801f1c426129
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
ndroid.mk
d05508956734d55f7ee286085a1f6570d11848b7 29-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2freefrag: avoid integer overflow when reporting free space statistics

An integer overflow could happen if the file system is large and has
very large contiguous chunks of free space.

Addresses-Debian-Bug: #718205

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
9518b297277799e3893db1650c891310243596b1 28-Dec-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: clarify documentation about bigalloc in the man page

Addresses-Debian-Bug: #669730

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
886056bd393ed6a7cc81bd752933c91637738da7 28-Dec-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: clarify the description of the -I option in the man page

Addresses-Debian-Bug: #698076

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
c003f48b484cbbe3f285615dab629a46e8e072b9 27-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: Clarify e2image's usage message

Also reflect a similar change to e2image's man page.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
2image.c
c8ee0d60fd23a47f96253d7e575f1a9cf7e98577 27-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: write progress information to stderr

This allows "e2image -rp /dev/sdc1 - | bzip2 > sdc1.img.bz2" to work
correctly, so the progress information doesn't corrupt the image being
sent to stdout.

Also add a diagnostic indicating that the -p option is currently only
implemented for raw mode.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
212c99488343cbc52fab3368f72853a5a3ff2e8a 27-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: clean up progress reporting

The old progress reporting code would crash on small file systems.
For example:

cp /dev/null /tmp/foo.img
mke2fs -t ext4 -F /tmp/foo.img 100
e2image -o 0 -O 4096 -rap /tmp/foo.img

Fix this, and while we're at it, factor out the code to make it easier
to read and maintain.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
7fcaabf8e80031b9919128c7cb8a86fdbcacb8f4 26-Dec-2013 Theodore Ts'o <tytso@mit.edu> dumpe2fs: don't try to print the journal info when using image files

If dumpe2fs tries to print journal info when using an image file
created using e2image, it will crash since the journal isn't
available. So don't even try to print it.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
737a88673d709d5b1375d589f790367121a59a42 26-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: make sure all strings are marked for internationalization

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
0155e770218961f1ab0b39851e1fb4e832ff713d 26-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: add -n option to show what blocks would have been written

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
2image.c
38c771d6dd523779b7266e8df359e0f7811a6d53 25-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: add -c option to optimize file system copying for flash devices

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
2image.c
aa2c743331f392e49d5b168b5e3d8c8a8084b8b4 25-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: only skip writing zero blocks when writing to a new file

The e2image progam was originally intended to create image files.
However, some people have started using e2image to copy a file system
from one block device to another, since it is more efficient than
using dd because it only copies the blocks which are in use. If we
are doing this, however, we must not skip writing blocks which are all
zero in the source device, since they may not be zero in the
destination device.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: Phillip Susi <psusi@ubuntu.com>
2image.c
d28759b22388404561cea092855e4daca3781358 25-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: clean up gcc -Wall and sparse nits

Fix up the gcc -Wall and sparse nits introduced by Phillip Susi's
e2image patches.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: Phillip Susi <psusi@ubuntu.com>
2image.c
80fe25a2d7d8461ac17b21659885f1b4ec6fecd7 25-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: refactor calls to ext2fs_llseek()

Refactor calls to ext2fs_llseek(). This makes the code more compact,
easier to read, and it also fixes a number of places where we call
ext2fs_llseek() without doing proper error checking.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
ecc859b2819cd8772ba660b9229489378e541838 25-Dec-2013 Phillip Susi <psusi@ubuntu.com> e2image: handle SIGINT safely

When doing an in place move, interrupting it past the
point of no return will destroy the filesystem since
parts of it have been overwritten. Catch SIGINT the
first time and issue a warning if this is the case.

Signed-off-by: Phillip Susi <psusi@ubuntu.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
c40c7ceffe5ca88ec43b853e4a908f1cbb8c0f15 08-Oct-2013 Phillip Susi <psusi@ubuntu.com> e2image: add progress indicator

When given the -p switch, print progress information, including
block counts, percentage complete, estimated time remaining, and
throughput.

Signed-off-by: Phillip Susi <psusi@ubuntu.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
2image.c
22b83f628080088fb901b1d001ed47f0de64cd93 16-Dec-2013 Phillip Susi <psusi@ubuntu.com> e2image: perform in-place move

If given at least one offset and only one file, assume source
and dest are the same, and do an in place move.

Signed-off-by: Phillip Susi <psusi@ubuntu.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
2image.c
6b5535f40974d522e827c83d02d005ac5c8b5056 16-Dec-2013 Phillip Susi <psusi@ubuntu.com> e2image: add offset switches

Add -o and -O switches to specify the offset where the source
and destination filesystems start. This is useful if you have
an image of a partitioned disk or wish to create one.

Signed-off-by: Phillip Susi <psusi@ubuntu.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
2image.c
3c22bf7e70c5ed2e525220ef4453d029a403fa33 24-Dec-2013 Theodore Ts'o <tytso@mit.edu> Add ext4 man page and update and clean up the other man pages

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
umpe2fs.8.in
xt4.5.in
ke2fs.8.in
une2fs.8.in
b769aaec1aa7c03dd7413c5248eaa48b2aae8e7f 23-Dec-2013 Andreas Dilger <adilger@dilger.ca> mke2fs: further updates for mke2fs(8) man page

The mke2fs(8) man page was updated in 4727c67dc2, but needs some
more clear descriptions for extra_isize and metadta_csum features.
The uninit_bg feature is supported by all ext4-capable kernels,
and does have a slow e2fsck pass for newly-formatted filesystems,
so remove the caveat.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
2bc30417541deffca795db8ec4e7f7ccb616dc3f 23-Dec-2013 Andreas Dilger <adilger@dilger.ca> debugfs, e2fsck: fix s_desc_size handling

The s_desc_size in the superblock specifies the group descriptor
size in bytes, but in various places the EXT4_FEATURE_INCOMPAT_64BIT
flag implies that the descriptor size is EXT2_MIN_DESC_SIZE_64BIT
(64 bytes) instead of checking the actual size. In other places,
the s_desc_size field is used without checking for INCOMPAT_64BIT.

In the case of ext2fs_group_desc() the s_desc_size was being ignored,
and assumed to be sizeof(struct ext4_group_desc), which would result
in garbage for any but the first group descriptor. Similarly, in
ext2fs_group_desc_csum() and print_csum() they assumed that the
maximum group descriptor size was sizeof(struct ext4_group_desc).
Fix these functions to use the actual superblock s_desc_size if
INCOMPAT_64BIT.

Conversely, in ext2fs_swap_group_desc2() s_desc_size was used
without checking for INCOMPAT_64BIT being set.

The e2fsprogs behaviour is different than that of the kernel,
which always checks INCOMPAT_64BIT, and only uses s_desc_size to
determine the offset of group descriptors and what range of bytes
to checksum.

Allow specifying the s_desc_size field at mke2fs time with the
"-E desc_size=NNN" option. Allow a power-of-two s_desc_size
value up to s_blocksize if INCOMPAT_64BIT is specified. This
is not expected to be used by regular users at this time, so it
is not currently documented in the mke2fs usage or man page.

Add m_desc_size_128, f_desc_size_128, and f_desc_bad test cases to
verify mke2fs and e2fsck handling of larger group descriptor sizes.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
f404167dda29a59d2be2882328aeb074b9899669 17-Dec-2013 Theodore Ts'o <tytso@mit.edu> Clean up sparse warnings

Mostly by adding static and removing excess extern qualifiers. Also
convert a few remaining non-ANSI function declarations to ANSI.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
umpe2fs.c
2image.c
2initrd_helper.c
2undo.c
4defrag.c
sck.c
ogsave.c
ke2fs.c
4727c67dc20f0c15cc8502b9bc3ee9f73d7e2c3a 16-Dec-2013 Uri Corin <uri.corin@gmail.com> e2fsprogs: mke2fs manpage updates

I've added documentation for all available filesystem features
settable by mke2fs.
* Features now include the kernel constant attached to the function.
* Some pre-existing feature explanations have been expanded based on
ext4.wiki.kernel.org.

[ Edited by tytso for stylistic and correctness. ]

Addresses-Debian-Bug: #586218

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
82896cbe0e83fc084abbe1ae2f043d2ec9058963 16-Dec-2013 Kazuya Mio <k-mio@sx.jp.nec.com> mke2fs: fix force option to create filesystem on mounted device

According to mke2fs man, we can create a filesystem on the mounted
device when -FF option is specified.

However, currently we have to specify -F option third to force mke2fs.
This patch fixes the problem.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Reviewed-by: Zheng Liu <wenqing.lz@taobao.com>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
til.c
269da3b8068ecb0bdf8077b0f7b27f164203cb35 16-Dec-2013 Andreas Dilger <adilger@dilger.ca> ext2fs: quiet compiler warnings

Include ext2fsP.h in fileio.c for ext2fs_file_block_offset_too_big()
declaration. Fix up the declaration to mark it extern in the header.

Include <strings.h> header for strcasecmp() in tune2fs.c if available,
as described in the strcasecmp(3) man page, instead of doing this
indirectly by declaring _BSD_SOURCE and getting it from <string.h>.

If CONFIG_QUOTA is undefined, parse_quota_opts() is unused in
tune2fs.c so #ifdef it out.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
45ff69ffeb700012a7c052f5e45882557a40be7e 16-Dec-2013 Andreas Dilger <adilger@dilger.ca> build: quiet LLVM non-literal string format warning

Compiling with LLVM generates a large number of warnings due
to the use of _() for wrapping strings for i18n:

warning: format string is not a string literal
(potentially insecure) [-Wformat-security]
./nls-enable.h:4:14: note: expanded from macro '_'
#define _(a) (gettext (a))
^~~~~~~~~~~~

These warnings are fixed by using "%s" as the format string,
and then _() is used as the string argument.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
hattr.c
umpe2fs.c
2image.c
2undo.c
ke2fs.c
klost+found.c
une2fs.c
uidd.c
3a941bef3b9036ca3db9d510c71bcae801ea4dd1 16-Dec-2013 Andreas Dilger <adilger@dilger.ca> build: use long long for __u64 by default

Don't print a verbose configure error in parse-types.h if
<asm/types.h> missing and __[SU]*_TYPEDEF is unset. This is
always the case for non-Linux builds.

The printf formatting strings all use "%llu" for printing 64-bit
values and this it produces a large number of warnings if __u64
is defined as "unsigned long". If __U64_TYPEDEF isn't set use
"unsigned long long" for __u64 in ext2-types.h and blkid-types.h
by default instead of using "unsigned long".

Fix a few places where "%d" or "%u" or "%Lu" were used to print a
64-bit value, by converting them to use "%lld" or "%llu" instead.

Fix a few places where "%lu" was used to print .tv_usec, by casting
the variable to "(long)" since .tv_usec is "int" on some systems.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
indsuper.c
66457fcb842300e757a69c49c2eb4d8e335be34c 15-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> tune2fs: forbid changing uuid on an uninit_bg filesystem

The old uninit_bg checksums depend on the UUID, so prohibit changes to
the UUID if a checksumming filesystem is mounted, because this
introduces a nasty race where the kernel and tune2fs are both trying
to rewrite group descriptors at the same time, with different ideas
about what the UUID is.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
6908c0c391af248854b892737c92a7a678a24f66 12-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> dumpe2fs: check return values

Check the return values from ext2fs_get_block_bitmap_range2(); if an
error happened, print that and don't print garbage bitmap.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
b3993825860a3c89fe2e66ab74dc59ab65be99c9 12-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> e2image: check return value from check_if_mounted()

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
b1667425f8cd8b3c3d6b205ac9f3dee2e085058c 12-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> e4defrag: defensively check results of sysconf(_SC_PAGESIZE)

sysconf(_SC_PAGESIZE) will probably never return an error, but just in
case it does, we shouldn't pass what looks like a huge number to
sync_file_range() and posix_fadvise().

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
e661d2815194d6db3f3e38223277569ad55bb420 12-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> e4defrag: don't crash if umounts the filesystem races with us

If someone umounts the filesystem between statfs64() and the getmntent()
iteration, we can exit the loop having never set mnt_type, and strcmp
can crash. Fix the potential NULL dereference.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
80a1806d617fdb14421ac6ac50a640ac1fd303b3 12-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> mke2fs: don't leak memory (on error path)

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
e39082e2e81641eb8021eb6ddc969731537c79a8 12-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> misc: don't leak file descriptors (on error paths)

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
ilefrag.c
d20403df479efb35966470920c9a5cda581126d0 11-Dec-2013 Darrick J. Wong <darrick.wong@oracle.com> mke2fs: load configfile blocksize setting before 64bit checks

mke2fs has a series of checks to ensure that we don't create a
filesystem too big for its blocksize -- if auto-64bit is on, then it
turns on 64bit; otherwise it complains. Unfortunately, it performs
these checks before looking in mke2fs.conf for a blocksize, which
means that the checks are incorrect if the user specifies a non-4096
blocksize in the config file and says nothing on the command line.
The bug also has the effect of mandating a 4k block size on any block
device larger than 4T in that situation. Therefore, read the block
size from the config file before performing the 64bit checks.

Reviewed-by: Zheng Liu <wenqing.lz@taobao.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
26da661447f1b7cb49864590fc42f405f0d9a328 03-Dec-2013 Theodore Ts'o <tytso@mit.edu> dumpe2fs: fix printing of block offsets for 64-bit file systems

Use ext2fs_group_first_block2() instead of ext2fs_group_first_block()
to avoid dumpe2fs from printing crazy block offsets when we have block
numbers which are larger than 32 bits.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
4c2ae57d38f60fa74ecd5bb681c8fb80fba59b6a 02-Dec-2013 Theodore Ts'o <tytso@mit.edu> e2image: pass the correct size write_header

Commit bf0449b1a654, which added the ability to write qcow2 files,
generalized the write_header() file to take the size of the header
structure which it writes out. Unfortunately, it changed the call
which supported original e2image format to pass in fs->blocksize,
instead of the actual size of the e2image header structure (which is
substantially smaller than fs->blocksize). This meant that we copied
in stack garbage into the e2image file, and it made valgrind quite
unhappy.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
d87f198ca3250c9dff6a4002cd2bbbb5ab6f113a 24-Oct-2013 Darrick J. Wong <darrick.wong@oracle.com> libext2fs: reject 64bit badblocks numbers

Don't accept block numbers larger than 2^32 for the badblocks list,
and don't run badblocks on them either.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.c
cecfb4c04227dd5803c24b311d92a80e91b7b380 18-Oct-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: don't let resize= turn on resize_inode when meta_bg is set

Passing the "-E resize=NNN" option to mke2fs sets the resize_inode
feature. However, resize_inode and meta_bg are mutually exclusive;
unfortunately, we check this constraint before we parse the extended
options. Fix this by moving this check after the calls
parse_extended_opts().

Reported-by: "Darrick J. Wong" <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
e2883e2792023e32033d35697d9676fbf1fb1394 16-Oct-2013 Phillip Susi <psusi@ubuntu.com> mke2fs: clarify inode ratio in man page

The man page still said it was not possible to change the number of
inodes on a filesystem after creating it. You actually can by
resizing the fs, so clarify this language a bit.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
d82445e903be682e09c41607ed5f7b338cb8c1b0 14-Oct-2013 Eric Sandeen <sandeen@redhat.com> tune2fs: more respect for quota config option

Commit 44a2cca3 disabled tune2fs -O quota when the build
didn't have --enable-quota at configure time, but that
wasn't quite enough.

We need to exclude the "-Q" option as well from tune2fs
when --enable-quota isn't specified at configure time.

Otherwise, tune2fs -Q can set the quota feature, but no other
utility will touch the filesystem due to the unknown flag,
if buitl w/o --enable-quota.

So put everything related to "-Q" under #ifdef CONFIG_QUOTA;
usage output (was missing before) and option parsing.

Addresses-Red-Hat-Bugzilla: #1010709
Reported-by: Bert DeKnuydt <Bert.Deknuydt@esat.kuleuven.be>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
f5589f4c189a2d6b34fcd10570c496ca568e0aee 14-Oct-2013 Eric Sandeen <sandeen@redhat.com> mke2fs: remove quota docs if not configured in

If quota isn't turned on with --enable-quota, then comment
quota documentation out of the mke2fs manpage.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
832cb612f8c1c10525fe438206d4fe5c6d38a4e7 12-Oct-2013 Darrick J. Wong <darrick.wong@oracle.com> e2fsprogs: add (optional) sparse checking to the build

Run sparse against source files when building e2fsprogs with 'make C=1'. If
instead C=2, it configures basic ext2 types for bitwise checking with sparse,
which can help find the (many many) spots where conversion errors are
(possibly) happening.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
6c327e9ca47fa4e51efe3a6601ad661b8c1a3964 12-Oct-2013 Carlos Maiolino <cmaiolino@redhat.com> e2image: complain if running e2image -r or -Q on a mounted filesystem

Several users have used e2image on a mounted RW filesystem, resulting in
inconsistent, useless e2images for debugging purposes.

This commit will forbid this and print an error message, although the
user can override this using a new force option.

Signed-off-by: Carlos Maiolino <cmaiolino@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.8.in
2image.c
d11f92af3563ce9a235286e6e10d1ebf29a2a4a8 12-Oct-2013 Darrick J. Wong <darrick.wong@oracle.com> mke2fs: complain about creating 64bit filesystems without extents

A 64bit filesystem without extents is not terribly useful, because the
old block map format does not support pointing to high block numbers.
Warn the user who tries to create such an animal.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
4dbfd79d1458ce1259b951377e341aeb6197f8c1 07-Oct-2013 Darrick J. Wong <darrick.wong@oracle.com> e2fsprogs: fix blk_t <- blk64_t assignment mismatches

Fix all the places where we should be using a blk64_t instead of a
blk_t. These fixes are more severe because 64bit values could be
truncated silently.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
une2fs.c
fd73a1d254556fce65d03e74ee5a97304f496caa 11-May-2013 Ashish Sangwan <a.sangwan@samsung.com> mke2fs: calculate journal blocks just after fs initialize

We can calculate journal blocks as soon as blocksize is set.
It will help to figure out wrong journal blocks count earlier.
This will save some un-necessary initialization.

Without patch output =>
mke2fs /dev/sdc1 -J size=1048576
mke2fs 1.42.7 (21-Jan-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
61312 inodes, 244936 blocks
12246 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=251658240
8 block groups
32768 blocks per group, 32768 fragments per group
7664 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376

Allocating group tables: done
Writing inode tables: done

The requested journal size is 268435456 blocks; it must be
between 1024 and 10240000 blocks. Aborting.

With patch output =>
mke2fs /dev/sdc1 -J size=1048576
mke2fs 1.42.7 (21-Jan-2013)

The requested journal size is 268435456 blocks; it must be
between 1024 and 10240000 blocks. Aborting.

Signed-off-by: Ashish Sangwan <a.sangwan@samsung.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
dc9cc7006a61d0ef82ee4e1dee133998c6040765 16-Jun-2013 Andreas Dilger <adilger@dilger.ca> mke2fs: don't set root dir UID/GID automatically

Don't change the root directory's UID/GID automatically just because
mke2fs was run as a non-root user. This can be confusing for users,
and is not flexible for non-root installation tools that need to
create a filesystem with different ownership from the current user.

Add the "-E root_owner[=uid:gid]" option to mke2fs so that the user
and group can be explicitly specified for the root directory. If
the "=uid:gid" argument is not specified, the current UID and GID
are extracted from the running process, as was done in the past.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
626a2e7468d44ad61aae2c36533e8c90778f93d8 16-Jun-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: clarify mke2fs and mke2fs.conf man pages

Addresses-Debian-Bug: #712429
Addresses-Debian-Bug: #712430

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.conf.5.in
e7f983bfb27da3999ea91f9520ad1f438c3d59f2 16-Jun-2013 Theodore Ts'o <tytso@mit.edu> e2image: fix crash when using e2image -I with a 64-bit file system

Addresses-Debian-Bug: #703067

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
2a83b3c3741bdc9a1b2af73114c778f4b21a9ab1 16-Jun-2013 Andreas Dilger <adilger@dilger.ca> mke2fs: sort option parsing, deprecate "-R"

A minor cleanup to order the command-line option parsing in
alphabetical order, except for "-E" and "-R", which need to
be co-located.

Print a message that the "-R" option is deprecated. It has
been deprecated since 2005 (commit c6a44136b9b).

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
577c773a60fa7d167f5aaf717fadd20fe507fb97 20-May-2013 Theodore Ts'o <tytso@mit.edu> misc: fix gcc -Wall warnings

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
2image.c
ilefrag.c
ke2fs.c
une2fs.c
25399080c5b100fe7499334c30184592d68bc99d 13-May-2013 Theodore Ts'o <tytso@mit.edu> chattr: clarify that the compression flags are not supported by ext4

... or indeed by any mainline kernel, since the compression patches
were never stablized.

Addresses-Debian-Bug: #707609

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reported-by: "Creidieki M. Crouch" <creidieki@gmail.com>
hattr.1.in
fdaf34f8c05698cdefb2db9825b2a957b486f380 22-Apr-2013 Tomas Racek <tracek@redhat.com> e2image: require that -a option is used only with raw or QCOW2 image

All data cannot be included in normal image file so e2image should exit
in this case.

Signed-off-by: Tomas Racek <tracek@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
2image.c
ef21356fc094cca88d4fadcbb1cf0a6a53e9035d 22-Apr-2013 Tomas Racek <tracek@redhat.com> e2image: man: fix typo

Signed-off-by: Tomas Racek <tracek@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.8.in
d55e68a660bb9c73b88eb64bd94c81498678906a 22-Apr-2013 Tomas Racek <tracek@redhat.com> e2image: remove useless exit call

Exit is called right after the install_image anyway so this one can
be removed.

Signed-off-by: Tomas Racek <tracek@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.c
fab0d286ec8539988551271c5faa864ea38dc4d4 22-Apr-2013 Akira Fujita <a-fujita@rs.jp.nec.com> tune2fs: disallow tune2fs to set inode size larger than block size

Disallow tune2fs command to set the inode size to be larger than the
block size. Without this patch, tune2fs makes the file system to be
unmountable.

Steps to reproduce:

1.Create ext4 without flex_bg (or just create ext3)
# mke2fs -t ext4 -O ^flex_bg DEV

2.Set inode size larger than block size
# tune2fs -I 8192 DEV

3. We failed to mount FS
# mount DEV MP
mount: wrong fs type, bad option, bad superblock on /dev/sda7,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

Signed-off-by: Akira Fujita <a-fujita@rs.jp.nec.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
447da244eb31f11516d991891f985a2770080033 01-Apr-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: don't display bigalloc/quota fs feature warnings in quiet mode

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
bb21ddf59611cc883eeb3c3d149eae35eae9ae30 23-Feb-2013 Theodore Ts'o <tytso@mit.edu> chattr: allow clearing the extent flag

In order to support kernels which support conversion of extent-mapped
files to direct/indirect mapped files, remove the sanity check which
prevented clearing the extent flag in chattr. Kernels which don't
support this will simply give an Operation Not Supported error.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hattr.c
a713a7fe5a929c0e1307e6bded8ac66805c7e748 22-Jan-2013 Theodore Ts'o <tytso@mit.edu> mke2fs, tune2fs, resize2fs: add warning messages for bigalloc and quota

The bigalloc and quota features have some known issues, so issue
warnings in case users try to use them.

More information can be found here:
https://ext4.wiki.kernel.org/index.php/Bigalloc
https://ext4.wiki.kernel.org/index.php/Quota

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
3bbb613ccb96e1ab3b33a0f1d1b1308f20da98a5 16-Jan-2013 Theodore Ts'o <tytso@mit.edu> Update misc/Makefile.in using "make depend"

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
0e51f5ae16a386c66f5643119fa549b4a58d4ac3 15-Jan-2013 Phillip Susi <psusi@ubuntu.com> e2image: add -a switch to include all data

Normally the raw and QCOW2 images only contain fs metadata.
Add a new switch ( -a ) to include all data. This makes it
possible to use e2image to clone a whole filesystem.

Signed-off-by: Phillip Susi <psusi@ubuntu.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
2image.c
0f680ee8f2b6de9e4d07e1b1964899ef87c76f15 13-Jan-2013 Zheng Liu <wenqing.lz@taobao.com> mke2fs: document bigalloc and cluster-size

Bigalloc feature has been used for a long time, but the documentation
in mke2fs is still missing. So add it.

Addresses-Debian-Bug: #669730

Signed-off-by: Zheng Liu <wenqing.lz@taobao.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
86a985e74987b08090ecbacf3d02c8d80594c809 15-Jan-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: teach mke2fs to understand -b 4k and -C 256M

The -b and -C options now use parse_num_blocks2() instead of strtol,
so that users can specify -C 256M instead of the much less convenient
-C 268435456.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reviewed-by: Zheng Liu <wenqing.lz@taobao.com>
ke2fs.c
2a3b1c6ea29db5d5dfe4602d0b0adfda88068de6 14-Jan-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: the -g option will now specify the clusters per block group

If bigalloc is enabled, then -g will specify the clusters per block
group. (If bigalloc is not enabled, then a cluster == a block, so the
meaning of -g is not changed.)

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reviewed-by: Zheng Liu <wenqing.lz@taobao.com>
ke2fs.c
4b20ea2691b3408340036d16e62867d5c52078e3 14-Jan-2013 Theodore Ts'o <tytso@mit.edu> mke2fs: enforce that the cluster size must be greater that the block size

In addition, do not allow a cluster size of 1024, since that will be
interpreted by ext2fs_initialize() as requesting the default cluster
size.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reviewed-by: Zheng Liu <wenqing.lz@taobao.com>
Reported-by: Zheng Liu <wenqing.lz@taobao.com>
ke2fs.c
9cf69bb825c2995352502f48ea64d1be1d263995 13-Jan-2013 Zheng Liu <wenqing.lz@taobao.com> mke2fs: require the bigalloc feature explicity if the cluster size is set

When cluster-size is specified without the bigalloc feature, mke2fs
will ignore this argument silently. But user might think bigalloc
feature has been enabled unless they use the dumpe2fs command. So now
we ask user to set bigalloc feature explicity when cluster-size is
enabled. This can make sure that users understand what they are doing
because bigalloc might impact the performance for some workloads.

Signed-off-by: Zheng Liu <wenqing.lz@taobao.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
f45011df2bea466209a4b2701f2770b24518bbac 06-Jan-2013 Zheng Liu <wenqing.lz@taobao.com> mke2fs: check extents feature when bigalloc feature is enabled

When bigalloc feature is enabled in mkfs, extents feature also needs
to be enabled. But now when bigalloc feature is enabled without
extents feature, users will not get any warning messages until they
try to mount this file system.

Signed-off-by: Zheng Liu <wenqing.lz@taobao.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
e3507739e4185bdb2394928eb6479e48f4e690a8 01-Jan-2013 Theodore Ts'o <tytso@mit.edu> Fix gcc -Wall nits

This fixes the last set of gcc -Wall complaints.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2initrd_helper.c
ilefrag.c
une2fs.c
2508eaa71e8bbe93155052ded448e5e78d213715 22-Nov-2012 Andreas Dilger <adilger@whamcloud.com> filefrag: improvements to filefrag FIEMAP handling

Update the filefrag program to allow displaying the extents in
some different formats. Try and stay within 80 columns.
* add -k option to print extents in kB-sized units (like df -k)
* add -b {blocksize} to print extents in blocksize units
* add -e option to print extent format, even when FIBMAP is used
* add -X option to print extents in hexadecimal format

Internally, the FIBMAP handling code has been moved into its own
function like FIEMAP, so that the code is more modular. Extent
offsets are now handled in bytes instead of in blocks, to allow
printing extents with arbitrary block sizes. The extent header
printing also moved into its own function so that it can be shared
between the FIEMAP and FIBMAP handling routines, since it got more
complex with the different output options.

Only print error about FIBMAP being root-only a single time.
Print the filesystem type if it changes between specified files.
Add fsync() for FIBMAP if "-s" is given.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.8.in
ilefrag.c
00eb0eee0addfd3b7ede98b85e00dff1547838a0 29-Nov-2012 Andreas Dilger <adilger@dilger.ca> build: quiet some "gcc -Wall" compiler warnings

Quiet a number of simple compiler warnings:
- pointers not initialized by ext2fs_get_mem()
- return without value in non-void function
- dereferencing type-punned pointers
- unused variables

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
1d6fd6d0c3766a8165e69284c75812574a29c804 29-Nov-2012 Andreas Dilger <adilger@dilger.ca> misc: cleanup unused variables on MacOS

Clean up unused variables found by GCC on MacOS.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.c
smounted.c
ke2fs.c
49cdefd3312c5ac81ec5d233d62441281ad26e55 29-Dec-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: fix crash when parsing "-E resize=NNN" with "-O 64bit"

If the 64-bit file system feature is enabled, then mke2fs would crash
due to a divide-by-zero error caused by s_desc_size not being
initialized yet.

Reported-by: George Spelvin <linux@horizon.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
0f8186598ccb0c5e8666b6efe7178c69e73d81b6 29-Nov-2012 Theodore Ts'o <tytso@mit.edu> tune2fs: fix a compile-time bug if quota is not enabled

Commit 44a2cca35e introduced a compile-time failure if --enable-quota
is not passed to the configure script.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
44a2cca35e9292c39bcad38288fdf7a78d6f56af 27-Nov-2012 Eric Sandeen <sandeen@redhat.com> tune2fs: respect quota config option

If we haven't turned --enable-quota on at config time,
I don't think tune2fs should know about the feature either.

Today we can actually tune2fs -O quota even if not
configured on, and then the rest of the tools will
refuse to touch it:

# tune2fs -O quota /dev/sda1
# tune2fs -O ^quota /dev/whatever complains
tune2fs 1.42.3 (14-May-2012)
tune2fs: Filesystem has unsupported read-only feature(s) while trying to open /dev/sda1
# fsck /dev/sda1
fsck from util-linux 2.21.2
e2fsck 1.42.3 (14-May-2012)
/dev/sda1 has unsupported feature(s): quota
e2fsck: Get a newer version of e2fsck!

Ok, so turn it off?
# tune2fs -O ^quota /dev/whatever complains
tune2fs 1.42.3 (14-May-2012)
tune2fs: Filesystem has unsupported read-only feature(s) while trying to open /dev/sda1

Nope. Debugfs? Nope.

# debugfs -w /dev/sda1
debugfs 1.42.3 (14-May-2012)
/dev/sda1: Filesystem has unsupported read-only feature(s) while opening filesystem

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reported-by: Bert DeKnuydt <Bert.Deknuydt@esat.kuleuven.be>
Addresses-Red-Hat-Bugzilla: #880596
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
51fb43dd271b1413d8203d95fe40be05caef8dd1 06-Oct-2012 Theodore Ts'o <tytso@mit.edu> Fix makefiles to compile e2freefrag with profiling

Also fix a bug caused by a stray continuation backslash which caused
the e2fsck/Makefile to fail when profiling is enabled.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
akefile.in
ea2d3788621cec5ed067280c7d228ec8897d2208 05-Oct-2012 Theodore Ts'o <tytso@mit.edu> e2freefrag: use 64-bit rbtree bitmaps

Enable the use of 64-bit bitmaps, so e2freefrag will work on file
systems with the 64-bit feature enabled. In addition, enable the
rbtree-based bitmaps, which significantly saves the amount of memory
required (from 97 megs to 1.7 megs for an empty 3T file system) at the
cost of additional CPU overhead (but we will claw back some of the
additional CPU overhead in the next commit).

Addresses-Google-Bug: 7269948

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
c498cb11d3e72e41af760bd882675f44db8b77e7 23-Sep-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: fix progress suppression to make regression tests reliable

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
b2f5ce5516a0b6d261876884139043c8e6579f0a 21-Sep-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: throttle allocating groups progress as well

Throttle updates for the "Allocating Groups" progress updates to once
a second as well. We now do this throttling in libext2fs, so we don't
have to do this for each of mke2fs's progress updates, and because the
updates from ext2fs_allocate_tables() come from within libext2fs
anyway.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
802f46783cc272d21bb2a1652f26371dca3a1085 21-Sep-2012 Theodore Ts'o <tytso@mit.edu> mke2fs.8: use extents vs extent in the man page

We print "extents" for the feature, so we should document "extents" in
the mke2fs's man page, even though we accept both "extent" and
"extents".

Addresses-Sourceforge-Bug: #3559210

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
a3e87bcc32a21b1420a15385e0183d58dcaf19b1 17-Sep-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: disable progress reporting in mke2fs.conf for regression tests

Add a configuration knob so the regression tests can disable progress
reporting. This fixes a potential lack of predictability since the
progress reports are now time based (once a second) which is
problematic for regression tests which are comparing the expected
output of mke2fs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
03237de00aa4fc0ac5910524c00aaef3db369e0d 14-Sep-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: throttle progress updates to once a second

With lazy itable initialization, the progress updates for writing the
inode table happens so quickly that on a serial console, the time to
write the progress updates can be the bottleneck. Fix this by only
updating the progress indicator once a second.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
032eafee3007001d07ee1798db6166a0031a3601 28-Jul-2012 Eric Sandeen <sandeen@redhat.com> e4defrag: handle device symlinks

Device nodes are commonly accessed via symlinks, i.e.

lrwxrwxrwx. 1 root root 7 Jul 19 13:01 /dev/mapper/testvg-testlv -> ../dm-0

Today, e4defrag on such a device will fail:

File is not regular file
"/dev/mapper/testvg-testlv"

due to it being a link, and e4defrag on the link target does as well:

Filesystem is not mounted

due to the target not being found in /etc/mtab.

Fix this by checking whether the symlink target is a block device
and if so, using that device in main(), and also changing get_mount_point()
to search for a matching device number, not device name.

Addresses-Red-Hat-Bugzilla: #707209

Reported-by: Peter Hjalmarsson <xake@rymdraket.net>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
339e457939bf1663ac2dbd52e47cd6e145726771 28-Jul-2012 Eric Sandeen <sandeen@redhat.com> filefrag: fix segfault on virtual fs

filefrag on a virtual fs like proc segfaults:

Floating point exception

because stat.f_blocks is 0, so the calculation of cylgroups is 0,
which leads to a divide by 0 when calculating expected extents.

Since it's only used for ext2 filesystems anyway, just move
the calculation of expected under "if (is_ext2)" to fix this.

Reported-by: Max Beikirch <maxnet@onlinehome.de>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
b34056fea0e767a882256097c688bca9c377fe56 28-Jul-2012 Liu Bo <liubo2009@cn.fujitsu.com> chattr: update chattr's man page chattr for No_COW

Signed-off-by: Liu Bo <liubo2009@cn.fujitsu.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
hattr.1.in
036fda6d487737eac9be086d999b7480a81d37ea 28-Jul-2012 Liu Bo <liubo2009@cn.fujitsu.com> filefrag: fix report of number of extents

filefrag has several bugs:

1.
$ touch f1
$ filefrag f1
f1: 1 extent found ----> bug!
$ filefrag -v f1
Filesystem type is: ef53
File size of f1 is 0 (0 blocks, blocksize 4096)
f1: 0 extents found

2.
$ truncate -s 1m f2
$ filefrag f2
f2: 1 extent found ----> bug!
$ filefrag -v f2
Filesystem type is: ef53
File size of f2 is 1048576 (256 blocks, blocksize 4096)
f2: 0 extents found

3.
$ for i in `seq 11 -2 0`; do dd if=/dev/zero of=f4 bs=4k count=1 seek=$i conv=notrunc oflag=sync &>/dev/null; done
$ ll f4
-rw-r--r-- 1 root root 49152 Jun 9 15:09 f4
$ filefrag f4
f4: 7 extents found
$ filefrag -v f4
Filesystem type is: ef53
File size of f4 is 49152 (12 blocks, blocksize 4096)
ext logical physical expected length flags
0 1 1109993 1
1 3 1109992 1109994 1
2 5 1109991 1109993 1
3 7 1109990 1109992 1
4 9 1109989 1109991 1
5 11 1108207 1109990 1 eof
f4: 7 extents found -----------------------> but we only have 6 extents, bug!

All of these bugs come from the fact that we've made a mistake on
calculating total extents:

o we set 1 as default for 'total extents', and this will report 1
extent found even when we don't get any extent from fiemap.
o if our first extent does not start from 0(logical addr), total
extents will be one more than what it should be.

Addresses-Red-Hat-Bugzilla: #840848

Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Liu Bo <liubo2009@cn.fujitsu.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
53462aad719011c969e21fb039acd595ba027b9e 24-Jul-2012 Theodore Ts'o <tytso@mit.edu> logsave: fix fd leak which could cause logsave to hang

The logsave program is leaking a file descriptor when it forks and
execs the program which forks a process which hangs around. In the
case of /etc/init.d/checkroot, this would be fsck. This file
descriptor never gets closed, so it's still present when fsck runs
e2fsck, and then if e2fsck has its own logging enabled using (in
/etc/e2fsck.conf):

[options]
log_dir = /mnt
log_filename = e2fsck-%N.%h.INFO.%D-%T
log_dir_wait = true

then e2fsck will fork off a process waiting for /mnt to get remounted
read/write. This causes logsave to never get an EOF from its pipe, so
it hangs waiting for the read to fail --- which won't happen due to
the file descriptor leak which is still being held open by e2fsck's
forked child process. And so /etc/init.d/checkroot hangs, and the
root file system never gets remounted read/write, and we deadlock.

Fix the problem by closing the pipe fd so the logsave program doesn't
end up leaking it to its descendent processes.

Addresses-Debian-Bug: #682592

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ogsave.c
89dd15db9fbcf289afca24751fb463245c5c6aee 14-Jul-2012 Aditya Kali <adityakali@google.com> tune2fs: fix quota feature removal

When the last quota inode is removed, the 'quota' feature
flag was not removed from superblock in some cases.
Ex:
$ mke2fs -t ext4 -O quota <dev> # creates both usr & grp
# quota inodes
$ tune2fs -Q ^usrquota <dev> # removes usr quota inode
$ tune2fs -Q ^grpquota <dev> # removes grp quota inode,
# but the 'quota' feature flag
# was not removed from superblock
This patch removes the 'quota' feature flag from superblock
if none of the quota inodes are set.

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
5027751530980c61e313d265b1367fee90589cf4 14-Jul-2012 Aditya Kali <adityakali@google.com> tune2fs/quota: always create hidden quota files

Currently 'tune2fs -O quota <dev>' will try to use existing
quota files and write their inode numbers in the superblock.
Next e2fsck run then converts these into hidden quota inodes
(ino #3 & #4). But this approach has problems:
1) Before e2fsck run, the inodes are visible to the user and
might get corrupted or removed or replaced by the user.
2) Since these are user visible, we have to include
their block usage in the quota accounting. But once
these inodes are hidden, e2fsck will have to decrement
their usage from the quota accounting (which e2fsck
currently doesn't do and instead reports error).
(the following used to give e2fsck error previously:
# assume <dev> has aquota.user & aquota.group files
$ tune2fs -O quota <dev> # stores ino# of quota files in
# ext4 superblock
$ e2fsck -f <dev> # hides quota files, but now quota
# usage is incorrect.
<< quota errors >>
Instead of making e2fsck complicated, this patch creates the
hidden quota inodes at 'tune2fs -O quota' time iteself. The
usage is computed freshly and limits are copied from the
aquota.user and aquota.group files as earlier.

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
585545e1ee6288e2eafb02937b640301be4a1368 15-Jul-2012 Theodore Ts'o <tytso@mit.edu> Fix spelling typo's in man pages for tune2fs and mke2fs

Addresses-Debian-Bug: #680114

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
2d2abcc64604c831c2db1da03fe701baefa1cb68 06-Jul-2012 Andreas Dilger <adilger@whamcloud.com> e2fsck: rename "bool" variables

Since "bool" is a valid C type, declarations of the form "int bool"
will cause compiler errors if <stdbool.h> is included. Rename these
variables to avoid this name clash.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.c
fd7042bf00819732c2f1d575ecd39fe9c58a62ae 13-Jun-2012 Liu Bo <liubo2009@cn.fujitsu.com> chattr: add the -C option to the usage message

Signed-off-by: Liu Bo <liubo2009@cn.fujitsu.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
hattr.c
c1986ecb6fc68427db7579d409929939117e45ff 13-Jun-2012 Theodore Ts'o <tytso@mit.edu> Fix blhc (Build Log Hardening Check) warnings

The Build Log Hardening Check is a debian tool which scans the output
of a package build making sure that the security hardening flags are
used when compiling and linking all of binaries in a package.

For the most part we were passing CFLAGS, CPPFLAGS, and LDFLAGS down
to the compiler and link commands, but there there were one or two
exceptions. In addition, there where a few places in "make install"
where the V=1 option was not being honored, which triggered blhc
warnings since it couldn't analyze those commands.

The e2fsck.static was the only binary that was not getting built and
packaged with the hardening flags, but I've fixed all of the blhc
warnings so in the future it will be obvious if we regress.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
0796e660859724f304155e094b6cf5739a610ae4 12-Jun-2012 Theodore Ts'o <tytso@mit.edu> lsattr, chattr: add support for btrfs's No_COW flag

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hattr.1.in
hattr.c
2ae58b6d5c73e044f3d498feea5d81892af2671f 04-Jun-2012 Jan Kara <jack@suse.cz> libquota: remove unnecessary definitions

Quite some definitions in quota library are not necessary. Remove them.
Also fold quota.h file into quotaio.h since it didn't contain that many
definitions.

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
9906409e138e625a6190d3d531ad56af90d28f73 01-Jun-2012 Theodore Ts'o <tytso@mit.edu> dumpe2fs: print journal's s_errno field if it is non-zero

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
4780e8707ed9882af78a9436b61678c64208ebe2 28-May-2012 Theodore Ts'o <tytso@mit.edu> Remove unnecessary escape before tab in man pages

Also fixed a number of other minor nits in the resize2fs and e2image
man pages.

Addresses-Debian-Bug: #674453, #674694

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.8.in
ce10c313e618826544779ec26432a6ffb0cbb684 14-May-2012 Theodore Ts'o <tytso@mit.edu> dumpe2fs: fix 64-bit block numbers on 32-bit systems

Fix bug which caused 64-bit block numbers to be incorrectly printed on
systems with 32-bit longs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
a99145e6ef314c9d863b2a90c7adb44c6ccf89c8 24-Apr-2012 Aditya Kali <adityakali@google.com> tune2fs: fix man page indentation

The indentation in tune2fs man page was wrong towards the
end. Also, there was extra '[' in the SYNOPSIS section.

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.8.in
b24efa218794b567c27ad99db319b4bd5d696958 06-Apr-2012 Theodore Ts'o <tytso@mit.edu> Don't assume that the presence of mntent.h means that setmntent() exists

Change autoconf to test for setmntent() and use that to decide whether
to use getmntent() and setmntent(), since some systems don't have
setmntent() but they do have the mntent.h header file.

Also, remove the includes of mntent.h from e2fsck and mke2fs and other
places where it is not needed.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
smounted.c
ke2fs.c
d47e2af76351090588ee2be3d85a2c31eb383223 06-Apr-2012 Theodore Ts'o <tytso@mit.edu> fsck: don't include sys/signal.h for portability reasons

It isn't necessary to include sys/signal.h, and it's not available on
all systems.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
304e11c2c1878ef392095d10bf5e93f7ea7131e4 05-Apr-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: don't fail creating the journal if /etc/mtab is missing

The ext2fs_add_journal_inode() function calls
ext2fs_check_mount_point(), which can fail if /etc/mtab is missing.
This causes mke2fs to fail in the middle of the file system format
process; mke2fs calls ext2fs_check_mount_point() already (and has
appropriate fallbacks that calls fails), so add a flag so that mke2fs
can request ext2fs_add_journal_inode() to skip trying to call
e2fsck_check_mount_point().

Addresses-Sourceforge-Bug: #3509398

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
e64e6761aa22f31123a91206a5686526f7b9c6c0 05-Apr-2012 Theodore Ts'o <tytso@mit.edu> Fix gcc -Wall nitpicks

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
une2fs.c
608858ff79effbeeefd48559cccdbeb787da1493 27-Mar-2012 Theodore Ts'o <tytso@mit.edu> mke2fs.conf: allow use of a custom mke2fs.conf file

Rename mke2fs.conf to mke2fs.conf.in, so that the makefile can choose
to use either mke2fs.conf.in or mke2fs.conf.custom.in (if it is
present). If there is custom configuration file, it's likely that it
is very different from the upstream mke2fs.conf.in, so by having the
separate mke2fs.conf.custom.in file, it minimizes merge conflicts if
the upstream mke2fs.conf file changes.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
ke2fs.conf
ke2fs.conf.in
b75a4ce18c4c165ef166968fa7001ebf7c76e024 26-Mar-2012 David Prévot <taffit@debian.org> Fix typo and missing .TP in the tune2fs and mke2fs.conf man pages

Addresses-Debian-Bug: #665427

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.conf.5.in
une2fs.8.in
37c8db7b2078d0310e5676404e21cc143d8e4d56 22-Mar-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: add option to use direct I/O (mke2fs -D)

This can be useful when using mke2fs on loaded servers, since
otherwise mke2fs can dirty a huge amount of memory very quickly,
leading to other applications not being happy at all.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
24dea55494ea753dbc8e4d965345cd2a7144d4fd 15-Mar-2012 Theodore Ts'o <tytso@mit.edu> Use rbtree bitmaps for dumpe2fs, debugfs, and tune2fs

For large file systems, using the rbtree bitmap can save a lot of
memory.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
une2fs.c
87141781aabb4dc01359428d2feecdc7f43eeac0 15-Mar-2012 Theodore Ts'o <tytso@mit.edu> dumpe2fs: print the expected block group checksum if it is incorrect

This helps to diagnose problems caused by incorrect block group
checksums.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
6c9ce8a9b060ff81b537560a9880c569e60ca512 27-Feb-2012 Phillip Susi <psusi@ubuntu.com> e2image: skip uninitialized bitmaps and inode tables

When the block bitmap is uninitialized, skip copying it.
When the inode bitmap is uninitialized, skip copying it,
as well as the inode table. When there are unused inodes
towards the end of the table, skip those blocks too.

Signed-off-by: Phillip Susi <psusi@ubuntu.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.c
30ac1ce7df719e40b0c3c612696ada7c9ebbaed2 27-Feb-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: make sure bg 0's unused inode count field is zero'ed for mke2fs -S

There was a bug/typo in commit ba9e0afc5 which caused the first block
group (bg #0) to not have its unused inode count field to get set to
zero in the case of mke2fs -S. This caused inodes in the first block
group to not be recoverable via mke2fs -S. Oops.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
4a4a44d7b14be190aa58ddc9ec6f7073680857e8 17-Feb-2012 Theodore Ts'o <tytso@mit.edu> badblocks: honor the -s option when in read-only -t mode

Addresses-Debian-Bug: #646629

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
50a676e944356e188917f5174a7478817024213c 17-Feb-2012 Theodore Ts'o <tytso@mit.edu> e2image: attempt to use ftruncate64 to set i_size for raw images

If ftruncate64() exists, try to use it to set i_size. This isn't
guaranteed to work, per SuSv3, but if it doesn't work, it's guaranteed
to return an error. So for file systems and/or operating systems that
don't support extending i_size via ftruncate64(), fall back to writing
the trailing null.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
2b7a30cc52fd27a1cf479d8682880d11ffd9850f 17-Feb-2012 Theodore Ts'o <tytso@mit.edu> e2image: fix logic bug which could cause a raw image not to be extended

If the size of the last "hole" in the raw file was an exact multiple
of a megabyte, then we wouldn't write a null at the end of the file in
order to extend the size of the raw image to correspond with the file
system size. Thanks to Lukas Czerner for suggesting the fix, and
Phillip Susi for pointing out the problem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
ba9e0afc5ab0d0ff26880e37ac71c281b644ce00 17-Feb-2012 Theodore Ts'o <tytso@mit.edu> mke2fs: allow file systems w/ uninit_bg to be recovered with mke2fs -S

The command mke2fs -S is used as a last ditch recovery command to
write new superblock and block group descriptors, but _not_ to destroy
the inode table in hopes of recovering from a badly corrupted file
system. If the uninit_bg feature is enabled, we need to make sure to
clear the unused inodes count field in the block group descriptors or
else e2fsck -fy will leave the file system completely empty.

Thanks to Akira Fujita for reporting this problem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
237b7b23fe69a83a9bb1d98d014d26f146ac26a3 15-Feb-2012 Eric Sandeen <sandeen@redhat.com> mke2fs: recognize mke4fs program name

We shipped "mke4fs" alongside mke2fs in RHEL5, so that ext4-capable
utilities could be installed without disturbing the venerable e2fsprogs-1.39
shipped in RHEL5 from the beginning. But it surprised some users that
"mke4fs" created ext2 filesystems by default rather than ext4.
While it was my intent to have the renamed binaries behave exactly
like the stock ones, it seems that there is some precedence for
handling "mkeNfs" in the code, so seems reasonable to add
mke4fs -> ext4 as well.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
8dbcbe1c4a4bdd30c6e9aa1a3df9b06f4f3cbee1 23-Jan-2012 Yongqiang Yang <xiaoqiangnk@gmail.com> mke2fs: correct help text for option -G of mke2fs

The option '-G' is used to pass number of groups in a flex_bg, the
previous help text - 'meta-group-size' - could confuse users with
meta_bg.

Signed-off-by: Yongqiang Yang <xiaoqiangnk@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
65794cf159aa051ea3fe79db1950f562600b252e 10-Jan-2012 Mike Frysinger <vapier@gentoo.org> mke2fs: fix -T/-t usage output

There is a slight desync between the mke2fs(8) man page and the mke2fs
help output when it comes to the -t/-T options. Since the man page is
correct, update the mke2fs usage string to match.

Reported-by: Ben Kohler <bkohler@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
19ef479acf566343b277be3554beda7e1f400381 18-Nov-2011 Eric Sandeen <sandeen@redhat.com> e2undo: cast dptr to blk64_t to retrieve block number

A 32-bit s390 build was failing on a 64-bit s390x host, when
make check failed e2undo tests, like this:

md5sum before mke2fs 922c8a591c882dbdd1a381d18547cfd5
using mke2fs to test e2undo
Overwriting existing filesystem; this can be undone using the command:
e2undo /tmp/mke2fs-tmp.EM9XjmTA81.e2undo /tmp/tmp.EM9XjmTA81

md5sum after mke2fs cbf32fb6c3db45280ad013f42ac294f1
Replayed transaction of size 32768 at location 0
Replayed transaction of size 32768 at location 0
Replayed transaction of size 32768 at location 0
Replayed transaction of size 32768 at location 0
Replayed transaction of size 0 at location 0
md5sum after e2undo 31b4e14307c5b7ccce5b8d300c2ad5f1

Note the "at location 0" for the block number.

A proper cast in e2undo.c fixes this up.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2undo.c
3cebf9c1029ca983ebbbae79f7905a02d087ff98 17-Nov-2011 Theodore Ts'o <tytso@mit.edu> debugfs: fix gcc -Wall complaints

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
5e96c5721d58acfbf9d76b62214f6ae421fe4e6b 15-Nov-2011 Theodore Ts'o <tytso@mit.edu> debugfs: add the freefrag command

The freefrag command provides the functionality of e2freefrag on the
currently open file system in debugfs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
cdfaa75901a66d02fa23f100e0346934371c3753 14-Nov-2011 Niu <niu@whamcloud.com> tune2fs: preserve old limits when turn on quota feature

When turn on quota by tune2fs, if the old quota file exist, the quota
usage should be recomputed but the old limits should be preserved.

Signed-off-by: Niu Yawei <niu@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
d678fef0d78fb3c5546cd9398698ddc0106618f6 14-Nov-2011 Aditya Kali <adityakali@google.com> mke2fs: Add extended option to select quota type

mke2fs was creating both user and group quota inodes on enabling
the quota feature. This patch adds the extended option 'quotatype'
that can be used to exclusively specify the quota type that the
user wants to initialize.

# Ex: Default behavior without extended option creates both
# user and group quota inodes:
$ mke2fs -t ext4 -O quota /dev/ram1

# To enable only user quotas:
$ mke2fs -t ext4 -O quota -E quotatype=usr /dev/ram1
# To enable only group quotas:
$ mke2fs -t ext4 -O quota -E quotatype=grp /dev/ram1

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
d7c6f4e6d067a3547379acb0d7ef9e95038bef28 14-Nov-2011 Aditya Kali <adityakali@google.com> tune2fs: Compute quota usage when turning on the 'quota' feature

When turning on the quota feature, tune2fs would create empty quota inodes and
set their inode numbers in superblock. This required e2fsck to be ran before
using the quota feature. This patch adds adds call to compute_quota() and make
sure that we write correct quota information in the quota files at tune2fs time
itself. This gets rid of the necessity for running e2fsck after setting the
quota feature. Also, tune2fs now does not use existing old quota files
(aquota.user and aquota.group) even if they exist.

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
a86d55da8bf41335aa2fc5ec16ca63859d918e81 14-Nov-2011 Aditya Kali <adityakali@google.com> libquota: cleanup libquota code

This patch cleans up the quota code as suggested in previous reviews. This
includes
* remove BUG_ON()s and 'exit()' calls from library code
* remove calls to malloc/free and instead use ext2fs_get/free_mem functions.
* lib/quota/common.c file in not needed anymore and is removed.
* rename exported functions to start with quota_
(ex: init_quota_context --> quota_init_context)
* better error handling in quota library

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
une2fs.c
7becb2065ffd5c4b403546d577c2421b4a840c3c 14-Nov-2011 Theodore Ts'o <tytso@mit.edu> Make quota support disabled by support

Quota support can be enabled using --enable-quota. There are still
some buglets that we need to fix up before it can be considered 100%
supported, so let's disable it for the 1.42 release.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
554bc091b7e8a24acc737ab68bc00d2e04354653 12-Nov-2011 Robin Dong <sanbai@taobao.com> e2freefrag: fix "Illegal block number" errors with bigalloc file systems

After:
# mke2fs -O ^has_journal,^resize_inode,^uninit_bg,extent,meta_bg,flex_bg,bigalloc /dev/sda
# e2freefrag /dev/sda

It will report error message like:

Illegal block number passed to ext2fs_test_block_bitmap #1732133 for block bitmap for /dev/sda
Illegal block number passed to ext2fs_test_block_bitmap #1732134 for block bitmap for /dev/sda
Illegal block number passed to ext2fs_test_block_bitmap #1732135 for block bitmap for /dev/sda

One bit in bitmap of bigalloc-ext4 means a cluster not a block,
therefore ext2fs_fast_test_block_bitmap2 should check cluster.

Signed-off-by: Robin Dong <sanbai@taobao.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2freefrag.c
0c80c44bd08c60f3cd0ad87f12a71a75cac3bcaa 17-Oct-2011 Theodore Ts'o <tytso@mit.edu> libext2fs: ext2fs_[set_]file_acl_block needs to check for 64-bit feature flag

The ext2fs_file_acl_block() and ext2fs_set_file_acl_block() needs to
only check i_file_acl_high if the 64-bit flag is set. This is needed
because otherwise we will run into problems on Hurd systems which
actually use that field for h_i_mode_high.

This involves an ABI change since we need to pass ext2_filsys to these
functions. Fortunately these functions were first included in the
1.42-WIP series, so it's OK for us to change them now. (This is why
we have 1.42-WIP releases. :-)

Addresses-Sourceforge-Bug: #3379227

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
une2fs.c
605cf6edaf6fce6a3810cda24c6ceca90af1a096 10-Oct-2011 Theodore Ts'o <tytso@mit.edu> filefrag: fix infinite loop in filefrag

Commit a00be17e4768 was missing a patch hunk needed to prevent
filefrag from looping forever when it is run without the -v option.

Addresses-Debian-Bug: #644792

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
3fcd8fe8acb269598390b35bbf6e4247d10bc64e 09-Oct-2011 Theodore Ts'o <tytso@mit.edu> Fix more spelling errors found by translators and add pluralization

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
ls-enable.h
une2fs.c
uidd.c
d1c9b6ea5e3b473341650757726def797c616a84 08-Oct-2011 Theodore Ts'o <tytso@mit.edu> dumpe2fs.8.in: add man page warning about mounted file systems

This should be obvious, but apparently not to all users...

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.8.in
84888e55438c7aa70d5866c203c06aea7576542e 08-Oct-2011 Theodore Ts'o <tytso@mit.edu> Fix spelling errors pointed out by translators

Also remove the _("<foo>") marker from a string that was all numbers
and hence didn't need punctuation.

Thanks to Philipp Thomas and Goeran Uddeborg for reporting these
buglets.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
c4012e5a7ace2e1f382c4d46f56e5749758c9a1a 06-Oct-2011 Theodore Ts'o <tytso@mit.edu> libext2fs: make ext2fs_open_file() always use 3 arguments instead of varargs

Some architectures have narrow mode_t's which can cause some
portability warnings with varargs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
60e1c71d3c8b8bf731715d6119d46881e8389638 05-Oct-2011 Theodore Ts'o <tytso@mit.edu> uuidgen: don't use set_com_err_gettext()

The uuidgen program doesn't use libcom_err.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidgen.c
28e2cb9e72cce9e97a4a6f738d28b0f3f31efe69 05-Oct-2011 Eric Sandeen <sandeen@redhat.com> mke2fs: Fix up usage & error text for cluster size specification

Commit c6ed60cd removed "f" (fragment size) from the getopt string,
and re-used its spot in the getopt switch, but didn't update the
usage message or the error message during parsing.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
9d4507c5b61007df968638623aa1b4c47dae6cf9 05-Oct-2011 Theodore Ts'o <tytso@mit.edu> Pass the gettext() function to libcom_err

For those e2fsprogs programs which use libcom_err and are
internationalized, pass the gettext() function to libcom_err during
program initialization.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
hattr.c
umpe2fs.c
2image.c
2initrd_helper.c
2undo.c
indsuper.c
sattr.c
ke2fs.c
artinfo.c
une2fs.c
uidgen.c
36e4e21f511423450285568ceb26b3ddb233e286 04-Oct-2011 Theodore Ts'o <tytso@mit.edu> libquota: remove get_qf_name()

The get_qf_name() function used PATH_MAX, which is non-portable.
Worse, it blindly assumed that PATH_MAX was the size of the buffer
passed to it --- which in the one and only place where it was used in
libquota, was a buffer declared to a fixed size 256 bytes.

Fix this by simply getting rid of the function altogether.

Cc: Aditya Kali <adityakali@google.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
466137fb7eaf6d54aa8d174054ed17eaed52eac8 04-Oct-2011 Theodore Ts'o <tytso@mit.edu> Add "big" and "huge" types to mke2fs.conf

mke2fs attempts to use the "big" and "huge" types, and now that mke2fs
will complain if there are file system types which are undefined,
let's add definitions for them.

Thanks to Richard Jones for reporting this problem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs-hurd.conf
ke2fs.conf
9c58eaf7d3a47d83945bd3756271e7ae675b25e1 01-Oct-2011 Theodore Ts'o <tytso@mit.edu> filefrag: fix an off by one error in when printing the next expected block

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
a00be17e4768c5ce55f74be518f35f5d5d1b158b 01-Oct-2011 Theodore Ts'o <tytso@mit.edu> filefrag: Display the number of contiguous, not physical, extents

From a bug report filed by Ibragimov Rinat:

When filefrag uses FIEMAP ioctl its logic differs for ordinary and
verbose (-v) modes. ext4 returns extent on every 32768 block so on
large files it is possible that `filefrag large-file' tells about 4
extents while `filefrag -v large-file' finds only one.

Also when I tried to use generic_block_fiemap function to add
FIEMAP for reiserfs, every block was reported as a new extent
resulting in thousands "extents" for continuous files.

I think filefrag should merge adjacent extents even when -v is not
specified.

Addresses-Debian-Bug: #631498

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
27b422f57ba0435a53776537ba3a2f4339b350d0 01-Oct-2011 Theodore Ts'o <tytso@mit.edu> mke2fs.conf.5: clarify the man page regarding boolean relations

Explain more clearly how boolean relations in the mke2fs.conf file are
parsed, and which config parameters are in fact boolean relations.

Addresses-Debian-Bug: #634883

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.conf.5.in
b1c828e87590f613015185a19f8e2067a7220a05 29-Sep-2011 Theodore Ts'o <tytso@mit.edu> debian: add hurd-specific mke2fs.conf file

Addresses-Debian-Bug: #629355

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs-hurd.conf
14b283ae565930144ef5ace12483d602cc3e7539 29-Sep-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: set s_max_mnt_count to -1 by default

If the enable_periodic_fsck option is false in /etc/mke2fs.conf (which
is also the default), s_max_mnt_count needs to be set to -1, instead
of 0. Kernels newer than 3.0 will interpret 0 to disable periodic
checks, but older kernels will print a warning message on each mount,
which will annoy users.

Addresses-Debian-Bug: #632637

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
til.c
til.h
d9c60e04b3b18b13d7707f1876ac7bce89df10e9 24-Sep-2011 Andreas Dilger <adilger@whamcloud.com> e2fsck: regression tests for INCOMPAT_MMP feature

Add tests for the MMP feature - creating a filesystem with mke2fs
and MMP enabled, enable/disable MMP with tune2fs, disabling the
e2fsck MMP flag with tune2fs after a failed e2fsck, and e2fsck
checking and fixing a corrupt MMP block.

The MMP tests need to be run from a real disk, not tmpfs, because
tmpfs doesn't support O_DIRECT reads, which MMP uses to ensure
that reads from the MMP block are not filled from the page cache.
Using a local disk does not slow down the tests noticably, since
they wait to detect if the MMP block is being modified.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
0f5eba7501f467f757792ee449d16c9259b994fd 24-Sep-2011 Andreas Dilger <adilger@whamcloud.com> ext2fs: add multi-mount protection (INCOMPAT_MMP)

Multi-mount protection is feature that allows mke2fs, e2fsck, and
others to detect if the filesystem is mounted on a remote node (on
SAN disks) and avoid corrupting the filesystem. For e2fsprogs this
means that it checks the MMP block to see if the filesystem is in use,
and marks the filesystem busy while e2fsck is running on the system.

This is useful on SAN disks that are shared between high-availability
servers, or accessible by multiple nodes that aren't in HA pairs. MMP
isn't intended to serve as a primary HA exclusion mechanism, but as a
failsafe to protect against user, software, or hardware errors.

There is no requirement that e2fsck updates the MMP block at regular
intervals, but e2fsck does this occasionally to provide useful
information to the sysadmin in case of a detected conflict.

For the kernel (since Linux 3.0) MMP adds a "heartbeat" mechanism to
periodically write to disk (every few seconds by default) to notify
other nodes that the filesystem is still in use and unsafe to modify.

Originally-by: Kalpak Shah <kalpak@clusterfs.com>

Signed-off-by: Johann Lombardi <johann@whamcloud.com>
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
til.c
til.h
6747ac86b9b4eac864af768a2fa09b8a22e363a5 24-Sep-2011 Andreas Dilger <adilger@whamcloud.com> tune2fs: miscellaneous whitespace fixups

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
d90d6a71460d2e3fd57607f90f9abbd1e7d77e3b 24-Sep-2011 Andreas Dilger <adilger@whamcloud.com> tune2fs: kill external journal if device not found

Continue to remove the external journal device even if the device
cannot be found.

Add a test to verify that the journal device/UUID are actually removed
from the superblock. It isn't possible to use a real journal device
for testing without loopback devices and such (it must be a block device)
and this would invite complexity and failures in the regression test.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
6b56f3d92d08806ab415e8fd883480f7f9c148e8 24-Sep-2011 Andreas Dilger <adilger@whamcloud.com> misc: quiet minor compiler errors

Several compiler errors are quieted:
- zero-length gnu_printf format string
- unused variable
- uninitalized variable (though it isn't actually used for anything)
- fixed a bug in ext2fs_stat() if stat64() does not exist

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
d1154eb460efe588eaed3d439c1caaca149fa362 18-Sep-2011 Theodore Ts'o <tytso@mit.edu> Shorten compile commands run by the build system

The DEFS line in MCONFIG had gotten so long that it exceeded 4k, and
this was starting to cause some tools heartburn. It also made "make
V=1" almost useless, since trying to following the individual commands
run by make was lost in the noise of all of the defines.

So fix this by putting the configure-generated defines in lib/config.h
and the directory pathnames to lib/dirpaths.h.

In addition, clean up some vestigal defines in configure.in and in the
Makefiles to further shorten the cc command lines.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
adblocks.c
ase_device.c
lkid.c
hattr.c
umpe2fs.c
2freefrag.c
2image.c
2initrd_helper.c
2label.c
2undo.c
4defrag.c
ilefrag.c
indsuper.c
sck.c
smounted.c
ogsave.c
sattr.c
ke2fs.c
klost+found.c
artinfo.c
une2fs.c
til.c
uidd.c
uidgen.c
30295f16a95b873965d1650b24fb6f5b82bde675 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> mke2fs: free tdb_dir string if it came from the profile

if tdb_dir points to a string allocated from profile_get_string,
it should be freed again before we exit.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
25726554ca557e22b96684d8a7ecf36ec80572a5 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> e4defrag: Check error return of sysconf()

In theory sysconf() can fail, so check for an error return.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
fe65f1ecfc501b2470a20cfd9d07f4c9efa520d2 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> e2fsprogs: Don't try to close an fd which is negative

These reflect either file descriptors which aren't tested
for failure, or closures of fd's which may have failed.

In setup_tdb(), test for failure of mkstemp and return
without trying to open the file (again).

In reserve_stdio_fds, rather than closing the "extra"
fd == 3 due to the way the loop is written, just
don't go that far by using while (fd <= 2).

In logsave, it forks and retries forever if open fails,
but at least make coverity happy by explicitly not
trying to close a negative file descriptor.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ogsave.c
c3ecabe61d075efa1b3f451964f85f3157307f8d 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> tune2fs: handle inode and/or block bitmap read failures in resize_inode()

Handle these failures in resize_inode, and handle the propagated
error in the caller.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
7adf589249891884980389959884bdfedff1df1f 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> e2initrd_helper: Fix memory leak on error

Some error paths did not properly free "buf"

And the normal exit seemed to close e2_file twice (?)

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2initrd_helper.c
9f7c3afaef7af307ae9c0fa3648c2e5c61f468b8 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> mke2fs: Do not let -t or -T be specified more than once

In addition to not making sense, it causes a memory leak
when fs_type gets overwritten.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
1e003cc77d43ee01eeaae962ff6d264c9a74a363 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> filefrag: Fix uninitialized "expected" value

The "count" variable is only ever set if FIBMAP is used,
due to the -B switch, or a fiemap failure. However,
we use it unconditionally to calculate "expected" for
extN files, so we can end up printing garbage.

Initialize count to 0, and unless we go through the FIBMAP
path, expected will be 0 as well, and in that case do not
print the message.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
4ebbc0a310b8c2dc239a6b4a99e65331872dcf9a 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> freefrag: fix up getopt case statement

There is no need to print out a "bad option" message; getopt
does that for us, and in fact will change "c" to "?" so
it's not even useful.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2freefrag.c
6a1dfb3b62eda5e7eb671b9c879546addb616684 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> uuidd: Add missing break to option case statement

Specifying the "-n" option to uuidd would incorrectly
fall through to the "-p" case, and assign that number to
the pidfile_path.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
uidd.c
4d5cf8b166bb29f0e3280bbadca9d3a8b895acd1 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> mke2fs: remove impossible tests for null usage_types

parse_fs_type explicitly sets usage_types if it is null,
so there is no need to test for null later.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
80f4b3ae490cc86c9eb0d5bac535b48676166a08 16-Sep-2011 Eric Sandeen <sandeen@redhat.com> fsck: fix -C option parsing

The i++; statement is unreachable; fix same as commit
f1c2eaac535bd9172a35ce39b6d8f392321f274d in util-linux

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
sck.c
2418dfd7b934ee6bf3dc9a0aa4ffee8b37f4384f 16-Sep-2011 Theodore Ts'o <tytso@mit.edu> dumpe2fs: display "free blocks" as "free clusters" for bigalloc file systems

Change this for the equivalent function in debugfs as well.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
75405ffde6f87f88c7172bfb431ec085c542ec1a 16-Sep-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
d2bfdc7ff15ce7b6b40c087021528ce190ef43c3 16-Sep-2011 Lukas Czerner <lczerner@redhat.com> e2fsprogs: Use punch hole as "discard" on regular files

If e2fsprogs tools (mke2fs, e2fsck) is run on regular file instead of
on block device, we can use punch hole instead of regular discard
command which would not work on regular file anyway. This gives us
several advantages. First of all when e2fsck is run with '-E discard'
parameter it will punch out all ununsed space from the image, hence
trimming down the file system image. And secondly, when creating an
file system on regular file (with '-E discard' which is default), we
can use punch hole to clear the file content, hence we can skip inode
table initialization, because reads from sparse area returns zeros. This
will result in faster file system creation (without the need to specify
lazy_itable_init) and smaller images.

This commit also fixes some tests that would fail due to mke2fs showing
discard progress, hence the output would differ.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
c859cb1de0d624caa0779fb17d1a53766143136e 16-Sep-2011 Lukas Czerner <lczerner@redhat.com> e2fsprogs: create open() and stat() helpers

In many places we are using #ifdef HAVE_OPEN64 to determine if we can
use open64() but that's ugly. This commit creates two new helpers
ext2fs_open_file() for open() and ext2fs_stat() for stat(). Also we need
new typedef ext2fs_struct_stat for struct stat.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.c
til.c
45792c127645fdb4b665b74dff01748e5db789c5 16-Sep-2011 Yury V. Zaytsev <yury@shurup.com> mke2fs: check that auto-detected blocksize <= sys_page_size

Block size can be specified manually via the -b option or deduced
automatically. Unfortunately, the check that it is still smaller than
the system page size is only performed right after the command line
options are parsed.

Therefore, if buggy or inappropriately installed/configured hardware
hints that larger block sizes have to be used, mkfs will silently create
a file system which can not be mounted on the system in question.

By moving the check beyond the last assignment to blocksize it is now
ensured, that mkfs will issue a warning even if inappropriate blocksize
was auto-detected.

The new behavior can be easily tested, by exporting the following
variables before running mkfs:

export MKE2FS_DEVICE_SECTSIZE=8192
export MKE2FS_DEVICE_PHYS_SECTSIZE=8192

Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
Reviewed-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
57cb271642d24d93ba2435f12a64fe35f67dfced 31-Aug-2011 Surbhi Palande <csurbhi@gmail.com> mke2fs.8: Fix the documentation of maximum journal size

Fix the max journal size in mke2fs man page.

Signed-off-by: Surbhi Palande <csurbhi@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
7fef2bb11f0da01131f3a6646f479a97860ee5c0 16-Sep-2011 Theodore Ts'o <tytso@mit.edu> badblocks: update man page's description of the -v option

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.8.in
b71508075780cfb31258c006a2c6bf08b061d421 15-Sep-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: use "extent" consistently as a feature name in the man page

Addresses-Debian-Bug: #639411

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
9d10f017e2420119455f5fa46db698961786e578 14-Sep-2011 Lukas Czerner <lczerner@redhat.com> e2image: fix invalid lseek error detection

In flush_l2_cache() we are using ext2fs_llseek() however we do not
properly detect the error code returned from the function, because we
are assigning it into ULL variable, hence we will not see negative
values.

Fix this by changing the type of the variable to ext2_loff_t which is
signed and hence will store negative values.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
478113973e003762930c0b0250d64b9092e2deb1 14-Sep-2011 Theodore Ts'o <tytso@mit.edu> mke2fs.static: change library ordering to avoid a link error

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
faa2dcdad0f5af3945a70bdecc8713b3a74cdf9c 14-Sep-2011 Lukas Czerner <lczerner@redhat.com> mke2fs: Use ext2fs_flush() only once

We are doing ext2fs_flush() twice right now at the end of the mke2fs.
First by directly calling ext2fs_flush() which is intended to write
superblock and fs accounting information. And then it is invoked again
when we are calling ext2fs_close(), only this time, because the fs is
not dirty, we are writing out only superblock.

I think it is bad to call it twice because even when writing only super
block it takes some time on bigger file systems and moreover
ext2fs_close() can fail without any reasonable explanation for the user.
Also ext2fs_flush() is printing out progress and it is confusing for the
users.

Fix all this by removing the ext2fs_flush() and leaving it all to
ext2fs_close(). However we need to introduce new variables to store
check interval and max mount count, because fs structure is freed on
ext2fs_close() and we really want to print those information as the last
info for the user.

[ Fixed type mismatch in a printf format statement -tytso]

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
une2fs.c
til.c
til.h
771e8db9f04da550ee7c0ca74b198e989ea4ff35 20-Jul-2011 Aditya Kali <adityakali@google.com> tune2fs: Add support for turning on quota feature

This patch adds support for setting the quota feature in superblock
and allows selectively creating quota inodes (user or group or both)
in the superblock. Currently, modifying the quota feature is only
supported when the filesystem is unmounted.
Also, when setting the quota feature, tune2fs will use aquota.user or
aquota.group file inode number in superblock if these files exist.
Otherwise it will initialize empty quota inodes #3 and #4 and use them.

Here is how it works:
# Set quota feature and initialize both (user and group) quota inodes
$ tune2fs -O quota /dev/ram1

# Enable only one type of quota
$ tune2fs -Q usrquota /dev/ram1

# Enable grpquota, disable usrquota
$ tune2fs -Q ^usrquota,grpquota /dev/ram1

# Clear quota feature and remove quota inodes
$ tune2fs -O ^quota /dev/ram1

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
akefile.in
une2fs.8.in
une2fs.c
1f5d7a890e8b2ad03ee91fd891b0b5b4327da030 20-Jul-2011 Aditya Kali <adityakali@google.com> mke2fs: support creation of filesystem with quota feature

mke2fs also creates quota inodes (userquota: inode# 3 and
groupquota: inode #4) inodes while creating a filesystem when 'quota'
feature is set.
# To set quota feature and initialize quota inodes during mke2fs:
$mke2fs -t ext4 -O quota /dev/ram1

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
akefile.in
ke2fs.8.in
ke2fs.c
d4c0d8e5b858cdf3d3000f2b3fca532787f34a02 18-Jul-2011 Andreas Dilger <adilger@whamcloud.com> mke2fs: document stripe_width, not stripe-width

For consistency with other multi-word options, document the extended
option stripe_width instead of stripe-width. This also avoids the
complexity of parsing options that have an embedded '-'.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
f37901a22d618916b53105e39ff91a8bb84d67bc 05-Jul-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
misc/tune2fs.c
5b734a0e715ba6590624247b0866e4791f717981 05-Jul-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: allow setting the stride and stripe width to zero

Mke2fs previously would give an error if the user tried setting the
stride and stripe-width parameters to zero; but this is necessary to
override the stride and stripe-width settings which get automatically
set from the block device's geometry information in sysfs. So allow
setting these parameters to zero.

Addresses-Google-Bug: #4988555

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
9a976ac732a7e9c3d9bf7ccb18190b93b588cb6d 05-Jul-2011 Theodore Ts'o <tytso@mit.edu> tune2fs: Fix mount_opts handling

The extended options parsing for mount_opts was horribly buggy.
Invalid mount options that had an argument would get interpreted as an
extended mount options. Fix this.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
035f32ab17e53c632b9b6a34fb6416ae714bf3ab 05-Jul-2011 Theodore Ts'o <tytso@mit.edu> tune2fs: allow setting the stride and stripe width to zero

Tune2fs previously would give an error if the user tried setting the
stride and stripe-width parameters to zero; but this is necessary to
disable the stride and stripe-width settings. So allow setting these
superblock fields to zero.

Addresses-Google-Bug: #4988557

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
1ca87790b914a1958f3cbd8b5e1e7037f2cf30ed 20-Jun-2011 Theodore Ts'o <tytso@mit.edu> libext2fs: fix makefile dependency problem

lib/ext2fs/Makefile.in had a buggy entry for blkmap64_ba.c in $(SRCS),
which caused this source file to not have a valid Makefile dependency
entry, so blkmap64_ba.o would not get rebuilt when it needed to be.

Also updated the Makefile dependency for the misc directory while
we're at it.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
b12a0bc30152f85ccafab159fcc2f50fe6ce2551 16-Jun-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: change bigalloc default cluster size to 16*blocksize

This was the original default, but it accidentally got changed to
4*blocksize in commit 4c2b28ab67.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
fe75afbf33389f71f8588af388d0c01db0cbf753 16-Jun-2011 Theodore Ts'o <tytso@mit.edu> Fix superblock field s_blocks_count for bigalloc file systems

Treat the s_blocks_count field in the superblock as a free block count
(instead of the number of free clusters) for bigalloc file systems.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
96367ad3bc849220651b20f41340b48e07e82b04 16-Jun-2011 Andreas Dilger <adilger@whamcloud.com> misc: quiet "unused variable" compiler warnings

Some of the newly-merged patches added "unused variable" compiler
warnings. Delete unused variables.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.c
ke2fs.c
2d34a25f81d6868387c2b21e8d6d25291c1069db 14-Jun-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: add support for cluster size in mke2fs.conf

Add support for specifying the cluster size in mke2fs.conf

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf.5.in
4c2b28ab67dec1e1c4173a0e7e785dae09d161d2 14-Jun-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: Add support for [devices] stanza in mke2fs.conf

Add the [devices] stanza which allows device-specific defaults to be
specified in the mke2fs.conf file.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf.5.in
6c54689fadc3fe0b0bcae2cc93946cb7a28b9f15 11-Jun-2011 Andreas Dilger <adilger@whamcloud.com> mke2fs: skip zeroing journal blocks

Add the ability to skip zeroing journal blocks on disk. This can
significantly speed up mke2fs with large journals. At worst the
uninitialized journal is only a very short-term risk (if at all),
because the journal will be overwritten on any new filesystem as
soon as any significant amount of data is written to disk, and
the new journal TID would need to match the offset/TID of an old
commit block still left on disk.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
25bc8c756f0f8c5e703f86c8d6da882dc77bfa84 11-Jun-2011 Andreas Dilger <adilger@whamcloud.com> tune2fs: add dir_index feature to tune2fs man page

Add description of missing dir_index feature to tune2fs(8) man page.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.8.in
cf5301d7f2c3bbed3d26600335102414cbf0c4ba 11-Jun-2011 Andreas Dilger <adilger@whamcloud.com> misc: clean up compiler warnings

Fix several types of compiler warnings (unused variables/labels),
uninitialized variables, etc that are hit with gcc -Wall.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.c
2freefrag.c
2undo.c
une2fs.c
c6ed60cdeb1355a884f635ac8118c8f330e2ba68 11-Jun-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: support creating bigalloc file systems

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
f16f9d92aa71fda1ababc48f1af6b6034214e537 07-Jun-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
misc/mke2fs.c
8185ab9f38f0e9cd06feab9d8e59d059bde84bf6 07-Jun-2011 Andreas Dilger <adilger@whamcloud.com> mke2fs: Don't erase flash device if "-n" is given

If "mke2fs -n" is used, there should be no changes to the underlying
device. Unfortunately, when the "discard" option was added in commit
c7cd908be59f48c66b4f3ac9a631ffe3dde4f1ab, it did not check for the "-n"
flag, and will discard all data on a flash device even if "-n" is given.

Check for the "noaction" flag before discarding any filesystem data.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
6a6337c3df7c982eb888764d585ec483a51af16e 05-Jun-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
lib/ext2fs/bitmaps.c
lib/ext2fs/rw_bitmaps.c
misc/dumpe2fs.c
bcb942c2013a92ff9a627ee79f14e52dba097538 05-Jun-2011 Theodore Ts'o <tytso@mit.edu> dumpe2fs: teach dumpe2fs to be cluster aware

Add support to dumpe2fs so it can display the block bitmaps correctly
for bigalloc file systems.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
1da5ef707904cf99300a0fb36b9ae3b29dbc8bde 04-Jun-2011 Theodore Ts'o <tytso@mit.edu> libext2fs: change fs->clustersize to fs->cluster_ratio_bits

The log2 of the ratio of cluster size to block size is far more useful
than just storing the cluster size. So make this change, and then
define basic utility macros: EXT2FS_CLUSTER_RATIO(),
EXT2FS_CLUSTER_MASK(), EXT2FS_B2C(), EXT2FS_C2B(), and
EXT2FS_NUM_B2C().

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
3977a4ff5b6d8f1a2a15d267308c52d42f31ba01 01-Jun-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
misc/tune2fs.c
2972b1637654e0c6ca0d7201384331dc250b2dc8 18-Apr-2011 Kazuya Mio <k-mio@sx.jp.nec.com> tune2fs: Fix overflow of interval check

Add the check of maximum check interval.
s_checkinterval is 32bit variable, so it cannot be set more than 2^32.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
b1503c446a9cd3041c94945df7a9772e812dbd21 18-Apr-2011 Kazuya Mio <k-mio@sx.jp.nec.com> e2fsprogs: Unify the upper limit of reserved blocks count

In e2fsprogs, the upper limit of reserved blocks count is a half of
filesystem's blocks count. This patch fixes the incorrect checks of
reserved blocks count.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
d568782ade9b630a6f28f24b1357fc89a6ba8286 04-Apr-2011 Eric Sandeen <sandeen@redhat.com> mke2fs: don't set stripe/stride to 1 block

Block devices may set minimum or optimal IO hints equal to
blocksize; in this case there is really nothing for ext4
to do with this information (i.e. search for a block-aligned
allocation?) so don't set fs geometry with single-block
values.

Zeev also reported that with a block-sized stripe, the
ext4 allocator spends time spinning in ext4_mb_scan_aligned(),
oddly enough.

Reported-by: Zeev Tarantov <zeev.tarantov@gmail.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
92dcfb7692da5c3ed61899c49c0915f889815c45 18-May-2011 Lukas Czerner <lczerner@redhat.com> e2image: Support for conversion QCOW2 image into raw

This commit adds support for converting QCOW2 image created previously
with e2image into raw image. The QCOW2 image is detected automatically,
so there is not new option. Just use following command:

e2image -r image.qcow image.raw

No that this tool is aimed to quickly convert qcow2 image created with
e2image into raw image. In order to improve speed we are doing some
assumption I believe might not be true for regular qcow2 images. So it
was not tested with regular QCOW2 images and it might not work with
them. The intention of this tool is only convert images previously
created by e2image.

Note that there is nothing special with QCOW2 images created by e2images
and it can be used with tools like qemu-img, or qemu-nbd without any
problems.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.8.in
2image.c
bf0449b1a6547a566975cb32c18a2ba5972deace 18-May-2011 Lukas Czerner <lczerner@redhat.com> e2image: Add support for qcow2 format

This commit adds support for exporting filesystem into QCOW2 image
format. Like sparse format this saves space, by writing only necessary
(metadata blocks) into image. Unlike sparse image, QCOW2 image is NOT
sparse, hence does not change its size by copying with not-sparse-aware
tools.

New options '-Q' has been added to tell the e2image to use QCOW2 as an
output image format. QCOW2 supports encryption and compression, however
e2image so far does no support such features, however you can still
scramble filenames with '-s' option.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.8.in
2image.c
d3859af33f5bbbc432dedb20e85a5ae62e0fff03 10-May-2011 Aditya Kali <adityakali@google.com> mke2fs: Allow specifying reserved_ratio via mke2fs.conf

This patch adds support for specifying 'reserved_ratio' (percent blocks
reserved for super user, same as '-m' command line option) in mke2fs.conf.
It adds profile_get_double function in profile.c that allows reading
floating point values from profile files.

Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
ke2fs.conf.5.in
b18c5fd51e829e5fb1a434604d4373409379744b 08-May-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
05950620a807621e57008acb54602287ad768785 27-Mar-2011 Carsten Hey <carsten@debian.org> logsave: Update usage message so it is correct

Addresses-Debian-Bug: #619788
Signed-off-by: Carsten Hey <carsten@debian.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ogsave.c
a8d8432b584c222dc7960c15cd7b9acbc7c72352 05-May-2011 Eric Sandeen <sandeen@redhat.com> filefrag: count 0 extents properly when verbose

/boot/a: 0 extents found

works properly, but

Filesystem type is: ef53
Filesystem cylinder groups is approximately 61
File size of a is 0 (0 blocks, blocksize 1024)
ext logical physical expected length flags
a: 1 extent found

yields 1 extent when it should be 0.

Fix this up by special-casing no extents returned in verbose
mode; skip printing the header for the columns too, since there
are no columns to print.

Also, in nonverbose mode we can set fm_extent_count to 0
so that FIEMAP will just query the extent count without gathering
details; clarify this with a comment.

Addresses-RedHat-Bugzilla: 653234
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
5af9eeaa7d36dd6f3a434697747ba8db3434eced 18-Mar-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
lib/e2p/ls.c
d4a9330212280e0ff1204a4052f09f18691ed1cf 10-Mar-2011 Eric Sandeen <sandeen@redhat.com> e2fsprogs: man page typo fixes

Fix a few typos in manpages.

Reported-by: Branislav Náter <bnater@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.conf.5.in
aa07cb79b0a38d9d8407c5631624ef8534bdde3f 28-Feb-2011 Theodore Ts'o <tytso@mit.edu> mke2fs: If the device supports discard, don't print an error message

Check to see if the device supports discard before starting the
progress bar, and then printing an error about inappropriate ioctl for
device (when creating a file system image to a file, for example).

Also, add a function signature in the ext2_io.h header file for
io_channel_discard() and fix an extra, uneeded argument in mke2fs's
call to that function.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
829d9994880394e48c883510799b1536812d6efb 28-Feb-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
lib/ext2fs/initialize.c
412376efff3c0e0c2fea00666c2457e6f2ae1878 26-Feb-2011 Theodore Ts'o <tytso@mit.edu> Add basic BIGALLOC support for cluster-based allocation

This adds the superblock fields needed so that dumpe2fs works and the
code points and renames the superblock fields from describing
fragments to clusters.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
7d9e31655fca48e9d6c2647ad443124113508b73 24-Jan-2011 Lukas Czerner <lczerner@redhat.com> mke2fs: Display progress report during the device discard

For some time now we are doing initial discard of the device prior to
filesystem creation. However, there is no feedback for the user and
hence on some devices with slow TRIM implementation it may appear that
mke2fs is stuck.

This commit introduce new function mke2fs_discard_device(), which is a
wrapper for io_channel_discard(). The discard is done in chunks of
2GB, which seems reasonably well for both slow and fast devices, and
discard progress is reported back to the user.

I gave up on doing fancy things like align discard according to
discard_alignment, checking for discard granularity and computing
estimate time. First of all, because it would require either new ioctl
to retrieve those information or use of libudev library, none of it
seems to be worth it. Regarding discard_granularity, I doubt there is
any sane device with discard granularity that big it would affect this.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
214580a339a18b0539b5998d3b47934956a30a1c 21-Feb-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
misc/mke2fs.conf.5.in
855a77a19704ef7e0acd542cce19a6e8ee07582d 01-Feb-2011 Lukas Czerner <lczerner@redhat.com> mke2fs: Simple man page nodiscard option correction

It is not true that 'nodiscard' is set as default, so remove this
sentence. The default is 'discard' and it is properly documented in man
page.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
6a426c97ec2de0968b4cde62e5eab3df605bde33 17-Feb-2011 Eric Sandeen <sandeen@redhat.com> e2fsprogs: enable user namespace xattrs by default

User namespace xattrs are generally useful, and I think extN
is the only filesystem requiring a special mount option to
enable them, when xattrs are otherwise available. So this
change sets that mount option into the defaults, via a
mke2fs.conf option.

Note that if xattrs are config'd off, this will lead to a
mostly-harmless:

EXT4-fs (sdc1): (no)user_xattr options not supported

message at mount time...

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
ke2fs.conf
ke2fs.conf.5.in
3daf592646b668133079e2200c1e776085f2ffaf 17-Feb-2011 Eric Sandeen <sandeen@redhat.com> e2fsprogs: turn off enforced fsck intervals by default

The forced fsck often comes at unexpected and inopportune moments,
and even enterprise customers are often caught by surprise when
this happens. Because a filesystem with an error condition will
be marked as requiring fsck anyway, I submit that the time-based
and mount-based checks are not particularly useful, and that
administrators can schedule fscks on their own time, or tune2fs
the enforced intervals if they so choose. This patch disables the
intervals by default, and I've added a new mkfs.conf option to
turn on the old behavior of random, unexpected, time-consuming
fscks at boot time. ;)

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
ke2fs.conf
ke2fs.conf.5.in
89d459751006f844cde6132420079926e533c49e 20-Feb-2011 Theodore Ts'o <tytso@mit.edu> badblocks: Add accounting for different types of errors

When using the -v option, report a breakdown of the number of read,
write, and comparison errors that were found by badblocks.

Thanks to Ragnar Kjørstad for providing this patch.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
39791dc0bda8c5a995e307e6306b79cd0fded644 20-Feb-2011 Theodore Ts'o <tytso@mit.edu> badblocks: Fix up recover_block handling in badblocks

If there was a bad block for block #0, badblocks would never switch
back testing blocks more efficiently. In addition, we were
double-incrementing the blocks to be tested in the read/write test due
to failure to remove code.

Thanks to Ragnar Kjørstad for pointing these problems out.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
175d43beada4f5c971fa4b495380620644705282 18-Feb-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
468d82f430dfdf270b738e14345b879560c2cd9e 18-Feb-2011 Theodore Ts'o <tytso@mit.edu> badblocks: Only report errors when reading/writing one block at a time

With Direct I/O, the kernel can report 0 bytes read even though the
first block has no errors. So there are any errors, we need try to
read/write blocks one at a time and to get an accurate report.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
e53e8fb00970fc74163b822e65d4e1156adac770 17-Feb-2011 Theodore Ts'o <tytso@mit.edu> badblocks: Add the -B option which forces the use of buffered I/O

If for some reason direct I/O does not work correctly, force the use
of buffered I/O.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.8.in
adblocks.c
7d6840354a44d2c8e77e6aa7be7a9e491992a87d 17-Feb-2011 Theodore Ts'o <tytso@mit.edu> badblocks: Fix bug so that O_DIRECT mode is correctly entered

The check to see if the block number is properly aligned was not done
correctly. Fix this.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
616f68bf773440d6b6af4fb91c5cde6f74e5e659 11-Feb-2011 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
b637f8e7ed4309ec39d87ea0cf07f48fc0610266 01-Feb-2011 Jim Meyering <meyering@redhat.com> filefrag: remove useless assignment

The very next one memset's all bytes of fiemap to 0.

Signed-off-by: Jim Meyering <meyering@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
9ac557a1df6905b9861f90d2738e61b25580b002 19-Dec-2010 Kazuya Mio <k-mio@sx.jp.nec.com> e4defrag: Use libext2fs to get the correct superblock information

Currently, e4defrag always does byte-swapping when it gets superblock
information, so the calculation of the best extents count is not
correct on little endian machine. This doesn't cause data corruption,
but it may confuse users by showing the wrong extent count. To solve
this problem, we use ext2fs_open() instead of get_superblock_info()
that is the original function.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
8d9c50c5570c2c87a99fb68389cebdc782433f82 24-Dec-2010 Theodore Ts'o <tytso@mit.edu> configure: control whether e4defrag is built/installed via --disable-defrag

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
akefile.in
b07f014face2e2aa0abf8a3266fd716152cd0cd4 18-Nov-2010 Kazuya Mio <k-mio@sx.jp.nec.com> e4defrag: fix segfault when e4defrag races with unlink/truncate

If a file gets deleted or truncated while e4defrag is trying to
operate on it, it's possible for it seg fault.

Addresses-Red-Hat-Bugzilla: #641926

Reported-by: Michal Piotrowski <mkkp4x4@gmail.com>
Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
da2a5a4baede2a227d2da587eb74ceae66778fbc 23-Dec-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
resize/resize2fs.c
0f7479b34048c6cf48a539c411552ef1542ee0b8 23-Dec-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: don't complain if the fs type "default" is not defined in mke2fs.conf

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
9b27e9cc320dd7da24356561b3b12c66f2540432 23-Dec-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: take the device size into account when determining the size type

If the file system size was not specified on the command line, we were
always using the usage type "floppy" since we didn't determine the
device size until after calling parse_fs_types(). Doh!

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
5182ad4c2165fa807fa0a3034aaab589d6c1d577 29-Nov-2010 Namhyung Kim <namhyung@gmail.com> mke2fs.8.in: add ENVIRONMENT section

Add ENVIRONMENT section and describe behavior of MKE2FS_SYNC,
MKE2FS_CONFIG, MKE2FS_FIRST_META_BG, MKE2FS_DEVICE_SECTSIZE
and MKE2FS_SKIP_CHECK_MSG.

Signed-off-by: Namhyung Kim <namhyung@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
8a1cf3c243cf8447d814c4e3432fcf6282aa40e9 22-Dec-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: clean up error handling in mke2fs_setup_tdb()

Avoid memory leaks on error paths, and make sure we issue the correct
error messages in the case of (highly) unlikely errors.

Original patch submitted by Namhyung Kim <namhyung@gmail.com>, but
highly rewritten since then.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
9ec68af7b61bf1ac88f20ae6ed6b1d45417195aa 16-Dec-2010 Namhyung Kim <namhyung@gmail.com> mke2fs: add some error checks into PRS()

Check return value of some functions and exit if unhandled error occurred.

Signed-off-by: Namhyung Kim <namhyung@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
22d8ce512ffcdb9d6a16e1d34f65aa37ce1ab3d3 29-Nov-2010 Namhyung Kim <namhyung@gmail.com> mke2fs: fix determination of size_type

In original code, 'huge' type could not be selected because it
always be caught for 'big' type. Change the ordering.

Signed-off-by: Namhyung Kim <namhyung@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
9a2767ffed4e3eca1834c4134885a1f51d1a2ca5 29-Nov-2010 Namhyung Kim <namhyung@gmail.com> mke2fs.8.in: add missing "big" and "huge" usage-type description

The commit 493024ea1d74e4cb48aac3a24111f5c8da343e9f ("mke2fs: Fix up the
fs type and feature selection for 64-bit blocks") added 'big' and 'huge'
usage-type but was missing description in man page. Add it.

Signed-off-by: Namhyung Kim <namhyung@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
74e1211b2329b6c778ac4f834cc9e38f855ebaa0 22-Dec-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Avoid potential NULL dereference

... in the very unlikely case that e2p_os2string fails to allocate
memory.

Reported-by: Namhyung Kim <namhyung@gmail.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
e16324210286dc72a013e66d91bd3a59c3ab7538 20-Dec-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Use ext2fs_div_ceil to simplify write_inode_tables()

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
25623feab4789b86880da8ded5605ff17ebf3908 17-Dec-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'master' into next

Conflicts:
e2fsck/e2fsck.h
e2fsck/unix.c
30c0529d27edca148a6e5e52bcdd7b38d6cb28b2 17-Dec-2010 Theodore Ts'o <tytso@mit.edu> e4defrag: Fix the overflow in e4defrag with > 2GB files

The fallocate() interface on 32-bit machines is defined to use off_t,
not loff_t (even though the system call interface is 64-bit clean).
This causes e4defrag to fail on files greater than 2GB. Fix this by
trying to use fallocate64(), and using the hard-coded syscall if it
does not exist.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
77e72e2b8e9b17e6cac15b15a6786de14505ead8 13-Dec-2010 Kazuya Mio <k-mio@sx.jp.nec.com> e4defrag: update man page about -c option

Add the description of the size per one extent and the maximum extent size
in ext4 into e4defrag man page.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.8.in
4baacad7035820f6449473b62510d4202e69578a 13-Dec-2010 Kazuya Mio <k-mio@sx.jp.nec.com> e4defrag: avoid unsuccessful return for an non-privileged user

If non-privileged user runs e4defrag, e4defrag returns an exit status
of 1 despite its success. This patch fixes this problem.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
02808f7d9aabc7df6121d767fcebfb6e8aa32b56 13-Dec-2010 Kazuya Mio <k-mio@sx.jp.nec.com> e4defrag: fix file blocks calculation

e4defrag uses st_blocks (struct stat) to calculate file blocks. However,
st_blocks also has meta data blocks in addition to file blocks. So, we
calculate file blocks by sum of the extent length.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
94d26c267d30a8548e2a46e6fe9eaacdb6998596 13-Dec-2010 Kazuya Mio <k-mio@sx.jp.nec.com> e4defrag: output size per extent by -c option

e4defrag with -c option outputs "ratio" that means the levels of
fragmentation. However, it's difficult for users to understand, so we will
use size per extent instead of ratio.

Before:
# e4defrag -c /mnt/mp1/file
<File> now/best ratio
/mnt/mp1/file 6/1 0.00%

Total/best extents 6/1
Fragmentation ratio 0.00%
Fragmentation score 0.04
[0-30 no problem: 31-55 a little bit fragmented: 55- needs defrag]
This file(/mnt/mp1/file) does not need defragmentation.
Done.

After:
# e4defrag -c /mnt/mp1/file
<File> now/best size/ext
/mnt/mp1/file 6/1 16666 KB

Total/best extents 6/1
Average size per extent 16666 KB
Fragmentation score 0
[0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]
This file (/mnt/mp1/file) does not need defragmentation.
Done.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
ae09b934a7e8035edb9f91dd8d39726daa9048f0 13-Dec-2010 Peng Tao <bergwolf@gmail.com> e4defrag: return more specific error message on ioctl failure

Currently e4defrag relies on the EXT4_IOC_MOVE_EXT ioctl to perform online
defragmentation. However, this iotcl kernel patch is not available before
2.6.30-rc1. e4defrag shall fail without obvious reasons on systems running
older kernels. The patch adds more detailed error message addressing this
issue and prompts users with the minimal kernel version that is needed to
run e4defrag.

Signed-off-by: Peng Tao <bergwolf@gmail.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
43eb2ad47766c18faf39bb15a198a08144a0a707 08-Sep-2009 Eric Sandeen <sandeen@redhat.com> e4defrag: skip "rootfs" entry when checking for ext4 filesystem

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
90b9dce3e566613d509554e278c01126c83f8612 13-Dec-2010 Darrick J. Wong <djwong@us.ibm.com> e4defrag: open the file to be defragged in read/write mode

Akira Fujita merged a patch into 2.6.33 that adds a requirement that a
file being defragged must be opened with read and write access, so
e2fsprogs needs to satisfy that.

Signed-off-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
0358c9f9a43ce0ef33f7891ca9f9d67abd3b4853 13-Dec-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
e2fsck/pass4.c
misc/dumpe2fs.c
resize/online.c
0e2afdbaccbd56d58c291763bac5902032bf5f53 06-Dec-2010 Andreas Dilger <adilger@dilger.ca> dumpe2fs: fix output for flex_bg bitmap offsets

When running dumpe2fs on a filesystem formatted with flex_bg, it
prints out the relative offsets for the bitmaps and inode table
badly on 64-bit systems, because the offset is computed as a
large positive number instead of being a negative numer (which
will not be printed at all):

Group 1: (Blocks 0x8000-0xffff) [INODE_UNINIT, ITABLE_ZEROED]
Block bitmap at 0x0102 (+4294934786), Inode bitmap at 0x0202 (+4294935042)
Inode table at 0x037e-0x03fa (+4294935422)

This commit prints out the relative offsets for flex_bg
groups as the offset within the reported group. This makes it
more clear where the metadata is located, rather than simply
printing some large negative number.

Group 1: (Blocks 0x8000-0xffff) [INODE_UNINIT, ITABLE_ZEROED]
Block bitmap at 0x0102 (bg #0 +258), Inode bitmap at 0x0202 (bg #0 +514)
Inode table at 0x037e-0x03fa (bg #0 +894)

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
5a2db04637c8494f6f600994f98fe0df23c4524c 02-Dec-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Fix (minor) memory leaks

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
2ee4544d07af35a6a667400cca35657e37d55c3b 02-Dec-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Fail if the requested file system type is not defined in mke2fs.conf

If the user passes a file system type which is not defined in
mke2fs.conf (i.e., mke2fs -t xfs ...) change mke2fs so that it prints
a warning and aborts the run. (There is an exception for ext2, since
that file system does not need a special definition in the fs_types
section of the /etc/mke2fs.conf file.)

In addition, print a warning if there are usage types (specified using
the -T option) which are not defined in /etc/mke2fs.conf.

Addresses-Debian-Bug: #594609

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
7361c08e5da18c8774ffda94931c500490d51846 18-Nov-2010 Lukas Czerner <lczerner@redhat.com> mke2fs: Use unix_discard() for discards

There is generic discard function in struct_io_manager, or in
unix_io_manager to be specific. So use this instead of
mke2fs_discard_blocks().

Since mke2fs_discard_blocks() is not used anymore (and should not be)
remove it.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
d866599ab4955858b1541f0891b1b165ba66493a 18-Nov-2010 Lukas Czerner <lczerner@redhat.com> e2fsprogs: Add CHANNEL_FLAGS_DISCARD_ZEROES flag for io_manager

When the device have discard support and simultaneously discard zeroes
data (and it is properly advertised), then we can take advantage of such
behavior in several e2fsprogs tools.

Add new flag CHANNEL_FLAGS_DISCARD_ZEROES for struct_io_channel so
each io_manager can take advantage of this. The flag is properly set
according to BLKDISCARDZEROES ioctl in unix_open.

Also remove old mke2fs_discard_zeroes_data() function and substitute it
with helper which test this flag.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
f35c7b55946788a4e3a9c9a73885e9a2e6e045e4 22-Nov-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
7fe5ff3c1e06c4705a7a709a7ed34f02c5a02fd8 18-Nov-2010 Lukas Czerner <lczerner@redhat.com> mke2fs: Add discard option into mke2fs.conf

Allow to specify discard in mke2fs.conf. Also change the way how to
specify default value for lazy_itable_init. It is better to have all
this defaulting done in the same place so do it in definition (as we do
with discard).

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf.5.in
0bc85dfb384b470e6170268c8436fcbe58317cbe 18-Nov-2010 Lukas Czerner <lczerner@redhat.com> mke2fs: Deprecate -K option, introduce discard/nodiscard

It would be nice to have consistent "discard" options in every system
tool (mount, fsck, mkfs) taking advantage of discards. Also "discard"
and "nodiscard" is more descriptive instead of just "-K" and can be
easily defaulted and it is something we can not do with "-K".

With this commit you need to specify extended option like this:

./mke2fs -T <fstype> -E nodiscard <device>

in order make a filesystem without discarding the device first. And

./mke2fs -T <fstype> -E discard <device>

respectively.

-K option is with this commit deprecated and should not be used anymore.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
2b21a0d9b6c7e0efeb553e2b0f61aba1b27f9257 22-Nov-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Force the default blocksize to be at least the logical sector size

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
92eb5a339220e66e965e536bf53d63249577a93a 22-Nov-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Set logical/physical sector size from environment for debugging

If MKE2FS_DEVICE_SECTSIZE is set, then this will override the logical
sector size, which is the smallest sector size that can be written
atomically by the device. (Previously MKE2FS_DEVICE_SECTSIZE set the
physical sector size, which was incorrect given its historical usage.)
The environment variable MKE2FS_DEVICE_PHYS_SECTSIZE will set the
physical sector size, which is the actual sector size used by the
device in reality.

The logical sector size is always less than or equal to the physical
sector size; and writes smaller than the physical sector size but
greather than or equal to the logical sector size will cause a
read-modify-write cycle within the device firmware (or in some
abstract layer lower than the Linux block I/O subsystem, at any rate).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
1599b470fb881313c1d44594f05d578c43825312 22-Nov-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Fill in min_io and opt_io with physical sector size

If the device does not have an explicitly specified minimum io_size or
optimal io_size, and the physical sector size is greater than the
block size, then use the physical sector size as a better-than-nothing
hint.

This should help for SSD's that have a physical sector size of 8k or
16k (which are reportedly will be coming soon).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
f89f54aff479af859ee483c907041bcc9c0698f8 21-Nov-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Do not require -F for block size < physical size

There will be SSD's out soon that have 8k or 16k phyiscal block sizes.
So don't enforce a requirement that the block size be less than the
physical block size unless the force option is given, and don't give a
warning if the user can't do anything about it (i.e., if the physical
block size is > than the page size).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
210fd2c7072f2f150e2bb10b07c49472bb78e366 01-Oct-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Enable lazy_itable_init if the kernel supports this feature

Add check for /sys/fs/ext4/features/lazy_itable_init. If this file
exists, it should be OK to skip initializing the inode table since the
kernel will do it at mount time.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
9946478a23c6ae7fb025cdd8b23e73600e7550f4 26-Sep-2010 Theodore Ts'o <tytso@mit.edu> tune2fs.8: Document that the device can be specified via LABEL= or UUID=

Addresses-Debian-Bug: #580236

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
9d92a201deec7bbb1911e6e5ee98abf3c83882d4 25-Sep-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
configure
configure.in
lib/ext2fs/ext2fs.h
misc/mke2fs.c
792cce309207b44b26fd925b9ca43d9ed5518651 12-Aug-2010 Eric Sandeen <sandeen@redhat.com> mke2fs: make "invalid blocks count" error more clear

Mistakes on the commandline can lead to odd error messages:

# mke2fs -t ext4 -E stride=128 stripe-width=512 /dev/sda1
mke2fs: invalid blocks count - /dev/sda1

Making it a bit more explicit is more obvious:

mke2fs: invalid blocks count '/dev/sda1' on device 'stripe-width=512'

(hint, the mistake was no comma separation for -E)

Reported-by: Adam Huffman <bloch@verdurin.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
6fcd6f84c235f4bf2bd9770f172837da9982eb6e 20-Aug-2010 Eric Sandeen <sandeen@redhat.com> mke2fs: use lazy inode init on some discard-able devices

If a device supports discard -and- returns 0s for discarded blocks,
then we can skip the inode table initialization -and- the inode table
zeroing at mkfs time, and skip the lazy init as well since they are
already zeroed out.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
9345f02671fd39cad69338080b62e12e8b86671d 19-Sep-2010 Theodore Ts'o <tytso@mit.edu> tune2fs, debugfs, libext2fs: Add support for ext4 default mount options

Add support for 2.6.35's new default mount options which can be
specified in the superblock.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
une2fs.c
61ef2474c24c80a5bf0e24ba85a7506fd7651a5c 02-Aug-2010 Theodore Ts'o <tytso@mit.edu> badblocks: Deal with UTF-8 characters in progress message

Addresses-Gentoo-Bug: #309909
Addresses-Debian-Bug: #583782
Addresses-Debian-Bug: #587834

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
e447ba3731b8f6849e4df4c8081b73a9c99a23f4 31-Jul-2010 Tim Small <tim@seoss.co.uk> mke2fs: fix mke2fs "invalid inode ratio" error message

Make error message consistent with the validity test.

Signed-off-by: Tim Small <tim@seoss.co.uk>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
eddf36bac0af31008d8babfa53072203582aecae 29-Jul-2010 Eric Sandeen <sandeen@redhat.com> mke2fs.8.in: clarify the sign of a block-size constraint.

This bit of the mke2fs manpage is slightly confusing:

-b block-size
Specify the size of blocks in bytes. <snip>
If block-size is negative, then mke2fs will use heuristics
to determine the appropriate block size, with the constraint
that the block size will be at least block-size bytes.

because it sounds like the block size will be at least a negative
number. Clarify just what the negative sign means.

Reported-by: Chris Frost <chris@frostnet.net>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
db0bdb49f49fc3dd14c12439d934a3403a3be9f1 19-Jul-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
resize/extent.c
b887f08f959fa3ef4ead9b6e2fd71becf4877a40 05-Jan-2010 Mike Frysinger <vapier@gentoo.org> e2freefrag: Fix getopt bug on machines with unsigned chars

The getopt() function returns an int, not a char. On systems where the
default char is unsigned (like ppc), we get weird behavior where -1 is
truncated to 0xff but compared to (int)-1.

Also fix this same bug for two test programs, test_rel and iscan,
which aren't currently used at the moment.

Addresses-Gentoo-Bug: #299386

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2freefrag.c
f96cb89e7aa1ff0d2c4f90b2cf499151f96f10c4 05-Jul-2010 Theodore Ts'o <tytso@mit.edu> e2freefrag: Display the total number of free extents

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
cd5ca12d4339cbba55b96fa1d8b843e5f41a6466 14-Jun-2010 Valerie Aurora Henson <vaurora@redhat.com> e2image: Fix up to be 64-bit block number safe

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2undo.c
d991bc742fc342dd7f2771563220b350dd54c5ef 14-Jun-2010 Valerie Aurora Henson <vaurora@redhat.com> e2image: Fix up to be 64-bit block number safe

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: Nick Dokos <nicholas.dokos@hp.com>
Signed-off-by: Valerie Aurora (Henson) <vaurora@redhat.com>
2image.c
7117f8d6c5fc851a393a970e71337ef61bf0a8f0 13-Jun-2010 Valerie Aurora Henson <vaurora@redhat.com> tune2fs: Fix up to be 64-bit block number safe

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
295c3e038a322975013168ce565570d61e2a98d2 13-Jun-2010 Theodore Ts'o <tytso@mit.edu> dumpe2fs: Fix up to be 64-bit block number safe

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
493024ea1d74e4cb48aac3a24111f5c8da343e9f 13-Jun-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Fix up the fs type and feature selection for 64-bit blocks

We need to defer setting the blocks count field in the fs_param
structure until it is known whether 64-bit feature will be enabled
(and whether the blocks count is valid).

We also add a new mke2fs.conf configuration parameter,
auto_64-bit_support which will automatically enable the 64-bit feature
if the number of blocks requires it.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf
ke2fs.conf.5.in
02d6f47e9647d3155a38c8676c2da6ea773d9b68 13-Jun-2010 Jose R. Santos <jrs@us.ibm.com> mke2fs: Fix up mke2fs to be able to make 64-bit file systems

Use 64-bit interfaces in mke2fs. This should be most most of whats
needed to support creating a 64-bit filesystem.

Signed-off-by: Jose R. Santos <jrs@us.ibm.com>
Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: Nick Dokos <nicholas.dokos@hp.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
5648c35ab17270f0e7b87a8c8361c835787f946b 13-Jun-2010 Valerie Aurora Henson <vaurora@redhat.com> badblocks: Use ext2fs_get_device_size2()

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
97d26ce9e3589e9f5fa17014467a9730a884d158 07-Jun-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
e2fsck/journal.c
e2fsck/pass1.c
e2fsck/pass2.c
misc/mke2fs.c
079ad63d59a0b4c9bc3242117ce9b3d97d9dd711 19-May-2010 Theodore Ts'o <tytso@mit.edu> tune2fs: Enable uninit_bg to be set without requiring an fsck

Allow the uninit_bg feature to be set without requiring an fsck. The
first full fsck will require scanning all of the inode table blocks,
but subsequent fsck's will be fast. This allows flexibility over
requiring a full fsck after setting this feature, which is what
tune2fs previously mandated.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
bb1158b92ed8a12ab9e9317ca6ddd97bc12447d3 18-May-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: account for physical as well as logical sector size

Some devices, notably 4k sector drives, may have a 512 logical
sector size, mapped onto a 4k physical sector size.

When mke2fs is ratcheting down the blocksize for small filesystems,
or when a blocksize is specified on the commandline, we should not
willingly go below the physical sector size of the device.

When a blocksize is specified, we -must- not go below
the logical sector size of the device.

Add a new library function, ext2fs_get_device_phys_sectsize()
to get the physical sector size if possible, and adjust the
logic in mke2fs to enforce the above rules.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
b25df6f81791ff5735925a30e9629b6a559386b8 18-May-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Fix compile warning message

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
5aa6c3f61c0559f03b68bdeef886f34ece106757 18-May-2010 Theodore Ts'o <tytso@mit.edu> Add configure options --enable-symlink-build and --enable-symlink-install

These options allow e2fsprogs to be built using symlinks instead of
hard links, and to be installed using symlinks instead of hard links,
respectively.

Addresses-Sourceforge-Bug: #1436294

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
1bb14a22b5ea31ce4b9b5d9d8c7e75f02fad77ee 01-Apr-2010 Eric Sandeen <sandeen@redhat.com> mke2fs: be explicit if external journal device is not found

This for RH bug #572935 -
RFE: Misleading error message from mke2fs -J option

If the journal device UUID is typo'd or otherwise not found,
the error message looks like it's a usage() type of problem.

It'd be helpful to explicitly say that the device requested
could not be found.

Addresses-Red-Hat-Bug: #572935

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
til.c
d531450cdd9c9c356cce5bdb3634bccff31156f7 11-May-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Allow a flex_bg size of 1

It's unusual, and rarely needed, but it's legal value.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
c5b23f6c0e17503630455fb16d1b2035f844acc9 15-Mar-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
ecced2c3586fed83750dad2b82780c9d201f6973 12-Mar-2010 Eric Sandeen <sandeen@redhat.com> mke2fs: Don't ask to proceed in case of a badly aligned partition

Just print the warning message in this case.

Addresses-Red-Hat-Bug: #569021
Addresses-Launchpad-Bug: #530071

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
cc84d866e2f29d92b5a732fead4df2dd9f814f2b 11-Feb-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
e2fsck/pass1.c
13b0b1231ed28aac75ba336de7a8cb3b4611ce68 24-Jan-2010 Eric Sandeen <sandeen@redhat.com> mke2fs: fix up topo complaints on regular files

mkfsing a plain file would lead to a warning about being unable
to determine geometry; we should just skip the topology-getting
if we see that we have a regular file.

This was breaking "make check" but I had missed it since I
inadvertently stopped running the checks during the Fedora
RPM build.

Also, add a newline to the warning.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
3067d96a2d226e2d1b6c97501be6aaa8e85140c3 01-Feb-2010 Theodore Ts'o <tytso@mit.edu> mke2fs: Fix printf type warning

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
2d07b3ad98bfe1db5fb1071f53a5338ab6c35522 31-Jan-2010 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
configure
lib/ext2fs/alloc_tables.c
misc/mke2fs.c
ca92d98f0afa6e79dff672923b96cbc2274449be 28-Nov-2009 Theodore Ts'o <tytso@mit.edu> filefrag: Fix a core dump on sparc32 platforms with 8k file systems

On 32-bit platforms where the file system block size is 8k or greater,
the calculation bpib*bpib*bpib* will overflow a 32-bit calculation,
leading to a divide by zero error. Fix this.

Thanks to Mikulas Patocka for pointing this out.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
f3befe3e6b74f8ab33d619d2213bbd130cd5b191 17-Nov-2009 Eric Sandeen <sandeen@redhat.com> mke2fs: open device writable for trim/discard

Sorry about that, the discard ioctl doesn't actually work
unless you open the file with write capabilities...

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
c7cd908be59f48c66b4f3ac9a631ffe3dde4f1ab 07-Oct-2009 Eric Sandeen <sandeen@redhat.com> mke2fs support for BLKDISCARD

Try calling the BLKDISCARD ioctl at mkfs time to pre-discard all blocks
on an ssd, or a thinly-provisioned storage device.

No real error checking; if it fails, it fails, and that's ok - it's
just an optimization. Also, it cannot work in conjunction with
the undo io manager, for obvious reasons.

Optionally disabled with a "-K" (mnemonic: Keep) option.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
d0a4e54e6a987e03253e03b56a50d50dd37423bc 05-Nov-2009 Matthias Andree <matthias.andree@gmx.de> Disconnect e4defrag from build on non-Linux hosts.

Signed-off-by: Matthias Andree <matthias.andree@gmx.de>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
akefile.in
4486af5b4c1b117ac88a92cd2336cb41c15107d3 16-Nov-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
misc/mke2fs.c
5827d2412d0774cb6294521a0ea578975fed07ce 07-Oct-2009 Eric Sandeen <sandeen@redhat.com> mke2fs support for BLKDISCARD

Try calling the BLKDISCARD ioctl at mkfs time to pre-discard all blocks
on an ssd, or a thinly-provisioned storage device.

No real error checking; if it fails, it fails, and that's ok - it's
just an optimization. Also, it cannot work in conjunction with
the undo io manager, for obvious reasons.

Optionally disabled with a "-K" (mnemonic: Keep) option.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
b49f78fe6e19fe63b6f989d5e1afb04f59069197 26-Oct-2009 Theodore Ts'o <tytso@mit.edu> Convert ext2fs_group_{first,last}_block() to *block2()

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
une2fs.c
6493f8e85defc568a4ca8cdb4a53361f36fb94ba 26-Oct-2009 Theodore Ts'o <tytso@mit.edu> Convert ext2fs_group_of_blk() to ext2fs_group_of_blk2()

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
d7cca6b06f366f998ed43346f9b6fca9e163692f 26-Oct-2009 Valerie Aurora Henson <vaurora@redhat.com> Convert to use block group accessor functions

Convert direct accesses to use the following block group accessor
functions: ext2fs_block_bitmap_loc(), ext2fs_inode_bitmap_loc(),
ext2fs_inode_table_loc(), ext2fs_bg_itable_unused(),
ext2fs_block_bitmap_loc_set(), ext2fs_inode_bitmap_loc_set(),
ext2fs_inode_table_loc_set(), ext2fs_bg_free_inodes_count(),
ext2fs_ext2fs_bg_used_dirs_count(), ext2fs_bg_free_inodes_count_set(),
ext2fs_bg_free_blocks_count_set(), ext2fs_bg_used_dirs_count_set()

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: Nick Dokos <nicholas.dokos@hp.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
2image.c
ke2fs.c
une2fs.c
e633b58ac75f2f544b7d6572e37d4b63da31e59c 26-Oct-2009 Eric Sandeen <sandeen@redhat.com> libext2fs: clean up ext2fs_bg_flags_ interfaces

The ext2fs_bg_flag* functions were confusing.

Currently we have this:

void ext2fs_bg_flags_set(ext2_filsys fs, dgrp_t group, __u16 bg_flags);
void ext2fs_bg_flags_clear(ext2_filsys fs, dgrp_t group,__u16 bg_flags);

(_set (unused) sets exactly bg_flags; _clear clears all and ignores bg_flags)

and these, which can twiddle individual bits in bg_flags:

void ext2fs_bg_flag_set(ext2_filsys fs, dgrp_t group, __u16 bg_flag);
void ext2fs_bg_flag_clear(ext2_filsys fs, dgrp_t group, __u16 bg_flag);

A better interface, after the patch below, is just:

ext2fs_bg_flags_zap(fs, group) /* zeros bg_flags */
ext2fs_bg_flags_set(fs, group, flags) /* adds flags to bg_flags */
ext2fs_bg_flags_clear(fs, group, flags) /* clears flags in bg_flags */

and remove the original ext2fs_bg_flags_set / ext2fs_bg_flags_clear.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
72a729dbf962e8fba58a06ee0a11a01b15e743fc 24-Oct-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
configure
configure.in
c5fbf388550ad7511a7424078001316e2c6f401c 24-Oct-2009 Theodore Ts'o <tytso@mit.edu> tune2fs.8: Clarify tune2fs's -i option

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
77f464fb19d2c9c1865879ab1a743870f7c97068 24-Oct-2009 Theodore Ts'o <tytso@mit.edu> dumpe2fs: Fix usage message for -o superblock=<num> and -o blocksize=<num>

Addresses-Launchpad-Bug: #448099

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
95bcea9fc149e349865f9eb30988ad1b4e1c1342 05-Oct-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
configure
configure.in
misc/mke2fs.c
9ed8e5fec226aa53634ed95cbeac736d90a518e5 02-Oct-2009 Eric Sandeen <sandeen@redhat.com> mke2fs: get device topology values from blkid

Handle automatic selection of stride/stripe:

mke2fs 1.41.9 (22-Aug-2009)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=16 blocks, Stripe width=32 blocks
...

And warn on block device misalignment:

mke2fs 1.41.9 (22-Aug-2009)
/dev/sdc1 alignment is offset by 32256 bytes.
This may result in very poor performance, (re)-partitioning suggested.
Proceed anyway? (y,n)

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.c
e1f085079525c0ed4c5ab1f2abedaf9407a7b8da 04-Oct-2009 Theodore Ts'o <tytso@mit.edu> Don't use in-tree header files if using system uuid or blkid libraries

This commit forces the use of the system-provided blkid or uuid header
files if we are using the system-provided blkid or uuid libraries.
This avoids using the in-tree header files with the system libraries.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
484ddc8767ab30ac43a444a2a40de61b99c91eb1 02-Oct-2009 Cristian Rodríguez <crrodriguez@opensuse.org> fix fd leak that causes fsck to fail with "too many open files"

fsck leaks fds when invoked with -R -A -M -a -t noopts=nofail

Signed-off-by: Cristian Rodríguez <crrodriguez@opensuse.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
smounted.c
1d4a493fa213a61bd46f2e55ae5712bc8332a034 09-Sep-2009 Theodore Ts'o <tytso@mit.edu> e2undo: Initialize com_err error tables for the ext2fs library

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2undo.c
4efbac6fed75c29d3d5f1b676b932754653a2ac5 08-Sep-2009 Valerie Aurora Henson <vaurora@redhat.com> Convert uses of super->s_*_blocks_count to ext2fs_*_blocks_count()

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: Nick Dokos <nicholas.dokos@hp.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
2freefrag.c
2image.c
indsuper.c
ke2fs.c
une2fs.c
til.c
a63745e81cbb476b90c75ca3ca60b9ba4be95cae 08-Sep-2009 Valerie Aurora Henson <vaurora@redhat.com> Use ext2fs_file_acl_block() instead of using .i_file_acl directly

This provides support for 48-bit file acl blocks.

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
une2fs.c
7a9f055f0e7aae18daddc4e5fe9c29babab53b90 07-Sep-2009 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Clarify flex_bg feature description

Add a more explicit description of how specifying the flex_bg file
system feature changes the layout of the per-block group metadata.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
une2fs.8.in
73ebdf9972a68416973626c04d97daaa45ecd3df 07-Sep-2009 Theodore Ts'o <tytso@mit.edu> tune2fs.8: Document the flex_bg file system option in the man page

Addresses-Sourceforge-Bug: #2822186

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
1d9b818317b6874f42a63310c913c4de840c377a 07-Sep-2009 Theodore Ts'o <tytso@mit.edu> dumpe2fs: Print more information about the inline journal

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
95fd65bb7fcf84e8d1e207f84b9d5a9f99626a38 24-Aug-2009 Valerie Aurora Henson <vaurora@redhat.com> libext2fs: create generic numeric progress meters and use them

With 64-bit file systems, mke2fs can take a long time to do things
other than write inode tables. I exported the mke2fs numeric progress
meter and used it for allocating group tables and the final file
system flush.

Signed-off-by: Valerie Aurora (Henson) <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
732c8cd58ff30ffae0d3276c411a08920717a46c 08-Sep-2009 Theodore Ts'o <tytso@mit.edu> Use accessor functions fields for bg_flags in the block group descriptors

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
ke2fs.c
24a117abd0340d247befbf7687ffb70547fdf218 08-Sep-2009 Valerie Aurora Henson <vaurora@redhat.com> Convert to use io_channel_read_blk64() and io_channel_write_blk64()

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
2image.c
2undo.c
ke2fs.c
une2fs.c
dc615a21c3c43cd9071926df2633d5b23e2e726b 07-Sep-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
a9e55a1191cf08fd219466009613ed1a04bbaac0 24-Aug-2009 Kyle McMartin <kyle@mcmartin.ca> e4defrag: fix ppc build

ppc glibc seems to be missing sync_file_range, so we fell back
to the local define, and there ppc differs as well, so the
build was failing.

Thanks to Kyle for the patch w/ the tidy solution.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
c1b875979fa8bcc03abc64835f237fd84e8d3339 24-Aug-2009 Theodore Ts'o <tytso@mit.edu> e4defrag: Link with ext2fs library

Since e4defrag uses ext2fs_swab32, it needs to link against the ext2fs
library.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
31b5a2b9612509dd3cfb8da698a652f5b770c4e9 23-Aug-2009 Theodore Ts'o <tytso@mit.edu> mke2fs.conf: Use the feature name "extent" instead of "extents"

The feature name "extent" is documented in mke2fs.conf, although both
"extent" and "extents" are accepted by e2fsprogs.

Addreses-Debian-Bug: #540111

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.conf
ffd8078297a3bee895b5cd6e34641062ef0e02e4 23-Aug-2009 Theodore Ts'o <tytso@mit.edu> e2freefrag: Update manpage to include e2fsprogs version and release date

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.8.in
3c041a514cf65c65e102ff22e0dee2a3fa724873 23-Aug-2009 Valerie Aurora Henson <vaurora@redhat.com> Convert tune2fs, dumpe2fs, and e2image to the new bitmap interface

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
2freefrag.c
2image.c
une2fs.c
154a5d7537c35959aa646ef8f18daed8c9f1a2be 06-Aug-2009 Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> tune2fs: handle bad blocks when resizing inodes

When increasing inode size if we find that the new block
that we needed to increase the inode table size is a bad
block we fail. This make sure we don't end up with a corrupt
file system when doing inode resize on a file system having
bad blocks.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
91fac97938f0ad8c9f0e2c75feec689ca12105e3 06-Aug-2009 Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> tune2fs: Handle fs meta-data blocks during inode resize

With file system formated for RAID arrays we can have inode bitmap
and block bitmap after inode table. Make sure we move them around
properly when doing inode resize.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
a9e5177be906eb9b22a67f7703e1fe10da231c49 06-Aug-2009 Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> tune2fs: Make e2fsprogs handle ENOSPC better with inode resize

This removes the metadata block bitmap and makes the error handling
simpler. It also check for the enospc with the correct number needed
blocks. Also added specific error messages. We need to run e2undo
only if we start modiyfing inode, group desc and inode table.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
334cfccbca2a37a3d8db16761fb90431f69e6030 06-Aug-2009 Eric Sandeen <sandeen@redhat.com> filefrag: don't print extent header on bmap fallback

The extent list header gets printed before we fall back to bmap:

# filefrag -v /mnt/test/bar
Filesystem type is: 58465342
File size of /mnt/test/bar is 12288 (3 blocks, blocksize 4096)
ext logical physical expected length flags <---- HERE
Discontinuity: Block 2 is at 17 (was 16)
/mnt/test/bar: 2 extents found

so delay printing it until we know fiemap is working.

(though ideally it'd be nice to have the same verbose output
regardless of the interface we used, I think).

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
1f3d16deaa11681323b8278bec9b48fee2898e4b 06-Aug-2009 Eric Sandeen <sandeen@redhat.com> filefrag: fix frag count in bmap case

The fragmentation count in the bmap case seems to be
off by one:

/mnt/test/bar: 0 extents found

Addresses-Debian-Bug: #540376

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
5d5e01d7e0549aea6a86b504e8424c891db86b8e 16-Aug-2009 Theodore Ts'o <tytso@mit.edu> filefrag: Add option to force use of the FIBMAP ioctl

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.8.in
ilefrag.c
0d990d0af7208b34e5f1d486b66c950ffd36a37b 10-Aug-2009 Theodore Ts'o <tytso@mit.edu> Add V=1 support when linking e2freefrag in misc/Makefile.in

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
1e48a456b6ca646d66483761e959a81ae78b9156 10-Aug-2009 Theodore Ts'o <tytso@mit.edu> e2freefrag: Take into account the last free extent in the file system

Fix a bug in e2freefrag where if the last free extent is at the very
end of the filesystem, it would be disregarded.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
3e343b8d9af349301a2acd6b4328fb5663deb60c 10-Aug-2009 Theodore Ts'o <tytso@mit.edu> e2freefrag: Fix to work correctly for file systems with 1kb block sizes

If the file system has a non-zero s_first_data_block, as is the case
when the block size is 1kb, e2freefrag would incorrectly try to
reference invalid data blocks in the block allocation bitmap.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
cba91c4b52f9e2fb3afee5513e87d95f9193421a 10-Aug-2009 Theodore Ts'o <tytso@mit.edu> e2freefrag: Do not print chunk-related information by default

Only print information related to chunk sizes if a chunksize is
printed.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.8.in
2freefrag.c
aff2cf8ed2dfd5f453075122738ba6fdacda334e 10-Aug-2009 Theodore Ts'o <tytso@mit.edu> e2freefrag: Clarify e2freefrag's messages

"Free chunks" is confusing since it has nothing to do with the
chunksize; use "free extents" instead.

Also add a missing newline in an error message.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.8.in
2freefrag.c
137a7dc05c80cd4e0a4e7aeb21ec79f800a9eecd 10-Aug-2009 Theodore Ts'o <tytso@mit.edu> e2freefrag: Initialize the ext2 error table

... so error messages are printed correctly

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2freefrag.c
463e732777d970bb8f96c7e0885c7393141c0d2d 05-Aug-2009 Valerie Aurora Henson <vaurora@redhat.com> Convert mke2fs to new bitmap interface

Signed-off-by: Valerie Aurora Henson <vaurora@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
1d72214658d339bd4725fe74aa42397df419e914 22-Aug-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
88fca201aca752cbb7a981e1fe1b2a875cc29833 22-Aug-2009 Theodore Ts'o <tytso@mit.edu> Move declaration of FS_IOC_FIEMAP ioctl to fiemap.h

This helps e4defrag compile on systems where the system header files
don't yet define FS_IOC_FIEMAP.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
ilefrag.c
baa8dbeb4e4acef9563d8aac61c01ec7c3a8c8ea 02-Aug-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:
misc/Makefile.in
4f1d0e8608ddf488316dffbe4cd9993bf3b22084 27-Jul-2009 Eric Sandeen <sandeen@redhat.com> e4defrag: remove a lot of cruft

e4defrag.c had a lot of stuff copied into it from other
places, redefinitions of existing interfaces, etc.

We should be able to remove most of this, as the tool only
works on recent kernels anyway, we should just pick up
definitions from recent kernel headers whenever possible.

I've left the local definitions of fallocate, fadvise
(changed to posix_fadvise) and sync_file_range, and
wrapped them in #ifdef configure-time tests - though
really it seems like only fallocate should be necessary
by now, and perhaps the others can be dropped.

We still need some Makefile work so that it won't try to
build e4defrag if the right pieces aren't there (and
if the local definitions won't work...)

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
ad751f11ecab50ec78a4b50ae95af3e7b2c4f06a 25-Jul-2009 Andreas Dilger <adilger@sun.com> e2freefrag: Improve output to include be more like xfs_db's freesp -s

Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
2freefrag.8.in
2freefrag.c
2freefrag.h
0b2681f45b7f67eedfea6411eddbb858699ae553 22-Jul-2009 Theodore Ts'o <tytso@mit.edu> e2freefrag: New program which displays how fragmented the free space is

Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
2freefrag.8.in
2freefrag.c
2freefrag.h
d0c537748d5a9799dd0658b0a5cceaafc28084bb 19-Jul-2009 Theodore Ts'o <tytso@mit.edu> mke2fs: Add strings.h include for strcasecmp() declaration

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
bbbb81c1d9277e9fadce42934c2b1cf7bc9a97d5 15-Jul-2009 Eric Sandeen <sandeen@redhat.com> filefrag: fix it so it works in the bmap fallback case.

It looks like some debugging crept in?

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.c
3c77b8ec54247f566c7912e1c5733147afeeacac 12-Jul-2009 Theodore Ts'o <tytso@mit.edu> Fix miscellaneous gcc -Wall warnings in blkid and tune2fs

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
lkid.c
une2fs.c
9d4bade4ac211e9140e1da93b906c0025336eaef 12-Jul-2009 Theodore Ts'o <tytso@mit.edu> filefrag: Restore "perfect" number of extents calculation for ext2/ext3

The FIEMAP support added in e2fsprogs 1.41.6 broke the "perfection
would be XXX expects" calculation restore it.

Also fix some gcc -Wall warnings as well. (Cleaning up gcc -Wall is
what caused me to notice this regression).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
f97ea10fde6d8bee670d388f02cf9524b8f2d7da 02-Jul-2009 Peng Tao <bergwolf@gmail.com> filefrag: fix fm_start in filefrag_fiemap loop

When used with -v and the targeted file has more than 144
extents(double of the length of fm_extents array provided by buf),
filefrag_fiemap loops and calls fiemap ioctl() multiple times to
calculate the actual number of extents in a file. Each call to fiemap
ioctl() uses fm_start as the starting logical offset. The patch fixes
fm_start in each loop( except for the first one) and makes the extent
calculation correct for files with more that 144 extents.

To produce the problem, first run filefrag -v on a highly fragmented
file. Then change the buf size in filefrag_fiemap to make it large
enough to have all the extent mapped in a single loop and run filefrag
-v after recompiling. The former will produce a much smaller extent
count because of the false fm_start used in the loop. And the two will
produce different extent output since the 145th extent.

Signed-off-by: Peng Tao <bergwolf@gmail.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
ca4d95a9328af89a9f8fa490fc37115eb80524ba 05-Jun-2009 Peng Tao <bergwolf@gmail.com> remove bogus "-e" option from filefrag manpage

filefrag doesn't support "-e" option, so clean it up in the manpage.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ilefrag.8.in
c13351f6c53f175696044c0203bb3009af606c64 02-Jul-2009 Theodore Ts'o <tytso@mit.edu> Add support for configure --enable-verbose-makecmds

Some people don't want to see the concise "kernel-style" make output.
This configure option allows build engines that want to see the full
set of commands executed by the makefile to get what they want. Most
people will find this more distracting than useful, unless they need
to debug the Makefiles.

(It is not necessary to rerun configure to enable this verbose make
output temprarily; if a developer wants to do a quick debug of a
directory's makefile, he or she can simply edit the definition of the
$(E) and $(Q) variables in the Makefile; instructions can be found in
the MCONFIG file which is included in at the beginning of every
Makefile.)

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
a6a1c0815c045fd12f65546e16d495338097f32a 02-Jul-2009 Theodore Ts'o <tytso@mit.edu> Fix Makefile dependencies for libcom_err

The e2fsprogs makefiles were using the same Makefile variable
LIBCOM_ERR for the link-line arguments as well as the dependencies.
Since LIBCOM_ERR can now include non-file arguments such as
"-lpthread", we need to use a separate DEPLIBCOM_ERR variable that
only has build file dependencies.

Do the same thing for STATIC_LIBCOM_ERR and PROFILED_LIBCOM_ERR.

Addresses-Sourceforge-Patches: #2813809

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
6013bbf596fe7fc20e53d5c7fb5cc37e48cc0136 01-Jul-2009 Theodore Ts'o <tytso@mit.edu> Do not build and install uuidgen from if the uuid library was disabled.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
caa6003b6419d001593478a46fb4cbf8e502e818 30-Jun-2009 Theodore Ts'o <tytso@mit.edu> libuuid, uuidd: Avoid infinite loop while reading from the socket fd

If for some reason the uuidd daemon or the process calling uuidd
exited unexpectely, the read_all() function would end up looping
forever, either in uuidd or in libuuid. Fix this terminating the loop
if no data can be read after five tries to read from the file
descriptor.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.c
2842bb31880643f270e79622769def0f9b1fac59 30-Jun-2009 Theodore Ts'o <tytso@mit.edu> uuidd: Avoid closing the server socket when calling create_daemon()

In the event that file descriptors 0-2 are closed when uuidd is
started, the server socket could be created as a file descriptor that
will get closed when create_daemon() tries detaching the uuidd daemon
from its controlling tty. Avoid this case by using dup(2).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.c
427f95f87939e62b9903453a6b38b7f11c11d4c8 29-Jun-2009 Theodore Ts'o <tytso@mit.edu> logsave: Don't send the ^A and ^B delimiters to the console

Some terminal programs may print wierd characters when they see the
\001 or \002 characters. So filter them out if the -s option
(skip_mode) is enabled.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ogsave.c
c510d6f2684f2e2fa05c0de7bdaee954743546f8 29-Jun-2009 Theodore Ts'o <tytso@mit.edu> badblocks: Make sure the list of bad blocks found is flushed on interrupt

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
4001b8a8fff7746aada6f399eaa7962fd1a53ded 29-Jun-2009 Theodore Ts'o <tytso@mit.edu> badblocks.8: Alphabetize options in badblocks man page

... to make it easier to find a specific option in the man page.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.8.in
e3dee8c91f49ad1e0ed18185dee9f7a08628e3ce 29-Jun-2009 Theodore Ts'o <tytso@mit.edu> badblocks.8: Update description of the -s option in badblocks man page

Addresses-Debian-Bug: #523063

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.8.in
83bfa27d3272631ef26f569471845c3755428134 29-Jun-2009 Theodore Ts'o <tytso@mit.edu> badblocks: Print the currently tested block number when interrupted with ^C

This can be useful for the user who wishes to restart the badblocks
program after interrupting it.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
1b600bfa48cf55571e342208d6baa1c832f34bb1 19-Jun-2009 Eric Sandeen <sandeen@redhat.com> lsattr: exit with a non-zero status on errors

lsattr doesn't return an error if you point it at a file that
doesn't exist.

This is slightly trickier because it can take more than one
file as an arg, but ls seems to report an error if any occurred,
so this does the same, it'll report the last error that was
encountered.

Addresses-RedHat-Bugzilla: #489841
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
sattr.c
8a480350952f6f0fdbce54326b6d847e66368897 22-Jun-2009 Theodore Ts'o <tytso@mit.edu> Fix encoding for rec_len in directories for >= 64k blocksize file systems

Previously e2fsprogs interpreted 0 for a rec_len of 65536 (which could
occur if the directory block is completely empty in 64k blocksize
filesystems), while the kernel interpreted 65535 to mean 65536. The
kernel will accept both to mean 65536, and encodes 65535 to be 65536.
This commit changes e2fsprogs to match.

We add the encoding agreed upon for 128k and 256k filesystems, but we
don't enable support for these larger block sizes, since they haven't
been fully tested.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
1acde2b2776fca4d9386a04909296c2e6b11f242 15-Jun-2009 Theodore Ts'o <tytso@mit.edu> dumpe2fs, tune2fs: fix miscellaneous memory leaks

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
une2fs.c
3b5126de44f8215ae572853415b0b3097cdfc6a2 02-Jun-2009 Theodore Ts'o <tytso@mit.edu> badblocks: Remove 4096 blocksize limit

There is no need to prohibit the use of block sizes larger than 4k in
the badblocks program.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
1384cc64b548b6c71fb8cd57a77e69e43dbfb8ec 02-Jun-2009 Theodore Ts'o <tytso@mit.edu> Fix spelling mistake in the man page for chattr

Addresses-Debian-Bug: #531385

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hattr.1.in
e78968f7a42fb1fa75c356dd323d957b307b887f 02-Jun-2009 Theodore Ts'o <tytso@mit.edu> filefrag: Fix error checking for the fiemap ioctl

Thanks to Peng Tao for reporting this problem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
5635e75c918866849746cf50d1a9a301c241fed4 21-Jul-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
6a0ee32dcb0984b50c3afb9234706e69b3e6b9d3 12-Jul-2009 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
ae5074600414f0c0111f2a4090edef0f106daab9 10-Jul-2009 Kazuya Mio <k-mio@sx.jp.nec.com> e4defrag: Fix compile warnings

When compile e2fsprogs git tree with gcc-wall option, we get some warnings about
e4defrag. This patch fixes them.

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4defrag.c
1d21f4bd8ddf26281eaad3028feedb08c8401408 09-Jul-2009 Theodore Ts'o <tytso@mit.edu> e4defrag: Fix a core dump when trying to defrag a file with no blocks

Signed-off-by Akira Fujita <a-fujita@rs.jp.nec.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
4defrag.c
4836459a3fe8ff208a7bf21e28e4648bddc76440 09-Jul-2009 Theodore Ts'o <tytso@mit.edu> Add e4defrag to the misc directory

To make it easier to maintain changes and fixes to the e4defrag
program, check it into the e2fsprogs source tree.

Signed-off-by: Akira Fujita <a-fujita@rs.jp.nec.com>
Signed-off-by: Takashi Sato <t-sato@yk.jp.nec.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
4defrag.8.in
4defrag.c
4f858546e1c3c452f400a34198b10cb7a1ed2760 30-May-2009 Theodore Ts'o <tytso@mit.edu> Update man pages to include ext4 in the synposis, instead of just "ext2/ext3"

The e2fsprogs programs have historically just said that they operate
on ext2 and ext3 file system in their man pages. Update them to say
that they also operate on ext4 file systems.

Addresses-Launchpad-bug: #381854

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hattr.1.in
umpe2fs.8.in
2image.8.in
2label.8.in
ke2fs.8.in
une2fs.8.in
93aa0246993dfb0e593c66f7947a2b78e24c9f21 30-May-2009 Theodore Ts'o <tytso@mit.edu> mke2fs.8: Fix man page to use hyphens instead of minus signs for options

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
312c2a404c1af85b88b855687b6a30cd24ca9e34 28-May-2009 Eric Sandeen <sandeen@redhat.com> chattr: manpage tidyups

Tidy up the chattr(1) manpage to completely document all
available options, and differentiate those which are read-only
early in the manpage as well.

* Remove "I" from settable attribute list
* add "e" to 2nd list of settable attributes & descriptions
* Note that h/E/I/X/Z are readonly
* Correct "H" to "h" for huge file attribute description
* fix long_name for indexed directory in flags_array

Addresses-Red-Hat-Bugzilla: BZ#502971

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
hattr.1.in
7c8da6e3768bc7cc7ffde72b4f87fd2ec3c7c7e7 05-Jan-2009 Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> chattr: Add extent conversion support

This patch adds new option, +e to chattr. The +e option
is used to convert the ext3 format (non extent) file
to ext4 (extent) format. This can be used to migrate
the ext3 file system to ext4 file system.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
hattr.1.in
hattr.c
e62847c5db56ebdab8446defd718ec42e6b48cac 03-May-2009 Kalpak Shah <kalpak.shah@sun.com> filefrag: Add support to use the FIEMAP ioctl

The FIEMAP ioctl is more efficient and doesn't require root
privileges. So if it is available, use it in preference to repeated
FIBMAP calls.

Signed-off-by: Kalpak Shah <kalpak.shah@sun.com>
Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.8.in
ilefrag.c
de7a86e23c6113f386dc3500304cd8a37b91bfa8 23-Apr-2009 Theodore Ts'o <tytso@mit.edu> mke2fs.8: Clarify in the man page that fs defaults come from mke2fs.conf

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
9266fc7a2fe49c6de871016772a2120830e183a9 22-Apr-2009 Theodore Ts'o <tytso@mit.edu> tune2fs: Fix format string warnings

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
6e6b71d697c9a66ab19e67ca2cad10168477a107 22-Apr-2009 Theodore Ts'o <tytso@mit.edu> logsave: Fix warn_unused_result warnings from gcc

Fixed a potential bug where by partial returns from the write(2)
system call could some bytes to be lost when writing to the log file.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ogsave.c
14b596d40997c7e55ec8928bd222787f96808a2b 22-Apr-2009 Theodore Ts'o <tytso@mit.edu> configure.in: add --disable-libblkid option

Add an option to switch between the private (in-tree) libblkid and
public (in-system installed) library. The private version is still
enabled by default.

If --disable-libblkid is specified the findfs(8) program, which is a
variant of tune2fs, is also not built or installed.

Signed-off-by: Karel Zak <kzak@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
une2fs.c
27c3e539b65e1606a72c79e3b1c154b77daeb5e5 22-Apr-2009 Theodore Ts'o <tytso@mit.edu> Explain the significance of the 'T' attribute in the chattr.1 man page

Addresses-Debian-Bug: #365619

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hattr.1.in
c927bec16f26c9ed4303a6c1c3a7403b06a6bcec 18-Apr-2009 Theodore Ts'o <tytso@mit.edu> tune2fs: Clarify manpage regarding how to see the current settings

Addresses-Debian-Bug: #515693

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
f203bbdbec396e3279bf249ae9be96e6b00bf6f2 18-Apr-2009 Theodore Ts'o <tytso@mit.edu> e2fsck, tune2fs: Fix Hurd compilation problem due to lack of PATH_MAX

Hurd doesn't define PATH_MAX, so calculate the exact size needed for
the tdb filename, and allocate it dynamically.

Addresses-Debian-Bug: #521602

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
38e7385e74258301d0fc6604c0e259c2807f8357 18-Apr-2009 Theodore Ts'o <tytso@mit.edu> uuidd: Fix warn_unused_result warnings from gcc

Fixed a potential bug caused by partial returns from the write system
call (especially possible for network connections).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.c
a620baddee647faf42c49ee2e04ee3f667149d68 31-Mar-2009 Theodore Ts'o <tytso@mit.edu> mke2fs: Don't try to create the journal in super-only mode

Since we aren't initializing the inode table, creating the journal
will just fail.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
45e338f5332a54295893dba2e32cc093d1316f60 23-Feb-2009 Jim Meyering <jim@meyering.net> remove useless if-before-free tests

In case you're wondering about whether this change is safe from a
portability standpoint, fear not. This has been beaten to death
in other forums. Here are a few threads:

http://thread.gmane.org/gmane.comp.version-control.git/74187
http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/12712
http://thread.gmane.org/gmane.emacs.devel/98144
http://thread.gmane.org/gmane.comp.lib.glibc.alpha/13092

There has been debate about whether it's a good idea from a
performance standpoint, too, but imho you'll have a hard time
finding an instance where this sort of change induces a
measurable performance penalty. If you do, please let me know.

Signed-off-by: Jim Meyering <meyering@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.c
lkid.c
2initrd_helper.c
sck.c
ke2fs.c
une2fs.c
eb630fd8708ae433e55e384079c08e0f0f040d22 25-Feb-2009 Eric Sandeen <sandeen@redhat.com> e2fsprogs: blkid.static make target

Nice for testing w/o needing to swizzle around system
libraries...

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
akefile.in
8d8224550c1f5b5c77afbf5acd95f73979276a0a 06-Mar-2009 Theodore Ts'o <tytso@mit.edu> mke2fs, tune2fs: Do not allow the reserved_ratio to be negative

Add a check to make sure the argument to the -m option (which
specifies the reserved ratio) is greater than zero.

Addresses-Debian-Bug: #517015

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
b7c5b4030870b31d73019d9d9ec55d550772590b 06-Mar-2009 Theodore Ts'o <tytso@mit.edu> Add support for a new superblock field: s_kbytes_written

This field tracks the lifetime amount of writes to the filesystem. It
will be updated by the kernel as well as by e2fsprogs programs which
write to the filesystem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
37d17a65ecb4615546b417038190a41bafca7c51 20-Jan-2009 Theodore Ts'o <tytso@mit.edu> mke2fs: If the device size is exactly 16TB treat it as if it had 16TB - 1 block

This allows users who create a 16TB LVM to have mke2fs do (mostly) the
right thing automatcally.
ke2fs.c
b0afdda1bc044026336009576fbe6b72884140cb 20-Jan-2009 Theodore Ts'o <tytso@mit.edu> mke2fs: Add -U option to specify the UUID for the new filesystem

Patch integrated from Mandriva

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
1a71bd42003d87ff96e3e0e8c293b44c8783e9ba 20-Jan-2009 Theodore Ts'o <tytso@mit.edu> mke2fs: Treat an argv[0] of "mke3fs" the same as "mkfs.ext3"

Mandriva apparently uses "mke3fs" as an alias for mkfs.ext3. I'm not
particularly fond of that practice, but we'll include it as legacy
support.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
31f1815fa9a1b7ca41afdf6d364a6474eba8b6d1 20-Jan-2009 Theodore Ts'o <tytso@mit.edu> tune2fs: Fix tune2fs -I so it won't corrupt RAID filesystems

If a filesystem is built with the stride extended-option (which is
often used in RAID filesystems to make sure the block and inode
allocation bitmaps don't end up hitting one disk platter harder than
the rest), this can cause tune2fs -I to corrupt the filesystem because
it fails to handle the case where the allocation bitmaps are located
after the inode table, where the inode table needs to grow. Handle
this case correctly.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
ec43da2f35c54589e8aa0663d9cf44f86895242a 20-Jan-2009 Theodore Ts'o <tytso@mit.edu> tune2fs: General (whitespace) cleanup

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
5bf81baea01a19ce48daee5db07f08c6a9655ab5 20-Jan-2009 Theodore Ts'o <tytso@mit.edu> tune2fs: Don't allow the -I option if the flex_bg feature is enabled

With flex_bg usually the inode table for most block groups are packed
right against each other, so expanding the inode table size needs
special handling that's not currently in tune2fs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
a11d0746b4fb2ac41dcb5e7acf31942b1e8925e2 15-Nov-2008 Theodore Ts'o <tytso@mit.edu> dumpe2fs: Only print inline journal information if the journal is internal

Currently dumpe2fs displays an error if run on a filesystem with an
external journal.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
ad64399d156c7b7d0a04a86e4b23d85347e0288d 15-Nov-2008 Theodore Ts'o <tytso@mit.edu> Add support to build profiled binaries in the misc directory

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
27c6de45a4187a348ec0960472d4a113ee6ea425 15-Nov-2008 Theodore Ts'o <tytso@mit.edu> tune2fs: Fix inefficient O(n**2) algorithms when expanding the inode size

When running "tune2fs -I 256" on moderate to large filesystems, the
time required to run tune2fs can take many hours (20+ before some
users gave up in disgust). This was due to some O(n**2) and O(n*m)
algorithms in move_block() and inode_scan_and_fix(), respectively.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
9d4a4dc2870c46c74f815ec2bebe10b4701accf2 14-Nov-2008 Theodore Ts'o <tytso@mit.edu> tune2fs: Update the block group checksums when changing the UUID

Since the block group checksums depend on the UUID, we need to update
the block group checksums when setting the UUID. We only do so if all
of the checksums are correct, however.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
08c8b1ab342f624b48e5fe517be5a140ca8b92de 02-Oct-2008 Theodore Ts'o <tytso@mit.edu> mke2fs.8: Add an explanation of how the -t and -O options interact

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
42e572b5b6aa71a567219265686c90eabff3fc31 02-Oct-2008 Theodore Ts'o <tytso@mit.edu> badblocks: Fix progress output for "badblocks -sw /dev/XXX"

Always initialize the starting time so that badblocks -sw works.
Thanks Jelle de Jong (jelledejong at powercraft.nl) for reporting this
bug.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
711d3846a03d97a340b261f7524b83ec09c7cbe3 07-Sep-2008 Theodore Ts'o <tytso@mit.edu> Fix various spelling mistakes in various man pages

Thanks to A. Costa for pointing these out.

Addresses-Debian-Bug: #498100
Addresses-Debian-Bug: #498101
Addresses-Debian-Bug: #498102
Addresses-Debian-Bug: #498103

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.conf.5.in
une2fs.8.in
504f7a2981306032fff7084c0d90beaa45872ee0 04-Sep-2008 Manish Katiyar <mkatiyar@gmail.com> badblocks: Display time and percentage complete in verbose mode.

Addresses-Debian-Bug: #429739.

Signed-off-by: "Manish Katiyar" <mkatiyar@gmail.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
29551cacca6df9cd8bcf7223ae4383a27fd23557 05-Sep-2008 Theodore Ts'o <tytso@mit.edu> Fix e2initrd_helper, blkid, and fsck from linking with unneeded libraries

... especially when using ELF shared libraries. We only need to link
with a library if the executable uses that library directly.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
2initrd_helper.c
55da987650b36a1b910a5968f7d83a190827f8bb 03-Sep-2008 Theodore Ts'o <tytso@mit.edu> Improve ELF shared library handling

Pass in -rpath-link option to the linker so that blkid will build
correctly on systems that don't have libcom_err.so.2 installed.

Fix debugfs to only try to link with -ldl when building without shared
libraries; with ELF shared libraries, the library which requires -ldl
(libss.so) can required the library dependency itself.

Fix how we build tune2fs.static so that we use @LDFLAG_STATIC@, via
$(LDFLAGS_STATIC), instead of hard-coding the use of -static.

Addresses-Sourceforge-Bug: #2088537

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
3b4a66cfb688af9fa18e6f73ad9349a3d0a972d9 03-Sep-2008 Theodore Ts'o <tytso@mit.edu> Fix bold font specifer in mke2fs.8 man page

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
22301afb01f3059a2b1baf68abff26aaf6db7c9e 02-Sep-2008 Theodore Ts'o <tytso@mit.edu> badblocks: Open the device with O_LARGEFILE

Linux doesn't enforce the Large File Support API requirements on block
devices, but in case someone wants to run badblocks on a normal file,
open the device file with O_LARGEFILE.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
a8fbdc09507c28510899eee408e6b11b3009c6c3 01-Sep-2008 Theodore Ts'o <tytso@mit.edu> filefrag: Fix calculation of ideal number of extents

Fix calculation of the ideal number of extents needed for a file to
take into account sparse files.

In addition, suppress the "this file is extent-based" message unless
verbose mode is enabled.

Addresses-Debian-Bug: #458306

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ilefrag.c
f38cf3cb34addaa53d1f855d7607b151082a4229 01-Sep-2008 Theodore Ts'o <tytso@mit.edu> Only use the test_io manager if the right environment variables are set

In order to make it possible for the test_io manager to be compiled in
by default, make all of the programs that might try to use it to only
do so if the environment variables TEST_IO_FLAGS and TEST_IO_DEBUG are
set.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
2initrd_helper.c
ke2fs.c
une2fs.c
d5f57d9553d4c855e282dbd3edf1ad85ab716d33 30-Aug-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Allow the default hash algorithm in mke2fs.conf

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf.5.in
10ff68d42d06953c35459a0d949862e6aafa19f8 30-Aug-2008 Theodore Ts'o <tytso@mit.edu> tune2fs: Add support for setting the default hash algorithm for htree

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
une2fs.c
d1070d91b4de8438dc78c034283baaa19b31d25e 29-Aug-2008 Theodore Ts'o <tytso@mit.edu> tune2fs, mke2fs: Change default directory hash algorithm to half_md4

The half_md4 algorithm is faster and more collision resistant. Let's
switch to it as the default.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
efc6f628e15de95bcd13e4f0ee223cb42115d520 28-Aug-2008 Theodore Ts'o <tytso@mit.edu> Remove trailing whitespace for the entire source tree

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
ase_device.c
lkid.c
hattr.c
umpe2fs.c
2image.c
2initrd_helper.c
2label.c
ilefrag.c
indsuper.c
sck.c
ogsave.c
sattr.c
ke2fs.c
klost+found.c
artinfo.c
une2fs.c
til.c
til.h
uidd.c
uidgen.c
5dd77dbe5a0ac6d78c1c6441fae4087be56d9088 26-Aug-2008 Theodore Ts'o <tytso@mit.edu> Add support for with empty directory blocks in 64k blocksize filesystems

The rec_len field in the directory entry is 16 bits, so if the
filesystem is completely empty, rec_len of 0 is used to designate
65536, for the case where the directory entry takes the entire 64k
block.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
a5e14ead2e2a594c51c5ecac1fe318a331860f50 25-Aug-2008 Andreas Dilger <adilger@sun.com> Document the extent and huge file flags in the chattr.1.in man page

Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hattr.1.in
a26ba650a8abc3ae7bfe5e0df09c5abb37fd2ff6 24-Aug-2008 Theodore Ts'o <tytso@mit.edu> Fix mke2fs man page to escape all minus signs

Option specifiers must be escaped so the are printed as minus signs
(U+002D) instead of hyphens (U+2010). Hence "mke2fs -t ext4" must be
expressed as "mke2fs \-t ext4" instead.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
bad89b2af3ffa43c9570d93c3d9d9adacc194f9a 23-Aug-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Issue a warning if the mke2fs.conf file wasn't updated

Many people are forgetting to update their mke2fs.conf file, and this
means that filesystems aren't getting created with the proper features
enabled. So detect this case and issue a warning.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
954bee3414d7142ad78363c8bbf667365c1126db 31-Jul-2008 Benno Schulenberg <bensberg@justemail.net> blkid: On the man page, show option arguments in the descriptions.

Also rephrase two sentences and add a comma or two.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
lkid.8.in
98794d0e0a90abc773b9a4c01d540051a5933bc1 31-Jul-2008 Benno Schulenberg <bensberg@justemail.net> mke2fs: Fix several typos in the man page.

Also add the missing argument of the -M option, replace the mistaken
[libdefaults] section header with [defaults], and slightly rephrase
two or three sentences.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
d887f88d220317aa05e6007be9eb19a3b654ece2 27-Jul-2008 Theodore Ts'o <tytso@mit.edu> tune2fs: Improve the error messages for tune2fs -I

If the current inode size is less than or equal to the requested inode
size, either explain that shrinking the inode size is not supported,
or that the inode is already the requested size. Also, open the
filesystem provisionally first to do the inode size check and don't
setup up the undo log until we know that we're actually going to
perform the inode resizing operation.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
7087bbecceba43248953b57a46a6a8be700ee9c7 25-Jul-2008 Theodore Ts'o <tytso@mit.edu> mke2fs/tune2fs: Fix max journal size in message to be consistent/correct

Addresses-Debian-Bug: #491620

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
til.c
fe365fd8eff51c474394e9c02c177121ff727510 23-Jul-2008 Theodore Ts'o <tytso@mit.edu> partinfo: Fix usage message

Thanks to Göran Uddeborg for pointing this out.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
artinfo.c
7a0516a385d87a508843b21a1932b689697d9ffa 17-Jul-2008 Benno Schulenberg <bensberg@justemail.net> tune2fs: Delete a stray word from a comment.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
une2fs.c
cca95a827fbac56a8f17bb2900a44d6fb34fbe90 17-Jul-2008 Benno Schulenberg <bensberg@justemail.net> partinfo: Print clearer error messages.

Also use complete sentences, instead of separate words filled
into a phrase. And gettextize the main output message.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
artinfo.c
ad39bcd9e3b0fe98c33825db6dfdf343463e388c 17-Jul-2008 Benno Schulenberg <bensberg@justemail.net> badblocks: Insert a missing "\n" in the usage string.

Take the opportunity to wrap the string to be more readable,
and sort the options somewhat alphabetically.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.c
577b5c436f1531d4d14bcba1bc10e230dafc9fd1 17-Jul-2008 Benno Schulenberg <bensberg@justemail.net> e2undo, tune2fs: Report the correct name for the undo program.

Signed-off-by: Benno Schulenberg <bensberg@justemail.net>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2undo.c
une2fs.c
92fb8545b1f9bcf104075ec813ebdf5ddb27e889 19-Jul-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Fix enforcement of no features for revision 0 filesystems

Fix typo; instead of checking for s_feature_incompat twice, add check
for s_feature_ro_compat.

Thanks to Benno Schulenberg for noticing this problem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
df9c01b1449ccbaa9283486f0f6a50085043036b 17-Jul-2008 Theodore Ts'o <tytso@mit.edu> Fix missing space typo's in partinfo and resize2fs

These were caused by multi-line strings missing a space at the line
break. Thanks to translator Phillipp Thomas for noticing these typo's.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
artinfo.c
03ce7afaba3f29c65766c6922d6c276b28b4bf1c 16-Jul-2008 Theodore Ts'o <tytso@mit.edu> Add more intelligent handling of the mke2fs.conf installation process

For people who are compiling mke2fs for their own use outside of a
package manager, we need to make sure the system /etc/mke2fs.conf is
sufficiently up-to-date that it won't cause problems, but at the same
time we don't want to blow away any user-specific customizations.

So if /etc/mk2fs.conf exists, but does not mention ext4dev, we will
move it aside to /etc/mke2fs.conf.e2fsprogs-old and then install the
new mke2fs.conf. If the /etc/mke2fs.conf file exists but does mention
ext4dev, we install the new mke2fs.conf file as
/etc/mke2fs.conf.e2fsprogs-new. In both cases we print a warning
mesage to the user so they can manually update /etc/mke2fs.conf with
any changes if they so desire.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
363289510c9f58bf31cd914e877b066afb2fd72d 15-Jul-2008 Theodore Ts'o <tytso@mit.edu> Add an tune2fs.static target in misc/Makefile.in

This is added as a convenience for distro's that need a static tune2fs
for whatever reason.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
36f4c4080206f5ad4df37c3cb77f20df2f062266 14-Jul-2008 Theodore Ts'o <tytso@mit.edu> blkid: Fix portability issue if TIOCGSIZE and TIOCGWINSZ are present

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
lkid.c
c13ab4fa7aa2ddd3daa66c353ad41422265de9c3 13-Jul-2008 Theodore Ts'o <tytso@mit.edu> badblocks: If nanosleep() does not exist, try using usleep() instead

For portability on systems that don't have nanosleep().

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
38dd11f5953eef5d24f977801857d5df3e817de2 13-Jul-2008 Theodore Ts'o <tytso@mit.edu> e2undo: Don't use __FUNCTION__ for portability reasons

Solaris C99 apparently doesn't support it. We should report the
program name, not the internal function name, when printing an error
in any case.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2undo.c
ebabf2ad6d19af5c674b624bafe619dedbc94403 13-Jul-2008 Theodore Ts'o <tytso@mit.edu> Define _XOPEN_SOURCE to 600 consistently for Solaris C99 support

Solaris's header files are very picky about which C compiler can be
used for SUSv3 conformance. Use of C99 is not compatible with SUSv2
(_XOPEN_SOURCE=500), and C89 is not compatible with SUSv3
(_XOPEN_SOURCE=600). Since we need some SUSv3 functions, consistently
use SUSv3 so that e2fsprogs will build on Solaris using c99.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
ogsave.c
ke2fs.c
une2fs.c
3d05802f925239f516f05b048809281e9e13b3a2 13-Jul-2008 Theodore Ts'o <tytso@mit.edu> blkid: Add new option -L which pretty-prints the device list

Also accessed via -o list, this new output format is much more
user-friendly and lists whether or not a particular device is mounted.

Addresses-Debian-Bug #490527

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
lkid.8.in
lkid.c
2be8fe43976537b75a6ee154ff3ba47e538b55fb 10-Jul-2008 Theodore Ts'o <tytso@mit.edu> mke2fs,tune2fs: Enable huge_file, dir_nlink, and extra_isize features

Also change mke2fs.conf to enable huge_file,dir_nlink,extra_isize, and
uninit_bg by default for ext4 filesystems, and enable extra_isize in
the library as well.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf
une2fs.c
f56f32b0a505e34712c8b8fb908dffb616743726 10-Jul-2008 Theodore Ts'o <tytso@mit.edu> badblocks: Use standard terminology for first/last block

Use consistent and standard terminology for the starting and ending
blocks for the badblocks test in the man page and in the messages
printed by the program.

Addresses-Debian-Bug: #440983, #440981

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.8.in
adblocks.c
2ac7f06611ea3f7b1fbbc3a778e9bcdab1649a0e 10-Jul-2008 Theodore Ts'o <tytso@mit.edu> Fix incorrect definition of stripe-width in mke2fs man page

Also clarified the definition of the stride-size extended option as
well.

Addresses-Debian-Bug: #487849

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
7f5601e5b5dd733c23ca73f965d37d49547150ab 10-Jul-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Dumb down filesystems for GNU Hurd

The Hurd only supports filesystems with a blocksize of 4096 bytes, and
128 byte inodes. It also doesn't understand the journal. So force
the defaults to be something which the Hurd can handle if "-o hurd" is
specified on the command line.

Addresses-Debian-Bug: #471977

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf
f8df04bcc638585ee73cb795153f4456279b9b85 07-Jul-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Print a better error msg when ext2fs_get_device_size() returns EFBIG

Print a message when mke2fs uses a default blocksize from an external
journal device, and print a more self-explanatory message so that if
that blocksize is used and ext2fs_get_device_size() returns EFBIG, the
user has a better chance of understanding why mke2fs issued that error
message.

Addresses-Debian-Bug: #488663

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
b4d5105b2527a5279cf5b885b957e1e07a53e725 07-Jul-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Use a fs_type of 'journal' when creating an external journal

If creating a an external journal via "mke2fs -O journal_dev",
override the fs_type list (i.e., "ext2", "small"), and replace it with
an fs_type list of "journal". This will prevent external journals
smaller than 512MB from being created with a block size of 1k, which
is not very useful and leads to much confusion.

Addresses-Debian-Bug: #488663

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
69d813520cf14f5700c38c82b5c147aa3756bbd9 07-Jul-2008 Theodore Ts'o <tytso@mit.edu> badblocks: Fix crash when lots of -t patterns given

With more than 8 -t patterns given, badblocks will overwrite the
t_patts array boundary due to realloc not taking into account the size
of an int. Oops.

Addresses-Debian-Bug: 487298

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
79e62409b3a247e258d9e9206484ed8f193a183e 07-Jul-2008 Eric Sandeen <sandeen@redhat.com> Clean up some trivial build warnings

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
2undo.c
ke2fs.c
772b89d34212e4b36c2025c80304e166bc25a2f3 21-Jun-2008 Eric Sandeen <sandeen@redhat.com> blkid: use list_for_each_safe in garbage collection

We need to use list_for_each_safe in case a device gets removed from
the list during garbage collection.

Also make the manpage slightly more informative about
what the -g garbage collection option does.

Addresses-Debian-Bug: #487758, #487783

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
lkid.8.in
edf261f6f859ed0ff3c16803ab61a78373089ad8 18-Jun-2008 Iustin Pop <iustin@google.com> badblocks: fix a bug in the read throttling

The previous patch was missing an #include and thus the compiler didn't
catch the (now obvious) error.

Signed-off-by: Iustin Pop <iustin@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.c
71ff129e9f5c942ce4d2eb20e269100d15c1a6ae 18-Jun-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'

Conflicts:

README
resize/online.c
version.h
9ff8ece57d46a9419fc60057547810824881bb45 18-Jun-2008 Theodore Ts'o <tytso@mit.edu> mke2fs, tune2fs, resize2fs: Use floating point to calculate percentages

When calculating the number reserved blocks, use floating point for
better accuracy, since for big filesystems it really makes a
difference. In addition, mke2fs and tune2fs accepts a floating point
number from the user, so they should provide that level of accuracy.

Addresses-Debian-Bug: #452639

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
264f64a5a8bb7225ab8513de6f1c6ac9e7448790 12-Jun-2008 Iustin Pop <iustin@google.com> badblocks: implement read throttling

Currently, badblocks will read as fast as it can from the drive. While
this is what one wants usually, if badblocks is run in read-only mode on
a drive that is in use, it will greatly degrade the other users of this
disk.

This patch adds a throttling mode for reads where each read will be
delayed by a percentage of the time the previous read took; i.e., an
invocation of '-d 100' will cause the sleep to be the same as the read
took, a value of 200 will cause the sleep to be twice as high, and a
value of 50 will cause it to be half. This will not be done if the
previous read had errors, since then the hardware will possibly have
timeouts and that would decrease the speed too much.

This algorithm helps when the disk is used by other processes as then,
due to the increased load, the time spent doing the reads will be
higher, and correspondingly badblocks will sleep even more and thus it
will use less of the drive's bandwidth. This is different from using
ionice, as it is a voluntary (and partial) throttling.

Signed-off-by: Iustin Pop <iustin@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.8.in
adblocks.c
eb594251b6d1a06d2acbb281b3816c017d7066eb 11-Jun-2008 Iustin Pop <iustin@google.com> badblocks: fix a possible bug in parse_uint

Currently, the parse_uint() function checks errno after the strtoul()
call. But, according to the man page of strtoul():
Since strtoul() can legitimately return 0 or LONG_MAX (LLONG_MAX for
strtoull()) on both success and failure, the calling program
should set errno to 0 before the call, and then determine if an error
occurred by checking whether errno has a nonzero value after the call.

When using locales, it can happen that looking for the locale files is
not successful, and therefore errno will have a nonzero value from this.
And since the argument parsing is one of the first things done after
startup, parse_uint() will wrongly report errors.

The fix is to simply reset errno to zero before calling strtoul().

Signed-off-by: Iustin Pop <iustin@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.c
931b0289eee5d83bff7e80c7420bda0a5bb078da 11-Jun-2008 Iustin Pop <iustin@google.com> badblocks: add a max bad blocks count option

Currently, badblocks will continue scanning the device until it reaches
last_block, even though it might be that the drive is not responding
at all anymore.

This patch introduces a new parameter ('-e') that allows one to specify
the maximum bad block count; if badblocks sees more than this number, it
will abort the test.

While this is not useful for testing a device that will need to be used
as a filesystem (because we don't get an exhaustive list of bad blocks),
it is useful for testing if a device has bad blocks at all: for example,
with a count of 1, it will finish after the first error thus not needing
to test the whole device if the only purpose of the test is to check for
any bad blocks.

Signed-off-by: Iustin Pop <iustin@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
adblocks.8.in
adblocks.c
11d4f30fe19fe543c8ba52cc6033e57a38a82e2a 08-Jun-2008 Theodore Ts'o <tytso@mit.edu> e2undo: Enable missing pieces to enable I18N for this application

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
2undo.c
365857912e27914afa8857af5adf74ee19ca9e03 08-Jun-2008 Theodore Ts'o <tytso@mit.edu> Add "#include <limits.h>" to get PATH_MAX for mke2fs and tune2fs

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
une2fs.c
97cf43f8aa5e54765f63f76b4bd3dbc9c423ca06 08-Jun-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
2a6b60488feb819bae7e506281ebe37e6091b5d6 08-Jun-2008 Theodore Ts'o <tytso@mit.edu> fsck: Fix build problem on MacOS X

Addresses-Sourceforge-Bug: #1972473

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
smounted.c
721b367abf1fb65d4f048b34fdf91571a0ccfdd3 07-Jun-2008 Theodore Ts'o <tytso@mit.edu> Fix gcc -Wall warnings in tune2fs

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
eda08d45bd984547f87ad3770fad559c7ccede31 15-May-2008 Theodore Ts'o <tytso@mit.edu> Install {mkfs,fsck}.{ext4,ext4dev} binary and man pages

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
d46e171f3c882d6683e15e37ee3684d826117657 15-May-2008 Theodore Ts'o <tytso@mit.edu> Add ext4dev stanza to mke2fs.conf

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.conf
2d36358d665c87cbfb00a2d700690fa379f24956 15-May-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Add the ability to configure default extended options in mke2fs.conf

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf.5.in
faa08e4c92eedef72b1e477cea6bda08ecf99311 28-Apr-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'next' into tt/flex-bg
64d588cfeac8f0125b2a29c8b61320ddab267391 13-Aug-2007 Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> tune2fs: Support for large inode migration.

Add new option -I <inode_size> to tune2fs. This is used to change the
inode size. The size need to be multiple of 2 and we don't allow to
decrease the inode size.

As a part of increasing the inode size we increase the inode table
size. We also move the used data blocks around and update the
respective inodes to point to the new block

tune2fs uses the undo I/O manager when migrating to large inode. This
helps in reverting the changes if end results are not correct. The
environment variable TUNE2FS_UNDO_DIR is used to indicate the
directory within which the tdb file need to be created. The file will
be named tune2fs-<device-name> If TUNE2FS_UNDO_DIR is not set
/var/lib/e2fsprogs is used

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
b626b39a8c87dfb6d973b4ad7eca1eefa659d3d6 13-Aug-2007 Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> mke2fs: Add support for the undo I/O manager.

When running mke2fs, if a file system is detected
on the device, we use Undo I/O manager as the io manager.
This helps in reverting the changes made to the filesystem
in case we wrongly selected the device.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf.5.in
5f8a5ae6b8f7c273d678cbdaf56ec35cdb1b3587 13-Aug-2007 Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Add e2undo command

The e2undo command can be used to replay the transaction saved in the
transaction file using undo I/O Manager.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
2undo.8.in
2undo.c
43781b9459f1b511e4cf94358593e097d8fdb795 28-Apr-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Make argument to the extended option lazy_itable_init optional

Also remove some debugging printf's left over from a previous patch.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
da292aa9afe3ece2f6ab072ed88933b762ebdf4f 27-Apr-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'

Conflicts:

tests/m_raid_opt/expect.1
d94cc2eaa68d8bfad342293e73540b867a7b10d9 27-Apr-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Don't allow the combination of the meta_bg and resize_inode features

The combination of meta_bg and resize_inode leads to a corrupt
filesystem, and it's not really clear it makes any logical sense.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
9ba400027fb00ce43d14673346bbfb6f5719985a 22-Apr-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: New bitmap and inode table allocation for FLEX_BG

Change the way we allocate bitmaps and inode tables if the FLEX_BG
feature is used at mke2fs time. It places calculates a new offset for
bitmaps and inode table base on the number of groups that the user
wishes to pack together using the new "-G" option. Creating a
filesystem with 64 block groups in a flex group can be done by:

mke2fs -j -I 256 -O flex_bg -G 32 /dev/sdX

Signed-off-by: Jose R. Santos <jrs@us.ibm.com>
Signed-off-by: Valerie Clement <valerie.clement@bull.net>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
ke2fs.conf.5.in
0f2794c020b34de391f7a42e3b155ccb0ed2830f 23-Apr-2008 Theodore Ts'o <tytso@mit.edu> mke2fs/libext2fs: Fix lazy inode table initialization

This fixes some bugs which I introduced recently while revamping the
uninit_bg code. Since mke2fs is no longer calling
ext2fs_set_gdt_csum(), it's important that ext2fs_initialize()
correctly initialize bg_itable_unused for all block group descriptors.
In addition, mke2fs needs to zero out the the reserved inodes based on
the values of bg_itable_unused set by ext2fs_initialize().

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
5711ed297b1a3d94086256b5b3b891d4f77b21ca 21-Apr-2008 Theodore Ts'o <tytso@mit.edu> Transfer responsibility of setting the *_UNINIT flags to libext2fs

Mke2fs used to have special case, ugly code in
setup_lazy_bg/setup_uninit_bg flag which set the flags based on all
sorts of special cases. Change it so that it is done in libext2fs,
and fix mke2fs to use alloc_stats functions which will take care of
clearing the *_UNINIT flags automatically as needed.

This is preparatory work to make the flex_bg allocation patch much
cleaner.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
16b851cdae98244e117fe91d93b267fcad1102b3 21-Apr-2008 Theodore Ts'o <tytso@mit.edu> Remove LAZY_BG feature

This simplifies the code, and using the uninit_bg with the inode table
lazily initialized is just as good.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
ke2fs.c
a4396e9d5d1351c53212bf7ff10f97edeb576438 18-Apr-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Disentangle lazy_bg from uninit_bg's lazy inode table initialization

Instead of using -O lazy_bg,uninit_bg as the way of requesting that
the inode table be lazy unitialized, use the parameter
lazy_itable_init, which can either be set via mke2fs's -E option, or
via /etc/mke2fs.conf.

Also fix some random problems in mke2fs's man page, including
documenting the extent feature, which had been missing.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
ke2fs.conf.5.in
2930dad2b20fe4b04ee3e9f5c7a76d8bf63342b0 18-Apr-2008 Theodore Ts'o <tytso@mit.edu> Rename the feature uninit_groups to uninit_bg

Allow the old name of uninit_groups when converting feature names for
backwards compatibility for scripts running mke2fs and tune2fs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
une2fs.8.in
1ca1059fd0126fd2c065f272a566c18f14bab16d 09-Apr-2008 Theodore Ts'o <tytso@mit.edu> Add support for the HUGE_FILE feature

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
3d43836fda5321dd2f286eef77d238d1da792ce2 19-Feb-2008 Theodore Ts'o <tytso@mit.edu> New mke2fs filesystem and usage types support

Provide mke2fs with a much more sophisticated system for controlling
configuration parameters of a newly created filesystem based on a
split filesystem and usage type system. The -t option to mke2fs was a
deprecated alias to -c; it now specifies a filesystem type (ext2,
ext3, ext4, etc.), while the -T option can now be a comma separated
usage list.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
ke2fs.conf
ke2fs.conf.5.in
b89fc30dd7ff8a81b195296299564df9c1ff5433 01-Apr-2008 Theodore Ts'o <tytso@mit.edu> dumpe2fs: Print the group checksum and the block options in a nicer way

Also add support for printing the ITABLE_ZERO flag

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
f628acea2671dda839fc086f1017718e41e34eca 31-Mar-2008 Andreas Dilger <adilger@dilger.ca> ext2fs_set_gdt_csum(): Return an error code on errors instead of void

Change the function signature so that ext2fs_set_gdt_csum() returns an
error code.

If the inode bitmap hasn't been loaded return EXT2_ET_NO_INODE_BITMAP.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
4237c73bf5f3b594f6df55ce8da3c321e808d457 30-Mar-2008 Andreas Dilger <adilger@dilger.ca> Improve ext4 feature descriptions in mke2fs and tune2fs man pages

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
une2fs.8.in
a70f10dbc493c4eae488cadd8512e873220037d9 30-Mar-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
e28a1bca9edbbd6c9880d16ea7b9199d0b6cb976 30-Mar-2008 Andreas Dilger <adilger@dilger.ca> Use -E instead of the deprecated -R option in the mke2fs man page

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
62653d99d823f5d73eba925885896d91ea8bab91 26-Mar-2008 Theodore Ts'o <tytso@mit.edu> logsave: Pass any SIGTERM or SIGINT signals to child process

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ogsave.c
bf209ab7950ca2a06c5837f47756f6e0ae326e85 26-Mar-2008 Theodore Ts'o <tytso@mit.edu> fsck: Treat "ext4" and "ext4dev" as ext* filesystems

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
a16834335d745d631d6ee20eef0bdbe24e4b152d 26-Mar-2008 Theodore Ts'o <tytso@mit.edu> fsck: Make -Cn work correctly where n != 0

Previously, fsck was only passing in -Cn to the first e2fsck process
to start up, and enabling the progress information by sending a
SIGUSR1 signal. This didn't work if the progress information was
intended to go to file descriptor, since the information was never
passed to e2fsck.

So we now pass the progress fd in as a negative number if the progress
information is intended to be initially suppressed.

Addresses-Launchpad-Bug: #203323
Addresses-Sourceforge-Bug: #1926023

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
ab7862049a3311c5ab3d22dde07823560d13afe0 26-Mar-2008 Theodore Ts'o <tytso@mit.edu> fsck: Fix -C handling so that subsequent progress bars are enabled

The exiting fsck instance wasn't marked as DONE, so the safety checks
thought a progress bar was still in progress, and so we didn't enable
another filesystem's checking.

Addresses-Debian-Bug: #432865
Addresses-Launchpad-Bug: #203323
Addresses-Sourceforge-Bug: #1926023

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
402b95d285cbd12f0f11c786badbdf23ae701a89 21-Mar-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Clarify man page that -T is interpreted using the current timezone

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
a2ff0f31c1987a480ffc4dacb7adf93f0aecf7f6 21-Mar-2008 Theodore Ts'o <tytso@mit.edu> debugfs, tune2fs: Handle daylight savings time when parsing a time string

We need to set tm_isdst to -1 so that mktime will automatically
determine whether or not daylight savings time (DST) is in effect.
Previously tm_isdst was set to 0, which caused mktime to interpret the
time as if it was always not using DST.

Addresses-Debian-Bug: #471882

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
777a8c1bf0a37e14bf1f9c6270328a066111b88e 22-Oct-2007 Jose R. Santos <jrs@us.ibm.com> Make dumpe2fs uninit block group aware

Signed-off-by: Jose R. Santos <jrs@us.ibm.com>
Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
4e988cb4c16046c8c56dc3d76beb41466a966d81 22-Oct-2007 Jose R. Santos <jrs@us.ibm.com> Make tune2fs uninit block group aware

Signed-off-by: Jose R. Santos <jrs@us.ibm.com>
Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
une2fs.c
d2d22a29df4632d548149b123f197102eb39d3b0 22-Oct-2007 Jose R. Santos <jrs@us.ibm.com> Add support for creating filesystems using uninit block group

Signed-off-by: Jose R. Santos <jrs@us.ibm.com>
Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
2d328bb76d2d63bdfdba923b54c28bd686bd8fec 18-Mar-2008 Theodore Ts'o <tytso@mit.edu> Fix miscellaneous gcc -Wall warnings

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hattr.c
umpe2fs.c
sck.c
sck.h
smounted.c
ke2fs.c
une2fs.c
uidd.c
6567e5a684610832962a951a50712574eff59808 15-Mar-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
4415b03eaa44e4d51ced1dcd31cb1ee8d51277c1 14-Mar-2008 Matthias Koenig <mkoenig@suse.de> uuidd: Fix issues identified by SuSE's security team

SuSE's security team audited uuidd and came up with these issues.
None of them are serious given that uuidd runs setuid as a
unprivileged user which has no special access other than libuuid
directory, but it's good to get them fixed.

Signed-off-by: Matthias Koenig <mkoenig@suse.de>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.c
a040a99b6cc4bf9f10d39747ca6947f0462a2eb2 13-Mar-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'

Conflicts:

lib/ext2fs/ext2_err.et.in
9fbec969a2a9d703373cf8a7e9a95cf594caed72 13-Mar-2008 Theodore Ts'o <tytso@mit.edu> e2image: Use open64() so that "e2image -I" works on image files > 2GB

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
e67670c32cbec23b35de2725a5b6ad8d3d3568f0 09-Mar-2008 Theodore Ts'o <tytso@mit.edu> Fix mke2fs man page regarding 128-byte default inode size

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
399033a6ab713bc1f8ebad90e47fced0e7491b62 29-Feb-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
ff662d5dbf95f2e68eed6f6b6a4e10307a7d13bd 29-Feb-2008 Theodore Ts'o <tytso@mit.edu> tune2fs: Remove support for clearing the SPARSE_SUPER feature

Clearing SPARSE_SUPER is dangerous; it can result in a filesystem
which e2fsck can't fix easily. Since there is very few good reasons
for wanting to turn this feature off, disable tune2fs's abiity to do
this. Users who really want this can use debugfs.

Also, deprecate the tune2fs -s option. Remove it from the man page
and usage message.

Addresses-Sourceforge-Bug: #1840286

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
une2fs.c
bdd80f28d759cda94bab13af689d4aee0328dd7f 29-Feb-2008 Theodore Ts'o <tytso@mit.edu> Update mke2fs usage message

Add options supported by mke2fs to its usage message.

Addresses-Sourceforge-Bug: #1751393

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
0fd2f90067196c2ed7a6c2b47b9ca10aa9604be5 29-Feb-2008 Andreas Mohr <andim2@users.sourceforge.net> Add manpage references to debugfs/tune2fs commands

Make debugfs and tune2fs reference each other in the "SEE ALSO"
section.

Addresses-Sourceforge-Patches: #1399325

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
a49670e64e28ac3b15e36cb6bd0a8135d3ecdbbb 28-Feb-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'

Conflicts:

lib/blkid/devname.c
lib/blkid/probe.c
misc/mke2fs.c
misc/tune2fs.c
558df54458075856b3a76051648323643a56dadc 27-Feb-2008 Theodore Ts'o <tytso@mit.edu> Add support for manipulating large_file feature in mke2fs and tune2fs

Previously we just let the kernel and e2fsck do this automatically,
but e2fsck will no longer automatically clear the large_file feature.
It still isn't really necessary to worry about this feature flag
explicitly, but some users seem to care.

Addresses-Red-Hat-Bugzilla: #258381

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
15472658599eb29c522107377a9797c6322b93c3 27-Feb-2008 Theodore Ts'o <tytso@mit.edu> fsck: Don't complain about an old-style fstab if the fstab is empty

Addresses-Debian-Bug: 468176

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
db197a81cc7841af1afeb499645fd2a5767fa146 27-Feb-2008 Theodore Ts'o <tytso@mit.edu> Fix dumpe2fs parsing of explicit superblock/blocksize parameters

The dumpe2fs syntax documented in the man page has been broken for
some time due to getopt() changes. Change the option syntax in
dumpe2fs to be one which is more extensible and consistent with the
format for extended options in mke2fs and tune2fs.

Addresses-Sourceforge-Bug: #1830994

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.8.in
umpe2fs.c
c149e226a0b2554e879c8b5b528fd801c46ffc25 26-Feb-2008 Theodore Ts'o <tytso@mit.edu> Eliminate really obsolete references to Linux 2.0/2.1/2.2 in tune2fs man page

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
037914e28f69110020195fe9f9ea56e5274ff2c0 26-Feb-2008 Theodore Ts'o <tytso@mit.edu> tune2fs: Add support to clear the resize_inode feature

This requires an fsck aftwards. We don't allow setting the
resize_inode feature because extensive work to tune2fs or e2fsck to
safely relocate blocks is necessary in order to reserve the blocks
needed by the resize inode.

Addresses-Red-Hat-Bugzilla: #167816

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
une2fs.c
885bf6b83252672eb2e9bd2fb6fd45a1978b0661 26-Feb-2008 Theodore Ts'o <tytso@mit.edu> tune2fs: Cleanup feature handling to avoid merge conflicts

Use a more abstract set of feature tests to avoid merge conflicts as
we add support for new features in the maint, master, next, and pu git
branches.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
7c4a2ef5946a52b9efa70b110d5abcf8f4fb6abe 26-Feb-2008 Theodore Ts'o <tytso@mit.edu> Teach tune2fs to use e2p_edit_feature2() to provide better error handling

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
f159ff32e3b12b53f7d1adbc533f430f70854556 22-Feb-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Remove warning for inode_size > 128 bytes

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
34658361cfdc0bb1095c1d0c8ab9dfc4877404b7 22-Feb-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Remove 2.4 kernel warning for blocksizes > 4096 bytes

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
2ccf62fd8eeffb090a088e71050a708ebb02e1f5 22-Feb-2008 Theodore Ts'o <tytso@mit.edu> mke2fs: Remove requirement for -f option for filesystems > 2**31 blocks

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
107f291cdc9366717a9b2da66c8dcc3399b47409 20-Feb-2008 Theodore Ts'o <tytso@mit.edu> Add ability to set (but not clear) the extents feature to tune2fs

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
bf6b848e1247610b4fba091de87b61f4b2b92a11 20-Feb-2008 Theodore Ts'o <tytso@mit.edu> Allow mke2fs to create filesystems with the EXTENTS feature

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
0157e7c635c845c0e636576206718d8abaf70e08 19-Feb-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
0c17cb25f24730dca138a976a390f105d2191736 19-Feb-2008 Theodore Ts'o <tytso@mit.edu> Add support for setting RAID stride and strip-width via mke2fs and tune2fs

This is useful for mballoc to align block allocation on the RAID
stripe boundaries.

Signed-off-by: Rupesh Thakare <rupesh@clusterfs.com>
Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
43323be95742298b8229be728c3812e95c90629c 07-Feb-2008 Theodore Ts'o <tytso@mit.edu> Use BLOCK_FLAG_READ_ONLY flag in debugfs, e2image, and tune2fs

Pass BLOCK_FLAG_READ_ONLY to ext2fs_block_iterate2() so that debugfs,
e2image, and tune2fs will work well with filesystems containing
extents.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
une2fs.c
bbf54adb034dbf589d40c4b28c9bb7fe492b87ed 17-Feb-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
fe263da9236f533e779a7e2f89af8d4b03075959 16-Feb-2008 Theodore Ts'o <tytso@mit.edu> Make fsck ignore mounted filesystems if given the -M option

Adapted from the SuSE patch, but fixes a number of very serious
problems with the patch in SLES:

1) This changeset uses -M instead of -m; most lowercase options are
reserved for use by the filesystem-specific fsck programs. All new
fsck options must be upper case.

2) This changeset will skip the root filesystem in "fsck -AM", which
the SLES patch will not do.

3) Loading /proc/mounts into the fs_info can cause -t opts matching to
malfuction. So this changeset uses a simplified version of the
ismounted.c function from the ext2fs library.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
sck.8.in
sck.c
smounted.c
cfa30fd554a5ec905ef1e4e3f2b1f8ba9ba8b7e5 16-Feb-2008 Theodore Ts'o <tytso@mit.edu> uuidd: Fix pid file so it has the correct pid number

The pid file was getting created before the fork(), so it had the
incorrect pid number. No one noticed for a while, since "uuidd -k"
will kill the daemon and it has enough automatic convenience functions
that it's usually not necessary to refer to the pid file except as a
convenient place for uuidd to lock against multiple instances of the
daemon starting up.

Addresses-Sourceforge-Bug: #1893244

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.c
ef80fdc8ad014c55e601018f4f6ec22065c37030 10-Feb-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
ab9f1a84b0e4831f4dd2f3c6f93f4d09643e3b0f 10-Feb-2008 Theodore Ts'o <tytso@mit.edu> Don't try to create $DESTDIR/etc/init.d as part of make install

This isn't necessary since we don't install the init.d script (and
it's not the recommended way to start uuidd anyway).

Addresses-Sourceforge-Bug: #1885085

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
0ddfd9a529d2d33f9c5b59fd7409b716e50d45b2 10-Feb-2008 Theodore Ts'o <tytso@mit.edu> Allow tune2fs to set and clear the test_fs flag on ext4 filesystems

Also allow the label to be set/cleared on ext4 filesystems via e2label
and tune2fs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.c
428f6b32a9029e1f0bc2559233954955a6aae64c 28-Jan-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:

configure
lib/ext2fs/ext2_fs.h
misc/e2image.c
0d1de232a81354a89fdcd1df77531dec07685e2f 28-Jan-2008 Theodore Ts'o <tytso@mit.edu> Create filesystems with the ext_attr feature by default

Since recent kernels have a tendency to set this feature willy-nilly,
let's just enable by default. It's only very old kernels that don't
support it any more.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ke2fs.conf
b1631cce648ee87e39b602899d77ad59a81acc66 28-Jan-2008 Theodore Ts'o <tytso@mit.edu> Create new filesystems with 256-byte inodes by default

This makes it easier to upgrade to ext4 in the future, and it speeds
up extended attributes handling --- important on SELinux systems!

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.conf
df200fffd5276d3c8ba201fd61858ba906b77cf6 27-Jan-2008 Theodore Ts'o <tytso@mit.edu> e2image: Fix potential overflow if the device name is too long

Adapted from SLES's patch: e2fsprogs-strncat.patch

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
6cb27404f51f97e2665fa0e0c4c0f7bc47e698ec 27-Jan-2008 Theodore Ts'o <tytso@mit.edu> Add support for the test_fs flag

The test_fs flag is an "ok to be used with test kernel code" flag. It
makes it easier for us to determine whether a filesystem should be
mounted using ext4 or not.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
153439222e6a16e40be324408d8d19361bc1e65e 21-Jan-2008 Theodore Ts'o <tytso@mit.edu> Define helper functions ext2fs_set_i_{u,g}id_high() for MacOS compatibility

This is needed for all non-Linux/Hurd/Masix systems...

Addresses-Sourceforge-Bug: #1863819

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
ebf5fb2b78e2ee2d161f11048b3e8a9ab80180bf 19-Jan-2008 Eric Sandeen <sandeen@redhat.com> Fix the pathname of /var/lib/uuidd/uuidd.pid in uuidd man page.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.8.in
8c7c6eb1675b327387a24bc05ac98dfc890f8073 09-Jan-2008 Andreas Dilger <adilger@sun.com> mke2fs: Make lost+found always have at least 2 blocks

Make sure lost+found has always at least 2 disk blocks. This will provide at
least elementary test that we have not screwed-up support for 64KB blocks since
the second directory block will be empty.

Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
fef2b38d8e5b475655771f8208265a8fa9246601 01-Jan-2008 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:

configure
debian/rules
e2fsck/swapfs.c
lib/ext2fs/ext2_fs.h
c9eaebf6ff51bbb0a3938b20e01a7b3971ba7207 01-Jan-2008 Theodore Ts'o <tytso@mit.edu> e2image: If there is an error while writing a block, call exit(1)

If the disk fills while e2image is writing its output file, it will
spew a large number of error messages instead of exiting with a
non-zero status code after the first failure.

Addresses-Sourceforge-Feature-Request: #606508

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
e5679a6ca4c4baa8e0bf837854e66669b634903c 01-Jan-2008 Theodore Ts'o <tytso@mit.edu> uuidd: Add _GNU_SOURCE #define to pick up setres[ug]id() prototypes

Addresses-Sourceforge-Patch: #1861663

Reported-by: Mike Frysinger <vapier@users.sourceforge.net>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.c
5610f9924bfe506852701f1f11f6ca9f421e8a57 31-Dec-2007 Theodore Ts'o <tytso@mit.edu> Add --disable-uuidd configure option

Add a configure option which causes the uuidd helper daemon not to be
built or used by the uuid library.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
113d636a2bfe984fc1f6cae42fac2974d2a3f432 25-Dec-2007 Theodore Ts'o <tytso@mit.edu> uuidd: Avoid race conditions to that only one uuidd is started

Use an improved locking protocol based on the pid file to assure that
only one uuidd is started. Apparently the kernel does not prevent
multiple processes from racing to bind to a Unix domain socket.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidd.c
b689b8dd14e69c652d2c8211bdef3effe81cfd65 17-Dec-2007 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:

lib/ext2fs/closefs.c
740837def7fc55ba6b0368f46a4b4abcaba0becd 16-Dec-2007 Theodore Ts'o <tytso@mit.edu> Add uuidd daemon to prevent duplicate time-based UUID's

Also store the clock sequence information in a state file in
/var/lib/misc/uuid-clock so that if the time goes backwards the clock
sequence counter can get bumped. This allows us to completely
correctly generate time-based (version 1) UUID's according to the
algorithm specified RFC 4122.

Addresses-Sourceforge-Bug: #1529672
Addresses-Red-Hat-Bugzilla: #233471

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
uidd.8.in
uidd.c
uidd.rc
5221837e62641958f237e7fb5dee999cbfc850c9 16-Dec-2007 Theodore Ts'o <tytso@mit.edu> fsck: '#' is only a comment character at the beginning of an fstab line

Fuse and ssh fstab lines such as:

wdfs#https://dav.hoster.com/foo/bar /mnt/hoster fuse user,noauto 0 0

will cause fsck to issue warnings about invalid fstab lines, because
fsck was previously treating '#' as a comment when it appeared
anywhere in an fstab line, not just at the beginning of the line.

Addresses-Gentoo-bug: #195405
Addresses-Sourceforge-bug: #1826147

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
f8efcda2db612f6b6d33dc1a6ff78a1c048608f4 16-Dec-2007 Theodore Ts'o <tytso@mit.edu> blkid: Output non-printing characters using ^ and M- notation

When printing the value of tags in a formatted format, print control
characters and characters with the high eight bit set using the ^ and
M- notation, respectively. This prevents a filesystem with a garbage
label from potentially screwing up the user's screen (for example,
putting it into graphical mode).

Addresses-Ubuntu-Bug: #78087

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
lkid.c
e6a4571eec5ce0e75fb8a5a41c30bf0e68d90efe 09-Dec-2007 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next

Conflicts:

lib/ext2fs/closefs.c
20abd3ea2ab0b5fe185c459bfc36fec712ad167c 09-Nov-2007 Arun Thomas <thomasar@us.ibm.com> e2image in raw-mode appends an extra byte to image-file

In raw mode (-r), e2image appends an extra byte to the image-file's
end if the last block requires a sparse write. Consequently, the
resulting image-file is one byte larger than the original in
size. This patch fixes the problem by seeking to one less than the
given offset, so that the byte write does not overflow into the next
block.

This problem can be reproduced by doing an e2image -r dev image-file
and comparing the original and resulting image sizes. This assumes the
image is sparse at the end. For my tests, I created a 100MB sparse
image with two files.

Signed-off-by: Arun Thomas <thomasar@us.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2image.c
5ea565fd37821b2708c2b7f1e49fe6fc94587794 04-Nov-2007 Theodore Ts'o <tytso@mit.edu> Merge basic FLEX_BG support

Merge commit 'c2d4300b8a4a13d8a78b86c386f76259f23feec2' into next
c2d4300b8a4a13d8a78b86c386f76259f23feec2 14-Aug-2007 Jose R. Santos <jrs@us.ibm.com> Enable FLEX_BG feature support

Add FLEX_BG as a supported feature bit.

Add support to mke2fs to create filesystems with FLEX_BG.

Add support to tune2fs to add (and remove, if it won't break
filesystem consistency) the FLEX_BG feature.

Signed-off-by: Jose R. Santos <jrs@us.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
--

lib/e2p/feature.c | 2 ++
lib/ext2fs/ext2fs.h | 6 ++++--
misc/mke2fs.c | 7 ++++++-
3 files changed, 12 insertions(+), 3 deletions(-)
ke2fs.c
une2fs.c
d9099eec8e8f801932f01b707513b330908080d7 01-Nov-2007 Theodore Ts'o <tytso@mit.edu> Merge branch 'cl/remove-masix' into next
36161c180c97e367e00fa8f3dd53f236568d8321 23-Aug-2007 Coly Li <coyli@suse.de> mke2fs: remove masix support

This patch remove masix support from mke2fs.

Signed-off-by: Coly Li <coyli@suse.de>
ke2fs.c
3eaf8627b0cd94aeb3a3a56709e80d02a38ae939 01-Nov-2007 Theodore Ts'o <tytso@mit.edu> Fix typo in the summary section of the blkid man page

Addresses-SourceForge-Bug: #1821333

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
lkid.8.in
d9039ae0ff3f7929ede576058b3ad3e9c62a47c4 20-Oct-2007 Dmitry V. Levin <ldv@altlinux.org> Check fgets(3) return value

When fgets() function fails, contents of the buffer is undefined. That
is, fgets() return value needs to be checked, to avoid undefined behavior.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
til.c
84d51a2e99277dfb728edc7c5e06273a49d197f5 20-Oct-2007 Dmitry V. Levin <ldv@altlinux.org> e2image: Fix potential off-by-one fs_device_name buffer overflow

In write_image_file(), fix length argument of strncat(3) call.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2image.c
d4be9fad6eb65752a623521f9b66b5c30831a3a1 22-Oct-2007 Theodore Ts'o <tytso@mit.edu> badblocks: Factor out calls to strtoul to a helper function

The strtoul() function has a lot of messy error checking that needs to
be done; by factoring it out into one place we can make sure it's done
right in all of the places where it is called.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
acd77415a9c0d6279f4effee2a5e59ededc7b2d2 22-Oct-2007 Theodore Ts'o <tytso@mit.edu> badblocks: Change unsigned long to blk_t and unsigned int, as appropriate

This will make it easier for us to support 64-bit block numbers when
the time comes. Not that running badblocks on a > 4TB machine is
anything I want to contemplate!

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
e9860ae966c71bca8af8013c7d3148b171c8491f 22-Oct-2007 Theodore Ts'o <tytso@mit.edu> badblocks: Use unsigned int instead of unsigned long for test patterns

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
e68594d2376afd10e03b440b4bc288508ad13aa2 22-Oct-2007 Theodore Ts'o <tytso@mit.edu> chattr: provide an exit code in case of failure and add -f flag

Fix chattr so that if there are errors, it will report it via a
non-zero exit code. It will now explicitly give errors when
attempting to set files that are not files or directories (which are
currently not supported under Linux). The -f flag will suppress error
messages from being printed, although the exit status will still be
non-zero.

Addresses-Red-Hat-Bugzilla: #180596

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
hattr.1.in
hattr.c
042a27f8230804062016194ce151baa6cfff034e 15-Oct-2007 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint' into next
f305918cc79c3ef9a4abdafa5bd35a68521c63c8 15-Oct-2007 Theodore Ts'o <tytso@mit.edu> mke2fs: Change usage message to use -E instead -R, which is deprecated

The -R option is only used for backwards compatibility, and -E is
preferred, so change the usage message accordingly.

Signed-off-by: Coly Li <coyli@suse.de>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
f2de1d38d0819b17895977fabc52d81d0ea6ec00 30-Aug-2007 Valerie Clement <valerie.clement@bull.net> libext2fs: Add EXT2_DESC_SIZE and EXT2_DESC_PER_BLOCK macros

Add macros to support variable-length group descriptors for ext4.

Signed-off-by: Valerie Clement <valerie.clement@bull.net>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.c
2628a1d3e1e581512d136486768685542d2649b1 06-Oct-2007 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
ed773a263829493e4e4bf612dbec2380cf09349f 20-Sep-2007 Theodore Ts'o <tytso@mit.edu> fsck: Ignore /etc/fstab entries for bind mounts

If a user specifies a bind mount with a non-zero fsck pass number, for
example:

/foo /bar ext3 bind,defaults 1 3

print a warning and ignore the fstab entry.

Addresses-Red-Hat-Bugzilla: #151533

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
sck.c
e9e9602246e4a0ece7a07beceae63346b0d75801 21-Aug-2007 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
3b302c2c0b7357321adc1343d7e46b032b7b6383 21-Aug-2007 Theodore Ts'o <tytso@mit.edu> Fix typo and clarify the uuidgen man page

Thanks to Matt Kraai for noticing the misplaced sentence inserted into
the description section.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
uidgen.1.in
2eae093081a097a0a611fe2817e1533825dfdd86 11-Aug-2007 Theodore Ts'o <tytso@mit.edu> Clean up applications to not use EXT2FS_ENABLE_SWAPFS or EXT2_FLAG_SWAP_BYTES

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
2image.c
aef2283196667d3b843a55c0fd6e6ebd8b6239c7 04-Aug-2007 Theodore Ts'o <tytso@mit.edu> Merge branch 'maint'
7c8e9ac7f8576bd666ecb39cae10fd380bba1c59 04-Aug-2007 Theodore Ts'o <tytso@mit.edu> Make sure $prefix/etc is created before installing mke2fs.conf

Fix up $(root_sysconfdir) handling misc/Makefile.in so that
make install and make uninstall works correctly when $prefix != /.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
894c7fdb13d1305d0d68dfb006328d725e4a72d1 04-Aug-2007 Theodore Ts'o <tytso@mit.edu> Silence makefile from showing the awk command when building DEFAULT_TO_C

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
d4e0b1c6f5aa8c6a248d9149ed5634a310952411 04-Aug-2007 Theodore Ts'o <tytso@mit.edu> Fix gcc -Wall warnings

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
adblocks.c
ke2fs.c
til.c
til.h
f1f115a78f5ea599fc5f8815a741d43fedd5840d 23-Jul-2007 Theodore Ts'o <tytso@mit.edu> libext2fs: 32-bit bitmap refactorization, part 3

Create new functions ext2fs_{set,get}_{inode,block}_bitmap_range()
which allow programs like e2fsck, dumpe2fs, etc. to get and set chunks
of the bitmap at a time.

Move the representation details of the 32-bit old-style bitmaps into
gen_bitmap.c.

Change calls in dumpe2fs, mke2s, et. al to use the new abstractions.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
umpe2fs.c
febac23c12287943fb98b4ddc4727e99034d8b64 12-Jul-2007 Theodore Ts'o <tytso@mit.edu> Update tune2fs man page to include more discussion of reserved blocks

Addresses-Launchpad-bug: #47817

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
une2fs.8.in
424a3e4a2367f582edeb062ab12f3f95fdf9e31b 08-Jul-2007 Theodore Ts'o <tytso@mit.edu> Remove Changelog files since they're not used after the git migration

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
d48bc60459f3552d2f229d8ec041b7eb36787541 04-Jul-2007 Theodore Ts'o <tytso@mit.edu> Compile the default mke2fs.conf into mke2fs program

People are getting surprised by mke2fs creating filesystems with
different defaults than earlier versions of mke2fs if mke2fs.conf is
not present. Having gotten two complaints about ramdisks getting
created by with 4k blocksizes which then blow up when the ramdisk is
mounted with a "Magic mismatch, very weird" error message from the
kernel, let's fix this by making sure mke2fs has a built-in version of
mke2fs.conf file. People can still override the built-in version of
mke2fs.conf by editing /etc/mke2fs.conf, but this maintains the
previous behavior.

Addresses-Sourceforge-Bug: #1745818

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
akefile.in
ke2fs.c
rofile-to-c.awk
d7b64725eecb06b2bbc5e90dc338d8d08152a932 24-Jun-2007 Theodore Ts'o <tytso@mit.edu> Update Release Notes, Changelogs, version.h, etc. for 1.40 release

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
56d1236726d8e4624d2f3a2f4713864c1e66bb40 21-Jun-2007 Theodore Ts'o <tytso@mit.edu> Add default journal size function

Factor out the code which sets the default journal size and move it
into libext2fs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
til.c
058ad1c70c9a097d282270c6f76d3c3493e15fe2 19-Jun-2007 Theodore Ts'o <tytso@mit.edu> Don't write changes to the backup superblocks by default

This patch changes ext2fs_open() to set EXT2_FLAG_MASTER_SB_ONLY by
default. This avoids some problems in e2fsck (reported by Jim Garlick)
where a corrupt journal can end up writing the bad superblock to the
backups. In general, only e2fsck (after the filesystem is clean),
tune2fs, and resize2fs should change the backup superblocks by default.
Most callers of ext2fs_open() should not be touching anything where the
backups should be touched. So let's change the defaults to avoid
potential problems.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
une2fs.c
5267a520bb7887b146f05ffa8726664afbb6c3c2 04-Jun-2007 Theodore Ts'o <tytso@mit.edu> Fix error checking of badblock's last-block and start-block arguments

Addresses Debian Bug: #416477

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.c
21400381d90a1e58443e1e2c3f52f8fd5550be9d 31-May-2007 Brian Behlendorf <behlendorf1@llnl.gov> [COVERITY] Free memory leak in mke2fs when parsing extended options

Coverity ID: 34: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
de8f3a76218255e443ba57dec5d74850180fa75d 25-May-2007 Andreas Dilger <adilger@clusterfs.com> Fix gcc -Wall warnings, especially on 64-bit systems

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ilefrag.c
ke2fs.c
dcf7b091c3efb2e6218a1f139ef2823db9d7c4bb 22-May-2007 Andreas Dilger <adilger@clusterfs.com> mke2fs: Add check to make sure inode_size * num_inodes isn't too big

A quick patch to sanity check the inode ratio vs the inode size. In
some cases Lustre users have tried specifying an inode size of 4096
bytes, while keeping an inode ratio of one inode per 4096 bytes. I'm
sure more people will do this now that large inodes are available in
ext4 and documented in e2fsprogs.

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
96c6a3acd377698cb99ffd9925bec9b20ca4f6f9 19-May-2007 Theodore Ts'o <tytso@mit.edu> Store the RAID stride value in the superblock and take advantage of it

Store the RAID stride value when a filesystem is created with a requested
RAID stride, and then use it automatically in resize2fs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
46100e3f6e21a5eb8fbb4d843d4c7fee368b31f5 18-May-2007 Theodore Ts'o <tytso@mit.edu> Add -g option to the blkid program to garbage collect the blkid.tab file

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
lkid.8.in
lkid.c
5113a6e32b298671c86ae7da097bcd24540cebc9 08-May-2007 Eric Sandeen <sandeen@redhat.com> Fix mke2fs and debugfs to support large (> 16 bit) uid's and gid's

Mke2fs is supposed to set the uid/gid ownership of the root directory when
a non-rooot user creates the filesystem. This wasn't working correctly
if the uid/gid was > 16 bits. In additional, debugfs wasn't displaying
large uid/gid's correctly. This patch fixes these two programs.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
a25d231a8a153f48984f84f44a6b548b779cf6b1 08-May-2007 Eric Sandeen <sandeen@redhat.com> Fix mke2fs defaults when /etc/mke2fs.conf doesn't exist

One of our testers filed a bug that said "mkfs.ext3 is much slower
when mke2fs.conf is missing..."

This is because the shipped defaults in mke2fs.conf do not match the
shipped defaults in the mkfs code itself; he wound up making a 1k
block filesystem on a very large block device, for example.

So - How about this patch, to bring them back into line? Which makes
me wonder; having "defaults" in 2 different places is bound to get out
of sync; should we instead generate both code & config file defaults
(and maybe man page defaults) from a common source?

Anyway, here's a patch to bring mke2fs.conf and mke2fs.c into line for
current defaults...

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
ke2fs.c
f331acbe56d88dcd38ffe0f029240ed55fdaea9e 07-Apr-2007 Andreas Dilger <adilger@clusterfs.com> Allow the journal size to up to 10,240,000 blocks

Increase the maximum size of the journal to 100 times the previous
maximum, but add a restriction that it can be no more than half the size
of the filesystem.

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
til.c
52a079315b891fbbec4a2236c0c7dd94f725d407 03-Apr-2007 Theodore Ts'o <tytso@mit.edu> Document the -X flag in the badblocks man page

Addresses Debian Bug: #379695

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.8.in
45415c2dc1975efef329002133549895c57dbc1e 28-Mar-2007 Brian Behlendorf <behlendorf1@llnl.gov> [COVERITY] Fix memory leak in tune2fs and mke2fs when parsing journal options

Coverity ID: 33: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
til.c
12f8ff440cbea083797a3f62fe8c8ab0e03f2e6b 28-Mar-2007 Brian Behlendorf <behlendorf1@llnl.gov> [COVERITY] Fix memory leak in fsck on error paths

The memory allocated by inst is not reclaimed. There also was a
call to exit that coverity did not catch the resource leak. This
might not really be a big issue since the memory will be freed when
fsck exits, but it should be done anyway imho.

Coverity ID: 32: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
hangeLog
sck.c
d7eee82910b2e62728dca18def04c3ad5f680345 22-Mar-2007 Brian Behlendorf <behlendorf1@llnl.gov> [COVERITY] Fix memory leak in e2image (write_raw_image_file)

Coverity ID: 28: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
hangeLog
2image.c
248c2f9c48e178b60b2ffd09daf3e18be3345d94 22-Mar-2007 Brian Behlendorf <behlendorf1@llnl.gov> [COVERITY] Fix memory leak in e2image

zero_buf and buf must be freed on return from the
output_meta_data_blocks() function.

Coverity ID: 26+27: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
hangeLog
2image.c
e066150a7034d39aaa8a65a280911e2ef8b3d48c 19-Mar-2007 Brian Behlendorf <behlendorf1@llnl.gov> [COVERITY] Fix dead code bug in mke2fs

If the fs_type is not specified and we are creating a journal device, to
use a fs_type of "journal"; this used to be the behavior before we added
support for the /etc/mke2fs.conf file, so let's fix it to restore the
old behavior.

Coverity ID: 4: Deadcode

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
a6d8302b4873527798a77c1ba3106a04b71dfeac 26-Dec-2006 Theodore Ts'o <tytso@mit.edu> Use the newer add/remove_error_table com_err interfaces

Change all of the e2fsprogs programs to use the newer add_error_table()
and remove_error_table() interfaces instead of the much older
initialize_*_error_table() function.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
akefile.in
umpe2fs.c
2image.c
2initrd_helper.c
ke2fs.c
une2fs.c
017a76ee39356ecb13911d666a152f2a4856cbbb 18-Nov-2006 Theodore Ts'o <tytso@mit.edu> Adjust badblocks -n/-w exclusive usage message

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.c
642935c082ca22e1186fc9926fe06e4207d5ab56 15-Nov-2006 Theodore Ts'o <tytso@mit.edu> Fix misc. gcc -Wall complaints in the misc and e2fsck directories

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
hattr.c
ilefrag.c
ke2fs.c
cf8272e1081f69d898d5182ed516e28807135dea 13-Nov-2006 Theodore Ts'o <tytso@mit.edu> Allow debugfs and dumpe2fs to support fs features under development

Add support for the new flag EXT2_FLAG_SOFTSUPP_FEATURES flag to
ext2fs_open() , which allows application to open filesystes with features
which are currently only partially supported by e2fsprogs.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
umpe2fs.c
d8b5f777438445407f7cd408bd5fe301e4687271 13-Nov-2006 Theodore Ts'o <tytso@mit.edu> Add explanatory message to badblocks that -n and -w are mutually exclusive

Addresses Debian Bug: #371869

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.c
8ade4792307303e27386420f60bacf032ad73d5d 08-Nov-2006 Theodore Ts'o <tytso@mit.edu> Fix e2fsck and mke2fs -c to be pass the last _block change to badblocks

Badblocks now interprets last_block argument as the last block to check,
instead of the number of blocks to check, to be consistent with the
badblocks man page.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
b290d2dc35411479e09328ef8d9c6220c33f2c49 18-Oct-2006 Theodore Ts'o <tytso@mit.edu> Fix mke2fs error checking when creating revision 0 filesystems

Fix revision 0 error checking so that it doesn't give spurious error
when the user gives a command-line option of "-O none".Add error
checking so that "-r 0 -j", "-r 0 -s 1", and "-r 0 -E resize=XXX" will
print an explanatory error message and abort.

Addresses Debian bug: #392107

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
8938ce64dca50d7d0f47f45fdc886de4f0939f0b 04-Oct-2006 Theodore Ts'o <tytso@mit.edu> Fix interpretation of the last_block command-line parameter to badblocks

Also update the display messages so they are accurate.

Addresses Debian Bug: #386475

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.c
d49db19e0d7810662ba5f8c985e924734d4ebb6c 02-Oct-2006 Theodore Ts'o <tytso@mit.edu> Increase default journal size to guarantee working on-line resizing

Make the smallest journal be 1400 blocks instead of 1024 blocks to
make sure there is enough room to support on-line resizing.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
til.c
cce2f497e07e426887a693744eaad8394d1b993a 02-Oct-2006 Theodore Ts'o <tytso@mit.edu> Fix Debian FTBFS problem caused by devmapper library using pthreads

Addresses Debian bug: #388718

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
akefile.in
8153d1cc096b3776dfec5c40f392f3e9667c5e99 02-Oct-2006 Theodore Ts'o <tytso@mit.edu> Fix misc/Makefile.in so that it builds even if e2fsck hasn't been built yet

Addresses Sourceforge Bug: #1565561

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
akefile.in
d1b4b85c3a201705c5d3d2916c7a9ca00a04e44c 12-Sep-2006 Eric Sandeen <esandeen@redhat.com> Fix more rounding overflows for filesystems that have 2**32-1 blocks

Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
ke2fs.c
f335864338a6fbce8134a445ffdd0cdeb3f3f1bc 12-Sep-2006 Eric Sandeen <esandeen@redhat.com> Add checks to make sure inode counts don't overflow a 32-bit value

Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
ke2fs.c
abf23439d51a3ddbca475b931abebd381ff7ceea 12-Sep-2006 Eric Sandeen <esandeen@redhat.com> Create new ext2fs library inlines: ext2fs_group_{first,last}_block()

Create new ext2fs library inline functions in order to calculate
the starting and ending blocks in a block group.

Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
umpe2fs.c
d0ff90d5202428583c78a60c3042e7b60d88bc45 12-Sep-2006 Eric Sandeen <esandeen@redhat.com> Fix signed vs unsigned printf format strings for block and inode numbers

There were still some %d's lurking when we print blocks & inodes; also
many of the counters in the e2fsck_struct were signed, and probably
need to be unsigned to avoid overflows.

Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
umpe2fs.c
2image.c
ke2fs.c
62c6d1403ea00dd72890862c761a41baa10a7ad4 12-Sep-2006 Eric Sandeen <esandeen@redhat.com> Remove unused variables

Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
2image.c
bb1a46a430a99f73ddaf7cf74e380dd5cf36382f 12-Sep-2006 Eric Sandeen <esandeen@redhat.com> Fix loops over group descriptors to prevent 2**32-1 block number overflows

For loops iterating over all group descriptors, consistently define
first_block and last_block in a way that they are inclusive of the
range, and do not overflow.

Previously on the last block group we did a test of <= first +
dec_blocks; this would actually wrap back to 0 for a total block count
of 2^32-1

Also add handling of last block group which may be smaller.

Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
umpe2fs.c
2image.c
9a85c2ab3b7daa602de6e0e70fe18fe0c8044ee3 12-Sep-2006 Theodore Ts'o <tytso@mit.edu> Minor man page updates to tune2fs(8) and uuidgen(1)

Addresses Debian Bug: #373004

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
une2fs.8.in
uidgen.1.in
a8862d9e90d0d94761ba28dbbf9674308fd7d7c0 30-Aug-2006 Theodore Ts'o <tytso@mit.edu> Fix potential 2**32-1 overflow by using e2p_percent()

Add a new functiom, e2p_percent(), which correct calculates the percentage
of a number based on a given percentage, without worrying about overflow
issues. This is used where we calculate the number of reserved blocks using
a percentage of the total number of blocks in a filesystem.

Based on patches from Eric Sandeen, but generalized to use this new function.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
ke2fs.c
une2fs.c
57d7bb7b087d93d67623e260c1380afed1665e24 30-Aug-2006 Theodore Ts'o <tytso@mit.edu> Remove unnecessary and unused resize2fs build rule from misc/Makefile.in

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
akefile.in
69022e029f3273b3b860bf701219cd3fe615f76b 30-Aug-2006 Theodore Ts'o <tytso@mit.edu> Fix potential 2**32-1 overflow problems by ext2fs_div_ceil()

Add a new function, ext2fs_div_ceil(), which correctly calculates a division
of two unsigned integer where the result is always rounded up the next
largest integer. This is used everywhere where we might have
previously caused an overflow when the number of blocks
or inodes is too close to 2**32-1.

Based on patches from Eric Sandeen, but generalized to use this new function

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Eric Sandeen <esandeen@redhat.com>
hangeLog
ilefrag.c
ke2fs.c
f776a2354d94b3936173a028cc6ee1973e561fec 20-Aug-2006 Andreas Dilger <adilger@clusterfs.com> blkid.8.in: Fix description of the -l option to be more accurate

This patch fixes the blkid.8.in description of the "-l" option. The man
page gives the impression that the first match is the one that is returned.
However, the blkid_find_dev_with_tag() function returns the device with
the highest priority (which is good, because that is what people really want).

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
lkid.8.in
42fef8df5c5aeadaf1b8020739cdaf190753efa1 06-Aug-2006 Andreas Dilger <adilger@clusterfs.com> Make the findsuper program more powerful

Improve the findsuper program by printing the uuid and label from the
superblocks, as well as the starting and ending offsets of the
filesystem given the information in the superblock. Omit by
default printing superblocks that are likely found in located in an ext3
journal unless an explicit -j option is given.

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
indsuper.c
c16e610c5100cd5829d969272af3035fac8e1a31 06-Aug-2006 Andreas Dilger <adilger@clusterfs.com> Require mke2fs -F -F for really dangerous operations

Disambiguate the use of "-F" (force) flag for mke2fs to avoid dangerous
situations. The use of -F is needed for regular backing files and
for filesystems on whole block devices. It should NOT be confused
with mke2fs on an apparently-mounted or in-use filesystem.

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.8.in
ke2fs.c
til.c
8fe81a3d53fbaa1670ece5fb7fd11dd5ae45b8da 06-Aug-2006 Andreas Dilger <adilger@clusterfs.com> Rename EXT3_EXTENTS_FL to EXT4_EXTENTS_FL and make it visible to the user

lsattr will display the EXT4_EXTENTS_FL flag

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ilefrag.c
067911ae734bb5fef7c5780a639533847b5b578c 16-Jul-2006 Andreas Dilger <adilger@clusterfs.com> Allow default inode_size to be specified in mke2fs.conf and document mke2fs -I

This patch allows "inode_size" to be specified in the mke2fs.conf file,
and always compiles in the "-I" option. In addition, it disallows
specifying the inode size on rev 0 filesystems, though I don't think
this was much of a danger anyways.

Clean up dead lines in ext2fs.h.

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.8.in
ke2fs.c
ke2fs.conf.5.in
e71be1c802a596be70bf47e5844b55914ebc2ea8 16-Jul-2006 Theodore Ts'o <tytso@mit.edu> Fix spelling typo in chattr(1) man page

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
hattr.1.in
cdfa2ba7a7fd8962b3c0a5d5113f2084a296a7a4 12-Jun-2006 Matthias Andree <matthias.andree@gmx.de> Install mke2fs.conf into root_sysconfdir rather than /etc.
akefile.in
abcfdfda7a5932cbb27ff243ed962119db2599a4 10-Jun-2006 Matthias Andree <matthias.andree@gmx.de> Read mke2fs.conf and e2fsck.conf from root_sysconfdir rather than harcoded /etc.
ke2fs.c
a63830271b5143416981f1171503e10bd6b6056f 30-May-2006 Matthias Andree <matthias.andree@gmx.de> Declare getopt() according to POSIX 2001 if getopt.h not found.

Signed-off-by: Matthias Andree <matthias.andree@gmx.de>
lkid.c
uidgen.c
f6567a889f071c6b294f85792abc75fa76953d1a 30-May-2006 Matthias Andree <matthias.andree@gmx.de> Fix printf types (FreeBSD has u_long for ntohl).

Signed-off-by: Matthias Andree <matthias.andree@gmx.de>
umpe2fs.c
9c07dc00b8ea175aa1446868b5cca5a21b41aecf 29-May-2006 Theodore Ts'o <tytso@mit.edu> Add missing backwards compatibility for ancient Linux systems

This fixes some (but not all) of the compatibility bugs which prevented
e2fsprogs from being compiled on a Linux 2.0.35 system. There are still
some unprotected use of long long's, and apparently some type problems
with the uuid library, but these can be fixed up later.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ilefrag.c
364f94107aa8f59fda0fbca1fafe7586d4737552 29-May-2006 Theodore Ts'o <tytso@mit.edu> Clarify -T option of mke2fs in its man page

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.8.in
c175ead3aa1fa9ea759dd74fac05a9ec08d6883d 23-May-2006 Theodore Ts'o <tytso@mit.edu> Create new filesystems with hash trees and on-line resizing as the default.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.conf
9447f38a174a5bd5e77e45358ddbddfd5660bdfe 22-May-2006 Theodore Ts'o <tytso@mit.edu> Fix spelling mistakes in e2fsck, mke2fs.conf, and resize2fs man pages

Addresses Debian Bugs: #368392, #368393, #368394

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.conf.5.in
e0f72cfdad605231739174fc82f17693d19baf3b 15-May-2006 Theodore Ts'o <tytso@mit.edu> Minor edits to tune2fs(8) man page

Clarify how the -c and -C options work

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
une2fs.8.in
f51d0eff906a99addbc683d3d296edd16f11ced8 14-May-2006 Theodore Ts'o <tytso@mit.edu> Remove needless sanity check in tune2fs's -i option.

We were complaining with a confusing error message if the user tried to specify
a check interval larger than a 365 days. It's probably a bad idea if the user wants to
do this, but it's not worth it to complain.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
une2fs.c
f63978aff759325b542de7134ab659c79dc47496 13-May-2006 Theodore Ts'o <tytso@mit.edu> Fix read/write badblocks testing in mke2fs and e2fsck

The exlcusive device safety check that was added inadvertently broke
e2fsck -cc and mke2fs -cc since e2fsck and mke2fs hold the device
in exclusive access when badblocks is run. So we add a private option
to badblocks, -X, which is passed by e2fsck and mke2fs to badblocks
to indicate that it is OK to skip the EXT2_MF_BUSY checks.

Addresses Debian Bug: #366017

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.c
ke2fs.c
f5fa20078bfc05b554294fe9c5505375d7913e8c 09-May-2006 Theodore Ts'o <tytso@mit.edu> Add support for EXT2_FEATURE_COMPAT_LAZY_BG

This feature is initially intended for testing purposes; it allows an
ext2/ext3 developer to create very large filesystems using sparse files
where most of the block groups are not initialized and so do not require
much disk space. Eventually it could be used as a way of speeding up
mke2fs and e2fsck for large filesystem, but that would be best done by
adding an RO_COMPAT extension to the filesystem to allow the inode table
to be lazily initialized on a per-block basis, instead of being entirely initialized
or entirely unused on a per-blockgroup basis.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
umpe2fs.c
ke2fs.c
40198dd0bbf494c36881155e4227923cfe00abe6 22-Apr-2006 Theodore Ts'o <tytso@mit.edu> Fix filefrag to be 32-bit clean

Currently filefrag uses signed int for block numbers, thus it reporting
corrupted block number for a file on a more than 8TB ext3. The following
trivial patch replace the signed int type block number with "unsigned
long type.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ilefrag.c
6515a6f1bc8dbf2f69d7a33a56a4ebf3e4f1910b 29-Mar-2006 Theodore Ts'o <tytso@mit.edu> Enhance dumpe2fs to print the size of journal

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
umpe2fs.c
d3cb5e52efff83f43e03ceb6b669a32f8115de80 27-Mar-2006 Theodore Ts'o <tytso@mit.edu> Fix typo's in badblocks(8)'s man page.

Addresses Debian Bug: #357951

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.8.in
3024d887df20838d62d25f74433aa914a80ac85b 27-Mar-2006 Theodore Ts'o <tytso@mit.edu> Explain in mke2fs and tune2fs man pages that shared journals are not supported

Addresses Debian Bug: #316040

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.8.in
une2fs.8.in
917cb46946e6843eeee92316633f3a68a4b4d538 27-Mar-2006 Theodore Ts'o <tytso@mit.edu> Fix minor installation problems in the misc's Makefile

Make sure $(DESTDIR)/usr/share/man/man5 exists when installing the man
page. Make sure the compressed version of the man pages are deleted
when installing the man pages.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
akefile.in
fac9525e2f88bbd19762995baeff693d1d1616f5 27-Mar-2006 Theodore Ts'o <tytso@mit.edu> Fix misc. problems in the mke2fs.conf(5) man page.

Use "stanza" to refer to top-level stanzas, and fix a few typos. Also
indent the sample profile format so it looks nicer.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.conf.5.in
fcadc8c84cf0a390ab8a41ff620bb31630b5e0a9 24-Mar-2006 Theodore Ts'o <tytso@mit.edu> mklost+found: Create full-sized a lost+found directory with 4k+ blocksizes

Fixed a bug caused by using an insufficiently larger counter field so
that mklost+found would work properly on filesystems with larger block
sizes.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
klost+found.c
9dc6ad1ecb0ba3caf14e05279f1cc3cea52095a2 24-Mar-2006 Theodore Ts'o <tytso@mit.edu> Change mke2fs to use /etc/mke2fs.conf as a configuration file

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
akefile.in
ke2fs.8.in
ke2fs.c
ke2fs.conf
ke2fs.conf.5.in
til.c
8deb80a5d1078cbe43eaffcdeebf0a1a549d6a54 19-Mar-2006 Takashi Sato <sho@tnes.nec.co.jp> Fix format statements to make e2fsprogs programs 32-bit clean

Change the format string(%d, %ld) for a block number and inode number
to %u or %lu.

Signed-off-by: Takashi Sato <sho@tnes.nec.co.jp>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
umpe2fs.c
2image.c
indsuper.c
ke2fs.c
616059bf23223648bd3bd04b4c7cfe3fb569e46e 19-Mar-2006 Theodore Ts'o <tytso@mit.edu> Change mke2fs to create filesystems with the device opened in exclusive mode.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.c
59571a51d792b00a6f9feb8d064ca890fb47d6fb 18-Mar-2006 Theodore Ts'o <tytso@mit.edu> Document the resize_inode filesystem option in mke2fs man page

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
ke2fs.8.in
1aa3d56ae719425b04e4b1275f73367fb84983b1 31-Dec-2005 Theodore Ts'o <tytso@mit.edu> Clarify chattr man page to make sure people realize limitations in the kernel

Add notes in chattr's man page to make sure the reader refers to the
BUGS AND LIMITATIONS section so that even an idiot will be able to see
that some of these attributes are not yet implemented. (Addresses
Debian Bug: #312515)

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
hattr.1.in
9b9a780f5a5823865f62f0c9fd194d262f63a06f 11-Dec-2005 Theodore Ts'o <tytso@mit.edu> Fix various gcc -Wall complaints.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
umpe2fs.c
2image.c
ilefrag.c
ke2fs.c
598ff01414fc01bc12be69c0fa1e852c4a93864d 10-Dec-2005 Theodore Ts'o <tytso@mit.edu> Fix bogus spaces before '!' and '?' characters in unused programs.

On Mon, Oct 31, 2005 at 01:23:53PM +0000, Martin Michlmayr wrote:
> Package: e2fsprogs
> Version: 1.38-2
> Severity: minor
>
> e2fsprogs isn't consistent in its use of spaces before an exclamation
> mark. The patch below fixed this by removing some spaces.
> (Interestingly, I couldn't find the error message in the sources where
> I noticed this inconsistency, namely "group descriptors corrupted !").

Patch applied, but none of the source files you touched are actually
compiled in e2fsprogs, and most of them weren't written by me. :-)

Addresses Debian Bug #336604

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
indsuper.c
fb733f8efd04477f0be5b2108156265b333baaca 10-Dec-2005 Theodore Ts'o <tytso@mit.edu> Add more description in mke2fs's man page of the -T option

Addresses Debian Bug #316811

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.8.in
a519836a29f1cc9610337f48b677a0c5440624c2 13-Nov-2005 Theodore Ts'o <tytso@mit.edu> Add missing fsck.* programs to SEE ALSO section of fsck's man page.

fsck.8.in: Add additional fsck.* programs to the SEE ALSO section.
Fix missing commas in list. (Addresses Debian Bug #329859)

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
sck.8.in
6a7075df301f36587fd99d900d1799710e82262f 25-Sep-2005 Theodore Ts'o <tytso@mit.edu> Fix mke2fs man page's description of the -L option

Fix mke2fs man page to properly document the fact that mke2fs -L takes
an argument. (Addresses Debian Bug #322188)

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
ke2fs.8.in
5f51d1c1eb87066ca3407297b2e0490dd9a341f0 25-Sep-2005 Theodore Ts'o <tytso@mit.edu> Fix display bug in badblocks -w

Add extra spaces when printing the "done" message to clear out the
block number to fix a display corruption when the -s option is used to
display the progress of the test. (Addresses Debian Bug #322231)

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
hangeLog
adblocks.c
2524785d5daf9457c01aa4d1a9ee1c9c20dfbfd9 06-Jul-2005 Andreas Dilger <adilger@clusterfs.com> Miscellaneous mke2fs cleanup

Reorder some mke2fs arg parsing to be more alphabetical, and remove
use of atoi() (which doesn't report errors) in favour of strtoul().

Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
ke2fs.c
ce911145ed0fdd1918ee0c80d407c3e778dc64ee 06-Jul-2005 Andreas Dilger <adilger@clusterfs.com> Allow fractional percentages to the -m option in mke2fs and tune2fs

Allow the reserved blocks ratio to be specified in fractional
percentages.

Addresses-Debian-Bug: #80205
Signed-off-by: Andreas Dilger <adilger@clusterfs.com>
hangeLog
ke2fs.c
une2fs.c
1f965c8d961ec88a8917b2e99cfb43c4ccdfb19b 01-Jul-2005 Theodore Ts'o <tytso@mit.edu> Update for e2fsprogs 1.38 release.
hangeLog
675b79c47f7fb437d48ceff82db33c6cc780a508 01-Jul-2005 Theodore Ts'o <tytso@mit.edu> Change mke2fs to refuse to create filesystems greater than 2*31-1 blocks,
at least unless forced.
hangeLog
ke2fs.c
d9781cee2d1331280dbd13d49989498a3ca7c2a8 27-Jun-2005 Theodore Ts'o <tytso@mit.edu> Fix minor typos in tune2fs's man page pointed out by Benno Schulenberg.
hangeLog
2image.8.in
bb145b01cf5fd27d9afe03c3262d0e1a326e7ec1 20-Jun-2005 Theodore Ts'o <tytso@mit.edu> Fix e2fsprogs messages for grammar and consistency, based on suggestions
from Benno Schulenberg.

Add missing _() so all strings can be internationalized.
hangeLog
adblocks.c
umpe2fs.c
indsuper.c
ke2fs.c
artinfo.c
une2fs.c
b7c1d202e454f8357810251e25bfbed518c3ef2e 20-Jun-2005 Theodore Ts'o <tytso@mit.edu> Clean up e2image man page, mostly based on suggestions from
Benno Schulenberg.
hangeLog
2image.8.in
9d3cce87bec05a8bbb5da716b3be802164da2b1f 20-Jun-2005 Theodore Ts'o <tytso@mit.edu> Make it easier to compile the misc/partinfo program
for testing purposes only)
akefile.in
d7febfa7cccf21f4f991bcea6174a11b3cf564c9 16-Jun-2005 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): Fix missing close parenthesis from bad inode
ratio error message.
hangeLog
ke2fs.c
15f5051e390bfb5a9e64d01b26a52fad43514652 05-Jun-2005 Theodore Ts'o <tytso@mit.edu> Fix a minor spelling typo in blkid's man page, and update e2fsck's REPORTING
BUGS section to request that e2fsck's messages printed in English, and to
send a raw e2image filesystem dump if possible.
hangeLog
lkid.8.in
2fa8f37ffff4687228d9f204062f2d27b0e5b919 05-Jun-2005 Theodore Ts'o <tytso@mit.edu> On Linux 2.6 systems, mke2fs and badblocks will check to see whether
the filesystem appears to be busy; if so, the programs will print an
error message and abort. (Addresses Debian Bug #308594).
hangeLog
adblocks.c
til.c
8198e7912663eb13680391979bfb6177f478e9e0 21-May-2005 Theodore Ts'o <tytso@mit.edu> filefrag.c (frag_report, get_bmap): The FIBMAP and FIGETBSZ ioctls return
an integer, not an unsigned long. Fix this to avoid problems on 64-bit
platforms where the size of an integer != the size of a long.
(Addresses Debian Bug #309655)
hangeLog
ilefrag.c
7e69ba2ae2604456cc17257bf14dc7a0576657cf 10-May-2005 Theodore Ts'o <tytso@mit.edu> Change the default journal size to be bigger for larger filesystems,
given modern memory sizes. Now, for filesystems greater than 4GB, we
use a journal of 128 MB instead 32 MB.
hangeLog
til.c
f35fd3d5eeb3e35660ea87adbc170978c3cdf9e3 09-May-2005 Theodore Ts'o <tytso@mit.edu> Fix some minor typo's and grammar's strings, and remove debugging strings
from needing to be translated. Patch is from Benno Schulenberg.
hangeLog
hattr.c
une2fs.c
ed6acfa337ca74912079b85196cf1263f6daf1a2 07-May-2005 Theodore Ts'o <tytso@mit.edu> Add a new option to the blkid program, -l, which will more efficiently search
for a single device.

Add a new function to the blkid library, blkid_probe_all_new().

Optimize blkid_find_dev_with_tag() so that extraneous device validation are
skipped. (Makes a difference for system with a large number of disks).
hangeLog
lkid.8.in
lkid.c
c37543df2f58f454c29fece5997bd0e9d6ee7533 07-May-2005 Theodore Ts'o <tytso@mit.edu> Add new two new functions to the blkid library: blkid_dev_set_search(), and
blkid_dev_has_tag(), and change the blkid program to take advantage of these
functions.
hangeLog
lkid.c
7b921b9ab9131346db7467b1e0a955859685c744 06-May-2005 Theodore Ts'o <tytso@mit.edu> Escape hyphens in the e2image and tune2fs man pages so that they show up
correctly after groff processes them.
2image.8.in
une2fs.8.in
75e93ab0975f042edc25dde6f5d9496360207a94 06-May-2005 Theodore Ts'o <tytso@mit.edu> Update "make depend" information. Fixes SMP parallel build problem.
(Addresses Sourceforge Bug: #1157933)
akefile.in
0af8c33be075d7a989993bf2c159c640418b7ed4 06-May-2005 Theodore Ts'o <tytso@mit.edu> Fix potential portability issue in the blkid program. (On architectures
where char is unsigned). (Addresses Sourceforge Bug: #1180585)
hangeLog
lkid.c
f37ab68a26bacf4f5cc7643b8373e40292b7682a 06-May-2005 Theodore Ts'o <tytso@mit.edu> Corrects a few mistakes in the fsck man page, wraps two overlong lines,
and changes "bad" to "invalid" in some messages to avoid confusion with
"bad blocks" in the e2fsck, mke2fs, and badblocks programs. Thanks to
Benno Schulenberg. (Addresses Sourceforge Bug: #1189803)
hangeLog
adblocks.c
sck.8.in
ke2fs.c
bfd9762de631e312c3d982ca7389fcd06547b581 06-May-2005 Theodore Ts'o <tytso@mit.edu> Fix a bug in filefrag so that it doesn't when the first block found is an
indirect block, it doesn't falsely count an extra discontunity. (Addresses
Debian Bug #307607).
hangeLog
ilefrag.c
8139367bbde5f56a3febbdaa9205796a88310847 16-Apr-2005 Theodore Ts'o <tytso@mit.edu> Fix spelling mistakes in man pages. (Addresses Debian Bugs: #304591,
#304592, #304594, #304597, #304593)
hangeLog
adblocks.8.in
umpe2fs.8.in
sck.8.in
une2fs.8.in
a4897d41c2e75c78521d3ddd07f76f76c66d7214 09-Apr-2005 Theodore Ts'o <tytso@mit.edu> Don't abort filefrag if EXT3_IOC_GETFLAGS ioctl is not supported,
so that filefrag can work on non-ext2/3 filesystems, as advertised.
(Addresses Debian Bug: #303509)
hangeLog
ilefrag.c
bcf5aea294a39cb3590568b9afe6d48b7fc718bb 09-Apr-2005 Theodore Ts'o <tytso@mit.edu> Fix minor spelling typo in the mke2fs man page.
hangeLog
ke2fs.8.in
fd4b28efd311e58811fcb652af003197d019ae29 22-Mar-2005 Theodore Ts'o <tytso@mit.edu> Update for the e2fsprogs 1.37 release.
hangeLog
e27b45639aeef964035c1fa78790f761ed31c175 21-Mar-2005 Theodore Ts'o <tytso@mit.edu> Fix mke2fs so that it writes the root directory
using ext2fs_write_new_inode(), and fix ext2fs_write_new_inode()
so that it initializes i_extra_isize properly.
hangeLog
ke2fs.c
63253946309651c1015947d522e2ba4b35a807a5 19-Mar-2005 Theodore Ts'o <tytso@mit.edu> Add new functions which convert between a string and os_type: e2p_os2string()
and e2p_string2os() in the e2p library.
hangeLog
ke2fs.c
3d16b3f4bbb4c1f43a442e303658a7a50320c40a 19-Mar-2005 Theodore Ts'o <tytso@mit.edu> filefrag.c (frag_report): Automatically detect files that are
stored using the new experimental file fragments format,
and use the non-ext2 algorithm for determing the number of
extents. Avoid reporting a false discontinuity if there
is a non-allocated block (or extent) at the beginning of
the file.
hangeLog
ilefrag.c
3eee5e9eed61ab6f635f4e0c236e999564a73b77 06-Feb-2005 Theodore Ts'o <tytso@mit.edu> Update for release of e2fsprogs 1.36.
hangeLog
7f1faaa48259fe8fe99064b1fceaa765e38bfc9b 04-Feb-2005 Theodore Ts'o <tytso@mit.edu> filefrag.c (frag_report): In verbose mode, print the first and
last block numbers; may be useful for some folks.
hangeLog
ilefrag.c
07f031fd1d76a4941d12bb5cc6d354fa4dd2c7a4 04-Feb-2005 Theodore Ts'o <tytso@mit.edu> Define _XOPEN_SOURCE to be 500 to fix compilation problems on Solaris.
hangeLog
une2fs.c
ea774315631accb05e2407765c6b448d648d14d6 28-Jan-2005 Theodore Ts'o <tytso@mit.edu> Fix two bugs found by the regression test suites. The bug was created when
we changed ext2fs_create_resize_inode to always create the resize inode,
even when s_reserved_gdt_blocks is zero. Mke2fs and e2fsck was calling
ext2fs_create_resize_inode() unconditionally, and depending on
s_reserved_gdt_blocks to be zero, instead of explicitly checking the
resize_inode feature.
hangeLog
ke2fs.c
18d12963335b04a402d097af1d714e8708805ada 28-Jan-2005 Theodore Ts'o <tytso@mit.edu> blkid.c (main, compare_search_type): Make blkid -t work more
consistently when the blkid cache file is explicitly set
to /dev/null. (Addresses Debian Bug #292425)

Also expose blkid_verify() as a public function to the blkid library.
hangeLog
lkid.8.in
lkid.c
8430203590b285aec03706ad05cab261c8011104 28-Jan-2005 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): Don't use a blocksize greater than 4k, even on
2.6 kernels, unless explicitly requested by the user; not
all 2.6 kernels (includeing stock 2.6 kernels as of this
writing) don't support blocksizes > 4k.
hangeLog
ke2fs.c
20953129e6d280c3bb46ced5e8cab18faeca7cbc 28-Jan-2005 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): If the device size is too big to be expressed
using a 1k blocksize, retry with a 4k blocksize.
(Addresses Sourceforge bug #1106631)
hangeLog
ke2fs.c
f923bf2a81e349f95310458651d7fe9a7291058b 26-Jan-2005 Theodore Ts'o <tytso@mit.edu> Fix "make uninstall" to make sure it removes everything that is installed.
hangeLog
akefile.in
79fc2a99ace9e7a9cdce7227320165f7fb57c591 26-Jan-2005 Theodore Ts'o <tytso@mit.edu> e2image.c (scramble_dir_block): Make sure the unused space
in the '.' and '..' directory entries are cleared when
e2image -rs is specified.
hangeLog
2image.c
fbc3514623262e695679d08557ad270fd9df6eeb 25-Jan-2005 Theodore Ts'o <tytso@mit.edu> Clarified the tune2fs man page about how the -c option works.
hangeLog
une2fs.8.in
8909292655677aa03a882f0ef4e65c58a839ad66 22-Jan-2005 Theodore Ts'o <tytso@mit.edu> Make blkid -t display all devices that match the specified criteria,
not just the first one. (Addresses Debian Bug #290530)

Update the blkid man page's description of the -t option.
hangeLog
lkid.8.in
lkid.c
0aa0e0c7d622f5b6c9b4150cee705b8c1dfe5bd0 20-Jan-2005 Theodore Ts'o <tytso@mit.edu> filefrag.c (frag_report): Fix filefrag so that it works
correctly with sparse files; unallocated blocks should not
be treated as a discontinuity.
hangeLog
ilefrag.c
c6cdada26f774ad0a0755290c7721cf7a7a7b8b4 20-Jan-2005 Theodore Ts'o <tytso@mit.edu> Fix stupid typo in the CreateOS FreeBSD/Solaris changeset. Also included
changelogs which I forgot to include in the changeset.
hangeLog
ea1e8f471ea7f9e8e8eee002bdd37afee4af14ac 20-Jan-2005 Theodore Ts'o <tytso@mit.edu> Add interpretation of OS Creator values for FreeBSD and Lites in mke2fs
and dumpe2fs.

Eventually, we should fold this into a single function for converting
numbers to creator os codes, and vice versa (in TODO file)
ke2fs.c
e99decb0441cbf8fc1f33b254e510273a6095fd4 19-Jan-2005 Theodore Ts'o <tytso@mit.edu> Remove debugging printf from e2image -s's code.
2image.c
d851ed3983ed4b25d1db58bfbd23dcb6712c0c3b 19-Jan-2005 Theodore Ts'o <tytso@mit.edu> e2image.c, e2image.8.in: Add support for the -s option which
scrambles directory entries for raw image files.
hangeLog
2image.8.in
2image.c
32237014a1bd0ee2cdec9a54344f84c5c178c75f 18-Jan-2005 Theodore Ts'o <tytso@mit.edu> Various portability fixes for Solaris systems.
hangeLog
une2fs.c
9290404ea7b135a1a0cc8d6518395e9a768087bf 17-Jan-2005 Theodore Ts'o <tytso@mit.edu> Applied patch from Francois Petillon (fantec at proxad.net) to
avoid a file descriptor leak in the filefrag program.
hangeLog
ilefrag.c
322d9d48523a555eab82824fded8b058cf1ba58b 13-Jan-2005 Matthias Andree <matthias.andree@gmx.de> fsck.c:
Include <signal.h> to avoid compiler trouble.
sck.c
c76564a8784c3c44a6a0516e0fc40f10ec6221ed 06-Jan-2005 Theodore Ts'o <tytso@mit.edu> badblocks.c (alarm_intr): Increase the number of spaces reserved
for printing block numbers, so we can correctly display
block numbers numbers greater than 999,999,999.
(Addresses SourceForge bug #1016163)
hangeLog
adblocks.c
22ba4c1dedd61cef3f4e821a0bcfbceccc571a0f 06-Jan-2005 Theodore Ts'o <tytso@mit.edu> Make tune2fs and e2fsck consistent about allowing at most 50% of the blocks
in a filesystem to be reserved for allocation by the root user.
hangeLog
une2fs.c
22dcccdd1aa295db6fa2696d63c60902aabbbfff 05-Jan-2005 Theodore Ts'o <tytso@mit.edu> fsck.c (PRS): Apply Fedora's e2fsprogs-1.35-progress.patch from
e2fsprogs-1.35-11.2. Fixed multiple command-line parsing
bugs so that backwards compatibility is maintained, and so
that certain command-line options wouldn't be ignored.
hangeLog
sck.8.in
sck.c
c6a44136b9b82625e7b36a574ddb3a08b6727e97 05-Jan-2005 Theodore Ts'o <tytso@mit.edu> mke2fs.c (parse_extended_opts): Rename the -R option to -E. Fix
the resize= raid/extended option so it actually works.
(The patch from Fedora e2fsprogs-1.35-11.2 claimed it
worked, but it was a placebo, despite the claim that it
worked in the usage message.)
hangeLog
ke2fs.8.in
ke2fs.c
6e82cd7e953bc6f00c47ca8f29c61d61fb39d3d3 05-Jan-2005 Theodore Ts'o <tytso@mit.edu> Fix gcc -Wall nits.
hangeLog
2image.c
2initrd_helper.c
55f4cbd96e0029f0ff67c4913192d87bf52fd149 05-Jan-2005 Theodore Ts'o <tytso@mit.edu> Add new function in e2p for parsing the number of blocks on the command line
for mke2fs and resize2fs, and use this function so that filesystem size
inputs to e2fsprogs command line programs are parsed consistently.
hangeLog
ke2fs.c
35238dd1a5585d042e5f0d478211e9fdfb4873e1 23-Dec-2004 Theodore Ts'o <tytso@mit.edu> Enhance dumpe2fs so that it will print the location of the reserved
GDT blocks if they are present.
hangeLog
umpe2fs.c
c88bce8df0ecf511b0c63de6292f215d562860a2 22-Dec-2004 Theodore Ts'o <tytso@mit.edu> In fsck, check return from malloc of fsck_path, and print an error message
if it fails.
hangeLog
sck.c
690e693cafa83eadbf7ce80291f53a7e89e9c2cc 22-Dec-2004 Theodore Ts'o <tytso@mit.edu> tune2fs.c (parse_time): Fix minor buglet; the parse_time routine
should use the passed-in argument, not optarg, even though
the two are the same in the case of the current caller of
said function. (i.e., no user-visible problems were caused
by this, even though the code was wrong).
hangeLog
une2fs.c
22c6821a2495b0bf340dd3c277713bb1bee01144 15-Dec-2004 Theodore Ts'o <tytso@mit.edu> Supplied changelog for resize inode patch.
hangeLog
d323f8fb369089b97d6f3bf0f8d64ceeab0b10f5 15-Dec-2004 Theodore Ts'o <tytso@mit.edu> Add support for on-line resizing ala the resize inode. This patch
is taken from Fedora Core 3's e2fsprogs 1.35-11.2.src.rpm's
e2fsprogs-resize.patch.
ke2fs.c
522798d3428807800d8471f5ac3050b82aa9de97 15-Dec-2004 Theodore Ts'o <tytso@mit.edu> Add install-strip and install-shlibs-strip targets

Use Linux-kernel-style makefile output for "make install"

Update intl/Makefile.in to version from gettext 0.14.1
hangeLog
akefile.in
6d4022786dc43e66f0699a72925b946b9d2e4439 15-Dec-2004 Theodore Ts'o <tytso@mit.edu> Use MKINSTALLDIRS macro so that the Makefiles can find the script
correctly.

Update Makefile dependencies.

Update "make depend" production so that it filters out comments
inserted by newer gcc compilers.

Remove sync from e2fsck's "make all" target.
hangeLog
akefile.in
11d1e61f935237dd3e851fe846ca99c723be859e 01-Dec-2004 Theodore Ts'o <tytso@mit.edu> Fix minor glitches in the e2image man page.
hangeLog
2image.8.in
605e6f0e24757e5e0713bd3206d09cb495d93ab7 01-Dec-2004 Theodore Ts'o <tytso@mit.edu> Make make distclean remove all generated files.

Update the po and intl changelog files to indicate that we updated to
gettext 0.14.1
hangeLog
akefile.in
2e8ca9a26b0bd7dae546a3f9a98df67b043fe3be 30-Nov-2004 Theodore Ts'o <tytso@mit.edu> Add support for passing options to the io layer using the URL syntax. For
example, /tmp/test.img?offset=1024. Multiple options can separated using
the & character, although at the moment the only option implemented is
the offset option in the unix_io layer.
hangeLog
une2fs.c
47204ff9830b17fc6317f48e88d2039f57a5d10a 30-Nov-2004 Theodore Ts'o <tytso@mit.edu> Use Linux-kernel-style makefile output to make it easier to
see errors/warnings.
hangeLog
akefile.in
3a03c2ca5e0aa9fabe1ae7e635d1f91a3a9eaec2 19-Nov-2004 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Removed the word "destructive" when describing the
read-write test, since it can confuse people.
hangeLog
ke2fs.8.in
029de632771fec8e06a29a310a46e8f10670f1a4 08-Oct-2004 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Add an explanation about why reserved blocks in a
filesystem is a good thing.
hangeLog
ke2fs.8.in
df95e09a5256529b7bb145a5a98c52aacdbfb65b 28-Sep-2004 Theodore Ts'o <tytso@mit.edu> Document the default blocksize used by badblocks(8).
(Addresses Debian Bug #273679)
hangeLog
adblocks.8.in
d99225ecceb580d497c649daa4894fa2e10019ad 25-Sep-2004 Theodore Ts'o <tytso@mit.edu> Only use blocksizes > 4k on Linux 2.6 and newer systems.
(Addresses Debian Bug #271064)
hangeLog
ke2fs.c
137ce8ca04265f1d46e622ed49ad6dbe922f6d63 24-Sep-2004 Theodore Ts'o <tytso@mit.edu> Remove double "//" when listing attributes in the root directory or
when there is a trailing '/' in the directory name. (Addresses Debian
Bug #272943)
hangeLog
sattr.c
6ea8d0f7c84985a3243330d4029a263c78689074 24-Sep-2004 Theodore Ts'o <tytso@mit.edu> Make sure /usr/lib is creaeted when installing e2initrd_helper.
(Addresses Debian Bug #272698)
hangeLog
akefile.in
3ef681c5dbaccd2d905026b964c580f2ce3466ca 19-Sep-2004 Theodore Ts'o <tytso@mit.edu> badblocks.c: Use _() around done_string, so that it gets
correctly translated. (Addresses Debian Bug #252836)
hangeLog
adblocks.c
91d71c41473099500f07ab0edaa12a053d9c4969 19-Sep-2004 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in: Add a description of the .journal file, why it
is created, and how e2fsck converts it to an invisible
journal. (Addresses Debian Bug #256760)
hangeLog
une2fs.8.in
5d40773ba8447640a5aeaaa2e98bc7feecd61698 18-Sep-2004 Theodore Ts'o <tytso@mit.edu> Revamp the initrd scripts to use a new helper program,
e2initrd_helper, which obviates the need for using /bin/awk
and mounting/unmounting the root filesystem during the initrd
process. (Addresses Debian Bug #247775)
hangeLog
akefile.in
2initrd_helper.c
45e18ad77a541e07a71216e7671dd5e4ad120fcf 17-Sep-2004 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in: Mention that e2fsck -D might be useful after
setting the dir_index filesystem feature. (Addresses
Debian Bug #268148)
hangeLog
une2fs.8.in
8c6b6483887c81b2f04db3e0683bd1d00dba3714 29-Jul-2004 Theodore Ts'o <tytso@mit.edu> e2image.c, e2image.8.in: Add new option -I which allows the
administrator to install an metadata stored in an e2image
file to a filesystem. Obviously, this can be very
dangerous!
hangeLog
2image.8.in
2image.c
94f6ab3fd19bb6b98884a2bbf7d2285cb83daccc 25-Jun-2004 Theodore Ts'o <tytso@mit.edu> Makefile.in (mke2fs.static): Add the blkid library to so
mke2fs.static builds correctly.
hangeLog
akefile.in
aa5c0a4562fd9f991557311e400cc93972bbea3e 05-May-2004 Theodore Ts'o <tytso@mit.edu> Remove .cvsignore files; they were out of date, and causes lintian
to flame about their presence in the source tarball.
cvsignore
e02bb6d6abb7d3fadbf16f65cc35ebe78eb20d8a 13-Apr-2004 Theodore Ts'o <tytso@mit.edu> Fix obvious spelling mistake in mke2fs man page.
ke2fs.8.in
d06863f0e5db501366cf55c85d8e26de1fa4fcc6 12-Apr-2004 Theodore Ts'o <tytso@mit.edu> Remove TUNE2FS_SKIP_MOUNT_CHECK environment variable support; it is
not needed in the initrd script, and wasn't completely supported
anyway.
hangeLog
une2fs.8.in
une2fs.c
ccdd1d6d994a3d6d44ed92f8010dfad884b9c7a5 11-Apr-2004 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in: Fixed spelling error (Addresses Debian Bug #242995)
hangeLog
une2fs.8.in
481d1396c2ef426169f3c1f7a939a9245743462b 11-Apr-2004 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Clarify man page's description of the '-O' option.
(Addresses Debian Bug #241940)
hangeLog
ke2fs.8.in
2eb3b20e808e360f59d58ced7e833836b652648f 07-Apr-2004 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
une2fs.8.in
une2fs.c
dd60705665b916c9f67c3bbf86aa6bb620a14ecd 03-Apr-2004 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
akefile.in
289e0557c24c68290b6d9b73b09674447801fdac 30-Mar-2004 Matthias Andree <matthias.andree@gmx.de> GNU/KFreeBSD portability fixes. (Addresses Debian Bug #239934)
til.c
9b2d5e912b98a4a22d8daab2004ae92bd4a2d2a3 22-Mar-2004 Theodore Ts'o <tytso@mit.edu> Eliminate the partially implemented -p option in blkid.
hangeLog
lkid.8.in
lkid.c
8927998f8229a103037ba5f49abe30c620ce322c 20-Mar-2004 Theodore Ts'o <tytso@mit.edu> blkid.c (main, print_tags): Add new option -o which allows the
user to control the output format of blkid.
hangeLog
lkid.8.in
lkid.c
6750877cb0546484bf01abdbb58f8f20652aa649 20-Mar-2004 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Fix spelling typos (Addresses Debian Bug #238741)
hangeLog
ke2fs.8.in
39595ce86c1567461ef699995f659c4c7721e2a3 13-Mar-2004 Theodore Ts'o <tytso@mit.edu> Update and cleaned up blkid man page significantly.
lkid.8.in
8ac59297e3bd2b0c7c25032c44b296e144b286ad 08-Mar-2004 Theodore Ts'o <tytso@mit.edu> 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)
hangeLog
2image.8.in
5bec574043035397b190c01d1164940956f4d7b5 05-Mar-2004 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
ogsave.c
b70b1167fec6d90771344d8560a1fc1b8731b9a9 28-Feb-2004 Theodore Ts'o <tytso@mit.edu> Update version number for e2fsprogs 1.35 release.
hangeLog
167af997e3a8fb36cb9fc8db9c40fb62a7f9464b 28-Feb-2004 Theodore Ts'o <tytso@mit.edu> badblocks.c (main): Change the default number of blocks tested
at once from 16 to 64. (Addresses Debian bug #232240)
hangeLog
adblocks.8.in
adblocks.c
6b394c1cd36f5aef40d9b17fa0b76cf0a9fd3cc6 27-Feb-2004 Theodore Ts'o <tytso@mit.edu> filefrag.c: Fix gcc -Wall nits.
hangeLog
ilefrag.c
023cbb302963a93d0247e95a02591cb304bf152c 27-Feb-2004 Theodore Ts'o <tytso@mit.edu> 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)
hangeLog
adblocks.c
993aa11dc8f20122b58332cb49085e190ab3a9e0 22-Feb-2004 Theodore Ts'o <tytso@mit.edu> 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.)
hangeLog
sck.c
d605ba11ab86a0a5885a82c842f649a438ac179d 04-Feb-2004 Theodore Ts'o <tytso@mit.edu> filefrag.c: Use #ifdef __linux__ instead of __LINUX__ so that it
actually compiles on Linux. (Addresses Debian bug
#230992)
hangeLog
ilefrag.c
2e5a1b9e6e2af21be33ff9871bff34772c7ca7f8 01-Feb-2004 Theodore Ts'o <tytso@mit.edu> chattr.1.in: Clarify man page.

chattr.1.in, dumpe2fs.8.in, lsattr.1.in, mklost+found.8.in,
tune2fs.8.in: List Theodore Ts'o <tytso@alum.mit.edu> as
the current maintainer.
hangeLog
hattr.1.in
umpe2fs.8.in
sattr.1.in
klost+found.8.in
une2fs.8.in
2293a4d5deb30b02d90c4d0aee516e8280092a58 20-Jan-2004 Theodore Ts'o <tytso@mit.edu> chattr.c (main): Add support for '--' to stop options
processing. (Addresses Debian bug #225188).
hangeLog
hattr.c
b34cbddbd66baedc163d36dd281b63ef478f547a 28-Dec-2003 Matthias Andree <matthias.andree@gmx.de> Re-add FreeBSD support.
Tested on FreeBSD 5.2-CURRENT as of 2003-12-28.
Tested on FreeBSD 4.9-STABLE as of 2003-12-27.
ilefrag.c
til.c
b969b1b8a5c13992cadb026114731958644540d8 28-Dec-2003 Matthias Andree <matthias.andree@gmx.de> Fix more compiler warnings.
klost+found.c
une2fs.c
cf119027c59a0c61759b8867b034db1b86f8aea2 26-Dec-2003 Theodore Ts'o <tytso@mit.edu> chattr.1.in: Update text indicating the 'c', 's', and 'u'
attributes are not currently supported to remove any
mention of a specific kernel version. (Addresses Debian
bug #214920)
hangeLog
hattr.1.in
64c90eec83a248cb51352eb89c19e55d0a1c19f1 26-Dec-2003 Theodore Ts'o <tytso@mit.edu> fsck.8.in: Update text describing "standard" options supported
by filesystem-specific checkers. (Addresses Debian bug
#222606)
hangeLog
sck.8.in
477b23532773e780c90c371715b49f423657983a 25-Dec-2003 Theodore Ts'o <tytso@mit.edu> Add filefrag program to the list of programs installed in /usr/sbin.
hangeLog
akefile.in
aa3a2fe49a7f2fed1c945e2ad4b858b39a4e0a7b 21-Dec-2003 Matthias Andree <matthias.andree@gmx.de> Trivial warning fixes.
ilefrag.c
9642413014c0c037339c392cdc20343c4e80f079 17-Dec-2003 Theodore Ts'o <tytso@mit.edu> Initial checkin of the filefrag program, which reports on how
badly fragmented a file might be.
akefile.in
ilefrag.8.in
ilefrag.c
c65e54b00f3eb5753933340bb036e3a5e2f927bf 11-Dec-2003 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in: Fix some whitespace errors in the command synopsis.
hangeLog
une2fs.8.in
2f853099bc9d3a83b2c3c7d6e936b1733b6b7ec4 07-Dec-2003 Theodore Ts'o <tytso@mit.edu> Remove warning message about using NLS.
ls-enable.h
1e6e4c5e5c8313a877881f800f07dcdd7bee5dd2 07-Dec-2003 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): Fix mke2fs -V so that it prints the version banner.
hangeLog
ke2fs.c
544349270e4c74a6feb971123884a8cf5052a7ee 07-Dec-2003 Theodore Ts'o <tytso@mit.edu> Fix gcc -Wall nitpicks
hangeLog
adblocks.c
lkid.c
hattr.c
umpe2fs.c
2image.c
sck.c
sck.h
sattr.c
ke2fs.c
ls-enable.h
une2fs.c
til.c
817e49e3ce0a70252113438440fc12607140d032 21-Nov-2003 Theodore Ts'o <tytso@mit.edu> Check the returned name from blkid_get_devname in tune2fs and
e2fsck, and print an error if the requested LABEL/UUID does
not exist (previously, we core dumped!)
hangeLog
une2fs.c
ef344e13d2125e9dae3764b98f9fe3a170cd79e2 21-Nov-2003 Theodore Ts'o <tytso@mit.edu> Centeralize calculation of which blocks are reserved/used for
the superblock and block group descriptors into two functions:
ext2fs_reserve_super_and_bgd, found in lib/ext2fs/alloc_sb.c, and
ext2fs_super_and_bgd_lock, found in lib/ext2fs/close.c.

Change e2fsck/pass1.c (mark_table_blocks), lib/ext2fs/closefs.c
(ext2fs_flush), lib/ext2fs/initialize.c (ext2fs_initialize),
and misc/dumpe2fs.c (list_desc) to use these functions.

e2fsck/ChangeLog
pass1.c (mark_table_blocks): Use the new function
ext2fs_reserve_super_and_bgd to calculate the blocks to be
reserved.

lib/ext2fs/ChangeLog
closefs.c (ext2fs_super_and_bgd_loc): New function which
centralizes the calculation of the superblock and block
group descriptors.
(ext2fs_flush): Use ext2fs_super_and_bgd_lock to figure
out where to write the superblock and block group
descriptors.

alloc_sb.c (ext2fs_reserve_super_and_bgd): New function which
reserves space in the block bitmap using
ext2fs_super_and_bgd_loc.

initialize.c (ext2fs_initialize): Use
ext2fs_reserve_super_and_bgd to initialize the block bitmap.

misc/ChangeLog
dumpe2fs.c (list_desc): Use ext2fs_super_and_bgd_loc to
determine the locations of the superblock and block group
descriptors.
hangeLog
umpe2fs.c
d07b150371f4a46f2729ab2635fc8f23c9ffca58 21-Nov-2003 Theodore Ts'o <tytso@mit.edu> util.c (check_plausibility): Support 2.6 kernel header files,
instead of having the build to crash. (Addresses Debian
bug #221778)
hangeLog
til.c
1cca86f5d886eeda2d3afb1206419ef4642c30ba 01-Sep-2003 Theodore Ts'o <tytso@mit.edu> Add regression tests for mke2fs.

Mke2fs has been modified to honor the MKE2FS_SKIP_PROGRESS,
MKE2FS_DEVICE_SECTSIZE, and MKE2FS_SKIP_CHECK_MSG in order
facilitate the regression testing.
hangeLog
ke2fs.c
79120f8002f9a6abc348e6f3167d86e4a20e5cba 01-Sep-2003 Theodore Ts'o <tytso@mit.edu> mke2fs.c (set_fs_defaults): Fix bug which caused -T largefile or
-T largefile4 to core dump due to a division by zero
error. (Addressed Debian bug #207082)
hangeLog
ke2fs.c
a7ac1df34fbed4c852d3227344e3dd0a69583013 24-Aug-2003 Theodore Ts'o <tytso@mit.edu> Adjust description line so that apropos "ext2" or "ext3" will
find all of the e2fsprogs man pages. (Addresses Debian Bug #206845)
hangeLog
umpe2fs.8.in
2image.8.in
2label.8.in
ke2fs.8.in
une2fs.8.in
1f9a60c251261f8c10d29da4e6202fe530b4684d 01-Aug-2003 Theodore Ts'o <tytso@mit.edu> badblocks.c (set_o_direct): Add check to make sure the file
offset of the device is page aligned. (Addresses Debian
Bug #203713)

badblocks.c (test_ro, test_rw): Add code to recover after an
error so that we continue reading on page-aligned
boundaries. (Thanks to Philippe Troin <phil@fifi.org> for
the patch.)
hangeLog
adblocks.c
9c7ec178092d6d5be005406c2912ea6e59a996b5 26-Jul-2003 Theodore Ts'o <tytso@mit.edu> Update for 1.34 release.
hangeLog
cf7d5f188643ac56e15d611680b30334bf4c2930 25-Jul-2003 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): Add warning if using -j and the blocksize is
greater than 4096, since some kernels don't support ext3
with large block sizes. (Addresses Debian bug #193773)
hangeLog
ke2fs.c
dc058719dfca9b35baec3208932702d39a502d3a 25-Jul-2003 Theodore Ts'o <tytso@mit.edu> badblocks.c (set_o_direct): Remove debugging printf. (Addresses
Debian bug #201499)
hangeLog
adblocks.c
5e38fed9c5e5c0741ff00fc7001b44a075bfb64c 22-Jul-2003 Theodore Ts'o <tytso@mit.edu> fsck.c (wait_many): Rename wait_all() to wait_many(), and have
new semantics: WAIT_ALL vs. WAIT_ATLEAST_ONE. This fixes
a bug where when fsck is waiting for another partition on
the same spindle, it spins wasting a lot of CPU.
hangeLog
sck.c
1c29b0979a7100a4fd254c006997a08b3bdd72df 12-Jul-2003 Theodore Ts'o <tytso@mit.edu> badblocks.c (do_read, do_write, test_rw): Change the read/write
test to honor the -c option (number of blocks at a time).
do_read and do_write will try to turn on the O_DIRECT flag
if it appears that it is possible to use it. (Addresses
Debian bug #198006)
hangeLog
adblocks.c
11393006c60e4a747f41c6f28c481e54238a10a3 12-Jul-2003 Theodore Ts'o <tytso@mit.edu> mke2fs.c (set_fs_defaults): If sector_size is 0, don't use it to
set the blocksize to zero. This causes MD devices to fail
since they don't support the BLKSSZGET ioctl. (Addresses
Debian bug #196734)
hangeLog
ke2fs.c
a7ccdff8e128c24564011d760a996496b0a981b3 09-Jul-2003 Theodore Ts'o <tytso@mit.edu> In mke2fs and resize2fs, round the default size of the filesystem to
be an even multiple of the pagesize to work around a potential
Linux kernel bug.

Use the testio manager in mke2fs if CONFIG_TESTIO_DEBUG is set.
hangeLog
ke2fs.c
48e6e81362f264aee4f3945c14928efaf71a06c9 06-Jul-2003 Theodore Ts'o <tytso@mit.edu> Fixx gcc -Wall nitpicks.
hangeLog
adblocks.c
lkid.c
93d5c38791a3778eed18fe968cdd136d23d0fa07 21-May-2003 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS, set_fs_defaults): If the sector size of the
device is larger than the default block size, then use the
sector size of the device as the default block size.

getsectsize.c (ext2fs_get_device_sectsize): New function which
returns the hardware sector size (if it is available).
hangeLog
ke2fs.c
84c054577fcc08cee6683fb1c8905711c5b985f3 18-May-2003 Theodore Ts'o <tytso@mit.edu> badblocks.c: Use an unsigned integer to support 4-byte test
patterns with the high bit set. Let the user explicitly
specify a random pattern with the argument "random".
hangeLog
adblocks.8.in
adblocks.c
849b6bc8ec0d4959913ea6f412ac5b6e9939e9ff 07-May-2003 Theodore Ts'o <tytso@mit.edu> badblocks.c, badblocks.8.in: Functional enhancements contributed
by Thayne Harbaugh. These patches allow the -t option to
control the test pattern(s) used when checking the disk.
Test patterns may be specified in all modes (r/w, r/o and
non-destructive).
hangeLog
adblocks.8.in
adblocks.c
6d40f568cdec7d654691e6eed61cf5a32e918c03 07-May-2003 Theodore Ts'o <tytso@mit.edu> badblocks.c (test_rw): Fix minor memory leak with test_rw() is
called for multiple passes.
(test_nd): Fix bug in chosing randomness for the
non-destructive test. We were only using 1 bit of
randomness per byte instead of 8 due to a bit-shift bug.
Also, initialize the random number generator from the time
in main(). Thanks to Thayne Harbaugh for pointing out
these bugs.
hangeLog
adblocks.c
2a29f1354f793557fa1829c9e85e74586e2907db 05-May-2003 Theodore Ts'o <tytso@mit.edu> Add --enable-test-io-debug configure option which causes e2fsck and
tune2fs to use the test I/O manager.

The test I/O manager has been changed to not do anything extra by
default, unless the TEST_IO_FLAGS and/or TEST_IO_BLOCK environment
variables are set, which controls what I/O operations are logged and
a block number to watch, respectively. The log messages are sent to
stderr by default, unless a filename is specified via the
TEST_IO_LOGFILE environment variable.
hangeLog
une2fs.c
ddc32a045bd3bd35968ace2dbe22179470baec0b 04-May-2003 Theodore Ts'o <tytso@mit.edu> Add Czech translation.

Remove "NYC" translation. Add Czech translation from Miloslav
Trmac <mitr@volny.cz>

Random NLS and other display fixes from Miloslav.
hangeLog
adblocks.c
2image.c
indsuper.c
ke2fs.c
til.c
uidgen.c
bc7c14e0408665addd01b978b1950963b1ed799f 03-May-2003 Theodore Ts'o <tytso@mit.edu> tune2fs.c (parse_time): Add portability code to work around lack
of strptime().
hangeLog
une2fs.c
a04eba3f8868af1d9b7b504d3d430c55ed3dc777 03-May-2003 Theodore Ts'o <tytso@mit.edu> Update to gettext 0.11.5. We now enable NLS support by default.

Fixed up support for using the internal intl library.
hangeLog
akefile.in
ls-enable.h
71df0dc393f959277ed985f9d1e6313df9ff9c0a 21-Apr-2003 Theodore Ts'o <tytso@mit.edu> Update for 1.33 release.

Fix typo's in README.subset

Change debian control file so it doesn't bomb out if the EVMS FSIM
is not there, since it is not built on the Hurd. Resolves Debian
bug #189687.
hangeLog
fc56eee2eaf97243122725460612ab6455193e09 18-Apr-2003 Theodore Ts'o <tytso@mit.edu> Makefile.in (uuidgen): Avoid linking lsattr and chattr against
libext2fs, and avoid linking blkid against any of the ext2
libraries.
hangeLog
akefile.in
814dc05673af0e879ba073c9010b78266f832bf6 18-Apr-2003 Theodore Ts'o <tytso@mit.edu> Fsck does not need to linked against the ext2 libraries anymore.
hangeLog
akefile.in
2ecaaf655755898b9ce931ec5ac5daba25905886 16-Apr-2003 Theodore Ts'o <tytso@mit.edu> Put stdout and stderr into non-buffered mode to
avoid cosmetic problems when running fsck under logsave.
hangeLog
sck.c
3879857e86ab5dc83dcb38a93868262f4fb61c4d 16-Apr-2003 Theodore Ts'o <tytso@mit.edu> Avoid printing the version banner for mke2fs if
the -q option is specified. (Addresses Debian bug #172716)
hangeLog
ke2fs.c
bc34d6be65cb93a65451ad209cfea2f98b03fd22 16-Apr-2003 Theodore Ts'o <tytso@mit.edu> * Add support for the -a and -s options to logsave.
* Change e2fsck to bracket its progress bar output with ctrl-A and ctrl-B
characters, so that logsave -s can omit writing the progress bar output
to the log file.
hangeLog
ogsave.8.in
ogsave.c
16fa86b9c5618d72ab88918ac3a3e2af95290628 15-Apr-2003 Theodore Ts'o <tytso@mit.edu> Remove the debian-special legal permission notes.
indsuper.c
f9ddad598237900e147e3095e7a1bde36f6a1d2f 15-Apr-2003 Theodore Ts'o <tytso@mit.edu> Add logsave, a new program which saves the output of a command
in a log file, even if the containing directory hasn't been
mounted yet (in which case the it saves the output in
memory until it can write out the logfile).
hangeLog
akefile.in
ogsave.8.in
ogsave.c
c5290fae3937cc83de8a551db9686d1e1964e378 12-Apr-2003 Theodore Ts'o <tytso@mit.edu> Mke2fs can be given a minimum block size by passing in a negative
number to the -b option.
hangeLog
ke2fs.8.in
ke2fs.c
5e05541ad0df4506eec324d98262c25d2e4e0d8d 11-Apr-2003 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Document the -g option. (Addresses Debian bug #188318)
hangeLog
ke2fs.8.in
5e804b72b66c04eb597fc9f6a45226eb8e71eccd 11-Apr-2003 Theodore Ts'o <tytso@mit.edu> Fix bug where mke2fs was incorrectly checking
the argument to the -g option, if the default block size
is used. (Addresses Debian bug #188319)
hangeLog
ke2fs.c
ccbed85afe9138cac486caf8adcdae80212b8c42 11-Apr-2003 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in, mke2fs.8.in: Document the dir_index filesystem
feature which can be used with the -O option.
hangeLog
ke2fs.8.in
une2fs.8.in
ee828a9d1e6f3eef29d6dc5b0008a79fe867eac0 07-Apr-2003 Theodore Ts'o <tytso@mit.edu> fsck.c (parse_fstab_line, interpret_type, fsck_device, ignore,
main): Don't evaluate the filesystem type when loading the
fstab file, since that might cause fsck to hang trying to
read from a floppy disk. (Addresses Debian bug #187812)
Add tmpfs and devpts to filesystems that should be
ignored, and add jfs, reseirfs, and xfs as filesystems
types where we should complain if we can't find the fsck
program for that filesystem type.
hangeLog
sck.c
cc4f98ed2deeaca33244fd77386e7d76917a3d30 03-Apr-2003 Theodore Ts'o <tytso@mit.edu> badblocks.c (bb_output): Flush output to the badblocks
output file as bad blocks are discovered.
hangeLog
adblocks.c
fc05eb08baf4c971026f1daecc2278d43c7339f6 26-Mar-2003 Theodore Ts'o <tytso@mit.edu> Fixed chattr man page to clarify description of the 't' (no tail)
attribute.
hangeLog
hattr.1.in
e71d87317ac095fa08079f0cc9040da16952eb93 14-Mar-2003 Theodore Ts'o <tytso@mit.edu> Add Apple/Darwin patches.
hangeLog
sck.c
eca53e3c4e96b9386f2d2bd3f2e5a07a2fa466d9 14-Mar-2003 Theodore Ts'o <tytso@mit.edu> e2image.c (write_raw_image_file): Include blocks from slow
symbolic links in the raw image file.
hangeLog
2image.c
332f2c23821a17808b2566a7200b286ba9bc855a 06-Mar-2003 Theodore Ts'o <tytso@mit.edu> tune2fs.c (parse_tune2fs_options, parse_e2label_options): Allow
the device name to be specified using LABEL=xxx or
UUID=xxx, since we're including the blkid library anyway.
(Addresses Debian bugs #166048, #179671)
hangeLog
une2fs.c
77be4d2df1a868ea7d5af2e469c1eb440fc21002 06-Mar-2003 Theodore Ts'o <tytso@mit.edu> Minor man page fixes (Addresses Debian bugs #173612, #175233,
#175113, and #170497)
hangeLog
hattr.1.in
une2fs.8.in
ed78c021c3b111d8ab9a51aef5d5156e3004083f 06-Mar-2003 Theodore Ts'o <tytso@mit.edu> Fix up lots of portability problems that caused e2fsprogs not to build successfully
under Solaris.
hangeLog
akefile.in
ed1b33e8fb310641684d68a177c940b58f2f529d 02-Mar-2003 Theodore Ts'o <tytso@mit.edu> Minor bug fixes in the blkid library.

Convert mke2fs, fsck, and tune2fs to use the blkid library.
hangeLog
akefile.in
ase_device.c
lkid.c
sck.c
sck.h
stype.c
et_device_by_label.c
et_device_by_label.h
une2fs.c
til.c
98999c399d563c248728bf217467a788cb0c1aad 16-Feb-2003 Theodore Ts'o <tytso@mit.edu> Rename blkid_get_devname() to blkid_get_dev(), and blkid_get_token()
to blkid_get_devname().
hangeLog
lkid.c
50b380b4d4ab668bad45033e3a8aaf93c7f42844 13-Feb-2003 Theodore Ts'o <tytso@mit.edu> Wholesale changes to blkid library to simplify the implementation
and shrink its size. Change library version to be 1.0.
lkid.c
19445ef9702720ad6e4d6dc1ec876212c8a88a49 30-Jan-2003 Theodore Ts'o <tytso@mit.edu> Fixed up minor documentation issues (man page for badblocks and usage
message for e2fsck).
hangeLog
adblocks.8.in
7a603aa89fcffb8798eca34ca3858db6f0393046 26-Jan-2003 Theodore Ts'o <tytso@mit.edu> Separate public and private interfaces into separate header files.
Start separating internal implementation details from the
publically exported interface of the blkid library.
hangeLog
lkid.c
e12f2ae74c2eb8997bf13adf8fdd7e7313971eae 23-Jan-2003 Theodore Ts'o <tytso@mit.edu> Integrate new blkid library.
hangeLog
akefile.in
lkid.8.in
lkid.c
76ea3a2c7fc1b6ff03d566af66c971dbf867be45 23-Jan-2003 Theodore Ts'o <tytso@mit.edu> fsck.c (parse_fstab_line, parse_escape): Add support for
backslash escaping in /etc/fstab. (i.e., so that \040
will work.)
hangeLog
sck.c
54779c66e0720896573142debfd89cffaac57e3e 13-Nov-2002 Theodore Ts'o <tytso@mit.edu> Update to deal with the fact that the INDEX_FL code in the ext2 2.4
code accidentally had the INDEX_FL backwards compatibility code
removed. E2fsck will now fix HTREE corruptions in preen mode, and
mke2fs will not create filesystems with the dir_index flag set
by default. (The user has to specifically request it.)
hangeLog
ke2fs.c
38513011b951e60abe25d85f10eec53f1fa73b7b 09-Nov-2002 Theodore Ts'o <tytso@mit.edu> Update files for 1.32 release.
hangeLog
ae65b29f112542327d05bedded745705fdabe012 09-Nov-2002 Theodore Ts'o <tytso@mit.edu> Update files for 1.31 release.
hangeLog
51f8f8d260bab06d8c5c3aa12470e7787dae4199 09-Nov-2002 Theodore Ts'o <tytso@mit.edu> chattr.1.in: Update man page
hangeLog
hattr.1.in
5d823a478f806fddd76391f3f63e61f948c9d849 01-Nov-2002 Theodore Ts'o <tytso@mit.edu> Update files for 1.30 release.
hangeLog
a2c8bf94834b29d7679ae0bb9b4e7a4deb1c6f42 01-Nov-2002 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
15f9011add4013d32ea2f7ca7dbf860f95b8ec53 01-Nov-2002 Theodore Ts'o <tytso@mit.edu> Add support for a new inode flag, which is to be used
for indicating the top of directory hierarchies for the
Orlov block allocator.
hattr.1.in
hattr.c
f68b3b0bda2d9b2c884778a62fa43f345a4cd7c1 31-Oct-2002 Theodore Ts'o <tytso@mit.edu> get_device_by_label.c (read_partitions): Pay attention to
partitions returned in /proc/partitions that begin with
with the string "lvm".
hangeLog
et_device_by_label.c
482afc442d98b5f8d8571cfa2c7047907066c07d 31-Oct-2002 Theodore Ts'o <tytso@mit.edu> Makefile.in (install): Search all compression extensions when
deleting old man pages.
hangeLog
akefile.in
76dd5e5c2842fb1a7b858aad3e68b5e9c16890c9 31-Oct-2002 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
umpe2fs.c
ke2fs.c
1d4c7945ff3213bd928b8722a7f057535836db24 28-Oct-2002 Theodore Ts'o <tytso@mit.edu> fsck.c (main): Fix bug reported by Gregory Mutt. Multiple
filesystems explicitly specified on the command line were
not being checked in parallel, due to a logic bug
introduced in to support the FSCK_MAX_INST environment
variable.
hangeLog
sck.c
d90a23e2f52904326764619481fa8f209a40e226 25-Oct-2002 Theodore Ts'o <tytso@mit.edu> dumpe2fs.c (list_desc, main): Make dumpe2fs more robust so that
if there is an error reading the block/inode bitmaps, it
will still print out the contents of the block group
descriptors.
hangeLog
umpe2fs.c
2bae543eed333af5a5b76b8bafdd383a2d00c76e 25-Oct-2002 Theodore Ts'o <tytso@mit.edu> Update man page to document the journal_* default mount options.
une2fs.8.in
c046ac7f2e4c53e20cf1e909bbe511f91074b396 20-Oct-2002 Theodore Ts'o <tytso@mit.edu> Add support for the meta_blockgroup filesystem format.
hangeLog
umpe2fs.c
2image.c
ke2fs.c
a0c3fd5e4cdc2e0b032c9ace89d960a622069c32 15-Oct-2002 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
une2fs.8.in
une2fs.c
3e69906495d5898849a6154b0311b5d4a84a27ae 14-Oct-2002 Theodore Ts'o <tytso@mit.edu> Fix gcc -Wall nits.

Fix format bug if NLS is in use.

Add extra so that the info directory looks OK on OpenWall.
hangeLog
adblocks.c
sck.c
stype.c
et_device_by_label.c
une2fs.c
64aecc4dd35b48f66f452f06c49587c838990d39 11-Oct-2002 Theodore Ts'o <tytso@mit.edu> Fix bug in e2fsck and mklost+found; the lost+found directory should
created with mode 0700.
hangeLog
klost+found.c
3432a916edad569235586b45d1a51706d4d700a7 02-Oct-2002 Theodore Ts'o <tytso@mit.edu> e2image.c (write_raw_image_file): Handle a bad block in the
inode table correctly.
hangeLog
2image.c
dbfb3f0b0c8996d1979d48ad18d5a581f26075e8 30-Sep-2002 Theodore Ts'o <tytso@mit.edu> get_device_by_label.c: Applied sourceforge patch #613447, which
adds support for reiserfs volumes for LABEL= and UUID=
fstab entries.
hangeLog
et_device_by_label.c
41ec7bb61fad279d7ce45b2895b7d62b5a54e735 30-Sep-2002 Theodore Ts'o <tytso@mit.edu> badblocks.c (main): Appled sourceforge patch #600451, which
addresses sourceforge bug #600388, by AEF. This allows
badblocks to work correctly on read-only devices such as
CD-ROM's, DVD's, etc.
hangeLog
adblocks.c
82b39c9f54da4c5f9f507a3e8138030a3a7f62a3 30-Sep-2002 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in, tune2fs.8.in: Clarify manual pages about using the
caret ('^') character to negate feature sets when using
the -O option. Define the has_journal feature to avoid
confusion about what ^has_journal means.
hangeLog
ke2fs.8.in
une2fs.8.in
c6633059470c28757062daa811ef50265f5f582a 24-Sep-2002 Theodore Ts'o <tytso@mit.edu> Update for 1.29 release.
hangeLog
84bd550148aad62bd004d7398bf50a32a742e5cc 24-Sep-2002 Theodore Ts'o <tytso@mit.edu> fsck.c: If the bone-headed user enters the filename twice, the
-R option which skips the root filesystem will skip all of
them. (Addresses Debian bug #159423). Note! This is not
a precedent for dealing intelligently with any other kind
of doubled entry in /etc/fstab!
hangeLog
sck.c
843049c4dbfe8a0dd4332569eff0ac93529e3324 22-Sep-2002 Theodore Ts'o <tytso@mit.edu> mke2fs.c (main): Enable directory indexing by default.

tune2fs.c (update_feature_set): Allow directory indexing flag to
be set. If so, set the default hash to be TEA, and
initialize the hash seed to a random value.
hangeLog
ke2fs.c
une2fs.c
f9e4abf71430bbdf8f61190a420906fb604f0f74 21-Sep-2002 Theodore Ts'o <tytso@mit.edu> get_device_by_label.c (init_lvm): Fix bug which caused
LABEL='xxx' to not work correctly when using LVM.
(Reversed sense of error check reported by ateeq@hotpop.com)
hangeLog
et_device_by_label.c
87ee8dcad3b9e42dc0576b9788b9d321076dee5e 31-Aug-2002 Theodore Ts'o <tytso@mit.edu> Update changelogs for 1.28 release
hangeLog
0d608df10047a4270c82d02937e85665c85f4039 18-Aug-2002 Theodore Ts'o <tytso@mit.edu> Update version string for WIP release.
indfs.8.in
118d7dacc535fde4e2ed8d996de3919aa0eb2e98 18-Aug-2002 Theodore Ts'o <tytso@mit.edu> Add support for searching /proc/evms/volumes when interpreting
LABEL=xxx or UUID=xxx.

Add new utility program /sbin/findfs, which interprets LABEL=xxx or
UUID=xxx, and returns the device name. (Part of tune2fs).
hangeLog
akefile.in
et_device_by_label.c
une2fs.c
1f22ce34fc771077397c67962a8ce146311f84e9 18-Aug-2002 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Add a common usage of the -n option. (Addresses
Debian Bug #146437)
hangeLog
ke2fs.8.in
a14113545168390de8974ee2683124b710977fb6 17-Aug-2002 Theodore Ts'o <tytso@mit.edu> fsck.c (main): If no filesystems are specified on the command
line, default to -As. (Addresses Debian Bug #153102)

badblocks.8.in: Clarify why it's bad to do a non-destructive
test on a r/o mounted filesystem. (Addresses Debian Bug
#131350)
hangeLog
adblocks.8.in
sck.8.in
sck.c
023d111e92195624463e870146d0f386ba5c2d87 17-Aug-2002 Theodore Ts'o <tytso@mit.edu> chattr.1.in: Document the compression attribute flags E, X, and
Z, and explain that chattr can't set or set these flags.
(Addresses Debian Bug #151990)

fsetflags.c (fsetflags), fgetflags.c (fgetflags.c), setflags.c
(setflags), getflags.c (getflags): Check to make sure the
file is a regular file or a directory before attempting to
use the ext2 ioctls. Otherwise, return EOPNOTSUPP.
(Addresses Debian Bug #152029).
hangeLog
hattr.1.in
f044b4d8a02ef9f95e27b8bdf6adc6548e5dc4a9 17-Aug-2002 Theodore Ts'o <tytso@mit.edu> Update and clarify man pages (addresses Debian Bug #145044).

Let e2fsck allow use of the TEA hash.

Mke2fs will no longer abort if it can't zero blocks at the end of the
filesystem. (Addresses Debian Bug #155007)
hangeLog
sck.8.in
ke2fs.c
une2fs.8.in
ed909bbe20d3fbeeee65c48dc0df2dbffdf2a0a9 16-Aug-2002 Theodore Ts'o <tytso@mit.edu> Fix up extended attribute handling in e2image, resize2fs, and in
debugfs's icheck command.
hangeLog
2image.c
4cae04529eda0e482ceaa86b48e532f9c8d35f24 21-Jul-2002 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
sck.8.in
sck.c
7098810daf7d1ba9287a51dc596d78d70d270337 14-Jul-2002 Theodore Ts'o <tytso@mit.edu> 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.)
hangeLog
ke2fs.c
f0865ce4d6b53cc963d9eac1ba57152fca0ca06b 02-Jul-2002 Theodore Ts'o <tytso@mit.edu> 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. :-)
hangeLog
ke2fs.8.in
5cfd7404baf3c114fa9e0017af1a289e6216ad7f 28-Jun-2002 Theodore Ts'o <tytso@mit.edu> chattr.1.in: Fix man page typo. (Addresses Debian bug #141938)
hangeLog
hattr.1.in
88372d5c4b2ebd0405446b42de65bf2b0ebb2408 16-Jun-2002 Theodore Ts'o <tytso@mit.edu> Applied Andrew Morton's patch to support the dirsync option.
hangeLog
hattr.1.in
hattr.c
b21bf267783274683a432eea6e5c589eab94123e 10-Jun-2002 Andreas Dilger <adilger@clusterfs.com> 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.
hangeLog
ke2fs.c
aab6fe735d7658cf0e61f2d7bbcffcd3f3d40601 18-May-2002 Andreas Dilger <adilger@clusterfs.com> misc/mke2fs.c: Minor fix for new page size checking code.
ke2fs.c
31e29a12d1e22745c74afe47bf172a3c73280dd9 17-May-2002 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
ke2fs.c
932a489cdf6bc83d69e59d3f8e0a57b733799ce1 16-May-2002 Andreas Dilger <adilger@clusterfs.com> 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.
ke2fs.c
7de6577cd93041742fad3da0046978793ebb978f 01-May-2002 Theodore Ts'o <tytso@mit.edu> Fix typo in man page.
hangeLog
sck.8.in
a8e772498cea7d6d2d84d94c7985c79afb96a4fa 08-Mar-2002 Theodore Ts'o <tytso@mit.edu> Update for 1.27 release.
hangeLog
7ef3bb838d6fd10452d7c47303c61232bfc4a442 08-Mar-2002 Theodore Ts'o <tytso@mit.edu> mke2fs.c: Check for the BSD disklabel on all architectures, and
also check the byte-swapped magic number as well.
hangeLog
ke2fs.c
6693837e59cc7b5397a0d46d2753c309382c76f9 08-Mar-2002 Theodore Ts'o <tytso@mit.edu> mke2fs.c: Output warnings to stderr
(From Philipp Thomas <pthomas@suse.de>)
hangeLog
ke2fs.c
546a1ff18cc912003883ff67ba3e87c69f700fc4 08-Mar-2002 Theodore Ts'o <tytso@mit.edu> Fix various gcc -Wall complaints.
hangeLog
ase_device.c
756df353e8ffd010fcca8cef8972cf27006edb6a 08-Mar-2002 Theodore Ts'o <tytso@mit.edu> mke2fs.c (zap_sector): Don't erase BSD disklabels on Alpha.
(From Thorsten Kukuk <kukuk@suse.de>)
hangeLog
ke2fs.c
14308a5398984842e808faa3ff2dd6a1c52d90bd 05-Mar-2002 Theodore Ts'o <tytso@mit.edu> Newer libintl needs LC_CTYPE to be set in addition to LC_MESSAGES.
hangeLog
adblocks.c
hattr.c
umpe2fs.c
2image.c
indsuper.c
sck.c
sattr.c
ke2fs.c
klost+found.c
artinfo.c
une2fs.c
57173d0febd3d6ea911981420945d12ec205ec2c 26-Feb-2002 Theodore Ts'o <tytso@mit.edu> Update Changelog messages to use tytso@mit.edu for all addresses
after September 7, 2001. (Forgot to update my emacs file to get
rid of the tytso@valinux.com address. Oops.)
hangeLog
0072f8de528310d82700b1a6a381895b4ca93c10 26-Feb-2002 Andreas Dilger <adilger@clusterfs.com> Add check for mkfs.ext3 and create a journal in this case.
hangeLog
ke2fs.8.in
ke2fs.c
une2fs.c
til.c
til.h
b9f409255eec6ccaa7d297bcbf5e2a6478a02735 24-Feb-2002 Theodore Ts'o <tytso@mit.edu> Update makefiles to install mkfs.ext3, and to install man pages for
mkfs.ext2/3 and fsck.ext2/3. Also remove any compressed man pages
before installing the man pages.
hangeLog
akefile.in
541d173d91b6d30f43d58ad01559fa8ad60871a8 24-Feb-2002 Theodore Ts'o <tytso@mit.edu> Update with the Debian package e2fsprogs-1.26-1.

Clarify and clean up the badblocks man page and the com_err info file.
hangeLog
adblocks.8.in
7d4343d0d05ce69e0a72da5ac34eea415d4c789f 12-Feb-2002 Theodore Ts'o <tytso@mit.edu> Lots of small random portability fixes to make e2fsprogs build
under AIX --- even without the 5L compatibility toolkit, and even
using the uber-crippled AIX native C compiler.
hangeLog
akefile.in
et_device_by_label.c
a5f3f5c19191c0eabd345f9cad2d9159e9bc0084 03-Feb-2002 Theodore Ts'o <tytso@mit.edu> Update files for 1.26 release.
hangeLog
5599c2fa871d455464d92336d40b80ea1c8560f5 03-Feb-2002 Theodore Ts'o <tytso@mit.edu> Changed fsck to support filesystems types in /etc/fstab of the form
"ext3,ext2", etc.

Added support for only searching for a specified list of filesystems.
Also add support for identifying reiserfs filesystems.
hangeLog
akefile.in
sck.c
sck.h
stype.c
a1069118d438851e69c3dd6e38211fc4adfc7048 29-Jan-2002 Theodore Ts'o <tytso@mit.edu> fsck.c: Allow the number of outstanding processes fs-specific
fsck programs to be capped via the FSCK_MAX_INST
envrionment variable.

fsck.8.in: Document all of the environment variables used by fsck.
hangeLog
sck.8.in
sck.c
177ab2bebeb913317b744b9ae0bcbd7aeefa1e5f 28-Jan-2002 Theodore Ts'o <tytso@mit.edu> Document the -f flag to tune2fs.
hangeLog
une2fs.8.in
c713f6066c7980ca7b0b15da7c3c9f2b92b0cbd0 07-Jan-2002 Andreas Dilger <adilger@clusterfs.com> Always free vdirname.
et_device_by_label.c
c007bc06d97d4b433e4d645edae994a5ae75fa01 26-Dec-2001 Andreas Dilger <adilger@clusterfs.com> Return a non-zero exit code on error.
une2fs.c
5493a27dc1138d2e30193b80217a0127d247af1e 02-Jan-2002 Theodore Ts'o <tytso@mit.edu> badblocks.c (main): Open the device as O_RDWR if possible, since
fsync() isn't guaranteed to work if the filesystem is
opened read-only.
hangeLog
adblocks.c
d4de4aa938339275515b2b5b6fcf8ca2b51c3d34 26-Dec-2001 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in, tune2fs.c (parse_tune2fs_options, main): Add
support for new option, -T, which allows the user to set
the last checked time on the filesystem.
hangeLog
une2fs.8.in
une2fs.c
3ed57c27df0ba0942a19c71bc065c8eec3036567 24-Dec-2001 Theodore Ts'o <tytso@mit.edu> In mke2fs and e2fsck, specifying the -c option twice will now do
a read/write test on the disk. Update the man pages to encourage
using the -c option, and to discouraging running badblocks separately,
since users tend to forget to set the blocksize when running
badblocks.
hangeLog
adblocks.8.in
ke2fs.8.in
ke2fs.c
5f0fabe6db7a6494cc50eaa71a960e7527fda052 24-Dec-2001 Theodore Ts'o <tytso@mit.edu> Fix broken Makefile dependencies.
akefile.in
6a525069a99787ef3ae1156f12230044b3568f4b 24-Dec-2001 Theodore Ts'o <tytso@mit.edu> Mke2fs now creates the lost+found directory with 0700 permissions,
since files which get dropped into that directory may have come
from a protected directory, and the system administrator may not
deal with immediately. (Addresses Debian bug #118443)
hangeLog
ke2fs.c
19007e51a548d1e0eff01025dde9f147a0beb26d 24-Dec-2001 Theodore Ts'o <tytso@mit.edu> Move linux/jbd.h to ext2fs/kernel-jbd.h, to avoid using the
system header file version of hbd.h when using diet glibc
(since it forcibly adds /usr/include to the beginning of include
search path.)
hangeLog
akefile.in
fs_user.h
eaf4dc5c98f21e1e522c365731b10da7aa6a1b7d 22-Dec-2001 Theodore Ts'o <tytso@mit.edu> Add support to read out information from the LVM proc hierarchy,
so that the UUID cache can search the LVM logical volumes for
UUID's, labels, etc.
hangeLog
et_device_by_label.c
0655b104e6b7940ff28c979c96c5ecf3565537e9 22-Dec-2001 Theodore Ts'o <tytso@mit.edu> Change dumpe2fs to not die if the listing of the bad blocks
can't be found. Slimmed down dumpe2fs by eliminating duplicate
code paths.
hangeLog
umpe2fs.c
4ea7bd04390935e1f8b473c8b857e518df2e226b 17-Dec-2001 Theodore Ts'o <tytso@mit.edu> Fix various gcc -Wall nits. Fixed a bug in mke2fs where a bogus
error message could be printed on an malloc() failure, and e2image
was optimized to avoid needless system calls by using the stashed
inode functions.
hangeLog
umpe2fs.c
2image.c
sck.c
stype.c
et_device_by_label.c
ke2fs.c
une2fs.c
til.c
til.h
8cf93332d180e6929d73cd8c855c3a83d6a6648c 16-Dec-2001 Theodore Ts'o <tytso@mit.edu> Fix e2fsck's handling of external journals,and update journal
recovery files from 2.4.17-pre8.
hangeLog
akefile.in
fs_user.h
a5f0bb9d1b295ad907b2d8a58ce9121f4105e1a8 02-Dec-2001 Theodore Ts'o <tytso@mit.edu> Pull up dumpe2fs cleanup patch from the experimental branch.
hangeLog
umpe2fs.c
571fc5a89c17985626df29823617b63094d10b31 02-Dec-2001 Theodore Ts'o <tytso@mit.edu> Fixes necessary for e2fsprogs to work using the diet libc.

- Renamed linux/list.h to be linux/linked_list.h to work around a
problem caused by diet libc insistence to search the kernel
header files ahead of all other files in the include path,
including the user specified include files.

- Worked around a bug in diet libc which core dumps when using
putc with stderr by using fputs instead. As a bonus, this
also shaved a few bytes off of com_err.o.

- Fixed a real bug in debugfs which was detected because diet libc
was more sensitive than glibc when incorrectly using fclose()
where pclose() is required.
akefile.in
a36cf920090d99c3eb7c45d47f4370749147c118 24-Nov-2001 Theodore Ts'o <tytso@mit.edu> e2image.8.in: Fix cut-and-paste typo (Addresses Debian bug #119624)
hangeLog
2image.8.in
6ef3920a82c8fb3dad78409eca9d5f3d1b66176b 14-Nov-2001 Theodore Ts'o <tytso@mit.edu> util.c (check_plausibility): Use stat64 if available so that
check_plausibility() works with files > 2GB.
hangeLog
til.c
b3f5b4c22939daba86465d05842bce76053bc3cf 06-Nov-2001 Theodore Ts'o <tytso@mit.edu> Define a new ext2 file attribute, EXT2_NOTAIL_FL,
which signals that a particular inode should not have the
last bits of data (the "tail") be merged with another
file. This is necessary to keep programs like LILO happy.
hangeLog
hattr.1.in
hattr.c
6430bd67cef317daebdef7812e87f0e2846b31a7 06-Nov-2001 Theodore Ts'o <tytso@mit.edu> fsck.c (interpret_type): If the "auto" type is specified, make
sure interpet_device() is called so that device
specifications which use LABEL= or UUID= are translated
into a real device name.
hangeLog
sck.c
e3ef3502f7b587c3d8418aff2433f3f9ffc4c0ba 06-Nov-2001 Theodore Ts'o <tytso@mit.edu> e2image.c (output_meta_data_blocks): Optimize away excess
lseek() calls when creating a sparse file. Fewer system
calls are a good thing. <g>
hangeLog
2image.c
568101f774f9ad61d475969e91dc90da359b5a85 13-Oct-2001 Andreas Dilger <adilger@clusterfs.com> mke2fs.c(main): Always exit with non-zero code in case of error.
mke2fs.c(zap_sector): Check that buffer allocation succeeded.
hangeLog
ke2fs.c
d6903eccf9c0aa567962fe7ec6ec9972fcf92944 01-Oct-2001 Andreas Dilger <adilger@clusterfs.com> Update findsuper to support > 2GB device sizes.
Add extra validity checks over just ext2 magic detection.
Add progress meter.
indsuper.c
fbf91112163add26bd9d44e992afa31a47790588 20-Sep-2001 Theodore Ts'o <tytso@mit.edu> Update changelogs for 1.25 release.
hangeLog
f6a6afcef4ccd0215bd00a21efc20b932abbaf0c 20-Sep-2001 Theodore Ts'o <tytso@mit.edu> Remove dead code that wasn't in use from tune2fs.
hangeLog
une2fs.c
39567c4493578aeede246ee84aecbf9248244c1f 19-Sep-2001 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in: Update man page to reflect the fact that adding or
removing a journal doesn't require running e2fsck.
hangeLog
une2fs.8.in
3f85f65c98183c3871e24f285e5b3e1e97afd9f5 17-Sep-2001 Theodore Ts'o <tytso@mit.edu> mke2fs.c (zap_sector): Allocate sufficient space for zero-filled
buffer.
hangeLog
ke2fs.c
fb70775b0f5cb54730a294e88c7c80f0810a871b 04-Sep-2001 Theodore Ts'o <tytso@mit.edu> Update for 1.24a release
hangeLog
9d8e6346328b4ceaf6dcc76e30ccc8c300fec3c3 31-Aug-2001 Andreas Dilger <adilger@clusterfs.com> Fix version format string.
hangeLog
ke2fs.c
109624a133f147b13903f59d585b20446a3c538f 31-Aug-2001 Theodore Ts'o <tytso@mit.edu> Update for 1.24 release.
hangeLog
04a968579ee8125c617edee27204cf35c0a169c1 31-Aug-2001 Theodore Ts'o <tytso@mit.edu> mke2fs.c (zap_sector): Now takes a third argument, which is how
many sectors to clear out. Fixed up Andreas's patch to
make it a bit more efficient/compact.
hangeLog
ke2fs.c
59f27247f81fb662ef3b2589b3cceb198ff4dbca 30-Aug-2001 Andreas Dilger <adilger@clusterfs.com> mke2fs.c (main): Zap the second sector of the disk, along with
any sectors in the same filesystem block after the superblock.
The latter will remove (for example) swapspace signatures
on 4kB+ blocksize filesystems. Also when zeroing the "end"
of the filesystem don't actually zero the start of a very
small device (less than 128kB).
hangeLog
ke2fs.c
177a9acef49dce775284e6dc00e8c7010a8222e6 31-Aug-2001 Theodore Ts'o <tytso@mit.edu> badblocks.8.in: Fix spelling typo. (Addresses Debian bug #110621)
hangeLog
adblocks.8.in
0f8973fb092a40fd0a11b7ec95c09128c9fb8f0c 27-Aug-2001 Theodore Ts'o <tytso@mit.edu> Remove EXT2FS_VERSION from the version display, since it
only confuses people.

Make fsck's version display be consistent with the other e2fsprogs
programs.
hangeLog
hattr.c
umpe2fs.c
2image.c
sck.c
sattr.c
ke2fs.c
klost+found.c
une2fs.c
943ed874fc76bebf38288ebf0069718375f7f377 27-Aug-2001 Theodore Ts'o <tytso@mit.edu> Add missing log entry showing when we released e2fsprogs 1.23
hangeLog
b1c9a000712b53e23b35e212950d92a5ec26b2f9 18-Aug-2001 Theodore Ts'o <tytso@mit.edu> Update makefile dependencies.
akefile.in
e843c760166498221cabb5b9c44cf7c34bee2515 18-Aug-2001 Theodore Ts'o <tytso@mit.edu> Minor fixups to Andreas' changeset. Removed unused variable
from tune2fs and added missing function prototype.
hangeLog
et_device_by_label.h
une2fs.c
2d15576dfe8ffd8521a6f4211cef3d2a663dc379 17-Aug-2001 Andreas Dilger <adilger@clusterfs.com> get_device_by_label.[ch], fsck.c, util.c: New interpret_spec()
function in get_device_by_label.c to allow the use of
UUID= or LABEL= when creating filesystems which use external
journal dev (e.g. mke2fs -J device=LABEL=<journal_label>).

tune2fs.c: Use superblock s_journal_uuid to locate an external
journal device instead of s_journal_dev when removing it.
Allow opening journal devices to set the label and UUID
in the ext2 superblock.

mke2fs.c, tune2fs.c: Free journal_device after use, as it is
malloc'd in interpret spec.
hangeLog
akefile.in
sck.c
et_device_by_label.c
et_device_by_label.h
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
til.c
7141b54b1af506a9a5fdf4aed649eb6526bad706 16-Aug-2001 Theodore Ts'o <tytso@mit.edu> * tune2fs.c: Make sure that error messages are sent to stderr, and
normal messages are sent to stdout. (Addresses Debian bug
#108555.)
hangeLog
une2fs.c
1d349cce2dc1df9c76cb2f842e3cf187b47cae9a 16-Aug-2001 Theodore Ts'o <tytso@mit.edu> fsck.8.in: Fixed error in synopsis of the man page.
hangeLog
sck.8.in
685c13f6d759490c82044cc071fd8110847fd1dd 16-Aug-2001 Theodore Ts'o <tytso@mit.edu> fsck.c (main): Print a warning message if there are no devices to
be checked. (Addresses Debian bug #107458.)
hangeLog
sck.c
88f8af61a48bafe35fdbfcb0d19f4a83f0ce3d66 16-Aug-2001 Theodore Ts'o <tytso@mit.edu> fsck.c (check_all): Don't bother to interpret a device where the
pass number is zero. (Addresses Debian bug #106696).
hangeLog
sck.c
f3561ed5195e06b2721653acd81a3a035a702f8b 15-Aug-2001 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): Handle -O and -s options in line in the getopt
loop, so that -s and -O handling are a bit more intuitive.
(Not that they should be mixed anyway; -s is deprecated.)
hangeLog
ke2fs.c
d258668d588a1f07e29f12483c5f58eb84d7b5f3 15-Aug-2001 Theodore Ts'o <tytso@mit.edu> Give an error if -O is specified more than once to tune2fs.
hangeLog
une2fs.c
085b02cba93ddbce58354f8793ea8b5b2a7606ed 11-Aug-2001 Theodore Ts'o <tytso@mit.edu> mke2fs.8.in: Slim down text describing the -O flag to remove
text that erroneously implied that all features
(including compatible flags) aren't compatible with older kernels.
hangeLog
ke2fs.8.in
e8a447db4248f156d47a226323287a362bee8c72 09-Aug-2001 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): Fix bug pointed out by Christopher Niessen; if mke2fs
-O none is specified, the sparse_super feature should not be present.
hangeLog
ke2fs.c
1c1e0049249d1f44c79cc3287bc030651dad7710 09-Aug-2001 Theodore Ts'o <tytso@mit.edu> Add support for specifiying - as the image file (to send the image
file to standard out).

Save the journal inode if it is internal to the raw image file.
2image.8.in
2image.c
6304baf255b0d3b2fc57619acd16a4107e83bd02 09-Aug-2001 Theodore Ts'o <tytso@mit.edu> Add support for raw image files in e2image.
hangeLog
2image.8.in
2image.c
8c97b0bf16bb33da94bb77c9474553f59b29a18f 05-Aug-2001 Theodore Ts'o <tytso@mit.edu> Add ChangeLog entry for changes made by Andreas Dilger
hangeLog
fa72458adb65e9dd20dc74a414a9c71fde2a2f5c 04-Aug-2001 Andreas Dilger <adilger@clusterfs.com> Put check for JOURNAL_DEV before sparse_option, so we don't set the
sparse superblock flag on journal devices.
ke2fs.c
194686bbae9da1259035693d7449d7662720b19b 31-Jul-2001 Theodore Ts'o <tytso@mit.edu> tune2fs.c (update_feature_set, remove_journal_inode): If
removing an in-filesystem journal, clear out the journal
inode and update the filesystem accounting structures so
we don't have to run e2fsck to clean up after ourselves
hangeLog
une2fs.c
de49f015a4585900ca40e291f9b9a827714f0d8f 30-Jul-2001 Theodore Ts'o <tytso@mit.edu> tune2fs.c (update_feature_set): Don't require a forced fsck if
we're removing an external journal from a filesystem.
hangeLog
une2fs.c
77dc4eb04c21664cef8d4fb048ccb952ccef778c 28-Jul-2001 Theodore Ts'o <tytso@mit.edu> mke2fs.c (PRS): If the blocksize is not specified, and the journal
device is specified, user it to determine the blocksize
of the filesystem.
hangeLog
ke2fs.c
9b61b8c42476921d0fbfe4573f5bc58360c8ebef 20-Jul-2001 Theodore Ts'o <tytso@mit.edu> fsck.8.in: Add much more explicit language documenting how the
fs_passno field in /etc/fstab is handled. (Addresses
Debian bug #30833).
hangeLog
sck.8.in
da376f5a13af0648159c575cf50bf78df34056f9 20-Jul-2001 Theodore Ts'o <tytso@mit.edu> fstype.c (identify_fs): New file which looks at the superblock
of the filesystem to determines its type.

fsck.c (fsck_device, ignore, interpret_type): Call identify_fs
if the type specified in /etc/fstab is "auto".
hangeLog
akefile.in
sck.c
sck.h
stype.c
21d14ec7aabebe7018a99f05ece27e61b4ffcea9 04-Jul-2001 Theodore Ts'o <tytso@mit.edu> Add support for XFS filesystems.
et_device_by_label.c
67960139d73fb99f579e8447b9f1c743581b6610 23-Jun-2001 Theodore Ts'o <tytso@mit.edu> Update changelogs for 1.22.
hangeLog
f4f75bae8520ae44e9c593c4d90c7bfdb6b5139a 16-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Update for 1.21 release.
hangeLog
e9a2d07171cf7bc0a4ee22b77d7319a23148eae8 14-Jun-2001 Theodore Ts'o <tytso@mit.edu> tune2fs.8.in:
Fix minor man page nits.
une2fs.8.in
562ba5ecea79186ca252fe52da9b3251cdc4f6ae 14-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (PRS): Remove unneeded test in when creating a external
filesystem journal.
hangeLog
ke2fs.c
66cf2f60350ad6ef9ce5b000b5107d4508634887 14-Jun-2001 Theodore Ts'o <tytso@mit.edu> 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.
hangeLog
ke2fs.c
une2fs.8.in
une2fs.c
til.c
til.h
83d5abf1d781a1d46af193bf439bb813ceb6e061 14-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Add debian bug number reference.
Add debian bug reference.
hangeLog
cdf186e47730f11c5663f7d0f2a431ebd7805230 14-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, configure, configure.in:
configure.in: Add --disable-resizer, --disable-imager, and
--disable-debugfs switches, which allow people who are building boot
floppies to build a very restricted e2fsprogs distribution. Note:
these functions limit the functions in the shared library, so beware!
Makefile.in, ChangeLog:
Makefile.in: Don't recurse into debugfs and resize subdirectory if
--disable-debugfs or --disable-resizer is given as a configuration
option.
ChangeLog, Makefile.in:
Makefile.in: Don't build e2image if --disable-imager is specified to
configure.
hangeLog
akefile.in
cbbf031b6edf9bdf5511af2193e44cff7fdaa66a 13-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, dumpe2fs.c, mke2fs.c:
dumpe2fs.c: Use WORDS_BIGENDIAN to determine whether or not we're
(not) using i386 byte order.
dumpe2fs.c, mke2fs.c: Stop using the compatibility badblocks function,
and use the ext2fs_badblocks_* functions instead.
ChangeLog, inode.c, tst_iscan.c:
inode.c, tst_iscan.c: Stop using the compatibility badblocks function,
and use the ext2fs_badblocks_* functions instead.
ChangeLog, badblocks.c:
badblocks.c: Stop using the compatibility badblocks function, and use
the ext2fs_badblocks_* functions instead.
hangeLog
umpe2fs.c
ke2fs.c
28cf9041b8f793f2116893306fe55ed151f8ad91 13-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (device_already_active): Fixed bug which can cause fsck to core
dump if there are a mix of devices with standard and non-standard
names.
hangeLog
sck.c
b705640ae162093d40fc9f77e716bec891561ffe 08-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, chattr.c, lsattr.c:
chattr.c, lsattr.c: Don't use _FILE_BITS_OFFSET method of using the
64-bit function, since this changes the expected size of struct
dirent. Instead use lseek64 explicitly.
hangeLog
hattr.c
sattr.c
36a23e1806067074f0278de31dc94fe50d840cb0 02-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Fix typo in ChangeLog.
hangeLog
797f5ef14e92294b329e52971d467d7af5b2993e 02-Jun-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, wordwrap.pl:
Makefile.in: Move include/asm/types.h.in to lib/ext2fs/ext2_fs.h.in.
wordwrap.pl: Add some rules which help fix up the dependencies.
Many files:
Move include/asm/types.h.in to lib/ext2fs/ext2_fs.h.in.
hangeLog
akefile.in
bb185861d10f84b452260c6d8b89abaa23c67408 25-May-2001 Theodore Ts'o <tytso@mit.edu> e2fsprogs.lsm, version.h:
Update version string for 1.20 release
ChangeLog:
Update Changelogs for 1.20 release.
hangeLog
e549d0a6a8088ab58e60db4e6f878cf59502af69 25-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.c:
tune2fs.c (update_feature_set): Fix capitalization typo.
hangeLog
une2fs.c
a9bc79add106f2c544c449f514a1113817deae2e 24-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, partinfo.c:
partinfo.c (main): Use unsigned long instead of long when querying the
size of a device using the BLKGETSIZE ioctl, to remove the 1TB limit
(and turn it into a 2TB limit :-)
hangeLog
artinfo.c
c7a24e461e024706aab0c698a0638f2ab2ed639f 24-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (compile_fs_type): Fix I18N compilation bug: use N_() instead
of _() to initialize static variables.
hangeLog
sck.c
10a32f1e03b198ae408e1af6a412f993678be33d 21-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.8.in, fsck.c:
fsck.8.in, fsck.c (compile_fs_type, fs_type, ignore): Fix handling of
-t option to be more intuitive. Also add support for the Mandrake -t
loop hack. See man page for description of new -t semantics.
hangeLog
sck.8.in
sck.c
9164b862ff73810e045c7499a15f87ca1b578cfb 21-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (device_already_active): Fix bug in device_already_active which
could cause infinite loops if we don't know the base_device of the
filesystem.
hangeLog
sck.c
07025aea9b4879e7771f94c8e1e6551023d4bf4f 21-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c: Make sure all exit status codes returned by fsck are
consistent with the error codes documented in the fsck man page.
hangeLog
sck.c
54c637d4d29af3e6365779f8b12976abe95a4753 14-May-2001 Theodore Ts'o <tytso@mit.edu> Many files:
badblocks.c, chattr.c, dumpe2fs.c, e2image.c, findsuper.c, lsattr.c,
mke2fs.c, mklost+found.c, tune2fs.c, util.c: Change location of
ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, resize2fs.h:
resize2fs.h: Change location of ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, debugfs.h:
debugfs.h: Change location of ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, e2fsck.h, scantest.c:
e2fsck.h, scantest.c: Change location of ext2_fs.h to be
ext2fs/ext2_fs.h
ChangeLog, Makefile.in, tst_uuid.c, uuid_time.c:
tst_uuid.c, uuid_time.c: Remove unneeded #include of ext2_fs.h
ChangeLog, Makefile.in, e2p.h:
e2p.h: Change location of ext2_fs.h to be ext2fs/ext2_fs.h
ChangeLog, Makefile.in, test_icount.c, test_rel.c:
test_icount.c, test_rel.c: Change location of ext2_fs.h to be
ext2fs/ext2_fs.h
hangeLog
akefile.in
adblocks.c
hattr.c
umpe2fs.c
2image.c
indsuper.c
sattr.c
ke2fs.c
klost+found.c
une2fs.c
til.c
251395db0cf225c21aea91107302e70376ecc55e 14-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.8.in:
tune2fs.8.in: Fix typo's and make other clarifications suggested by
Andreas Dilger.
hangeLog
une2fs.8.in
1400bbb60bf2667ab5514abd074baf4959fe475a 14-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c: don't zap the superblock if we are running with noaction!
Zap the end of the device to remove stale RAID superblocks.
hangeLog
ke2fs.c
8d6417498c96c6877ed42da29991c82961e1bf15 14-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Clarify some of the Changelog entries.
ChangeLog, fsck.8.in, mke2fs.8.in, tune2fs.8.in:
fsck.8.in, mke2fs.8.in, tune2fs.8.in: Fix typo's and make other
clarifications suggested by Andreas Dilger.
ChangeLog, tune2fs.c:
tune2fs.c (update_feature_set): Clean up some printf messages.
hangeLog
sck.8.in
ke2fs.8.in
une2fs.8.in
une2fs.c
14bbcbc31c3aa413b866f49001c517ca9e83d7d8 14-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (PRS): Integrated changes from Andreas Dilger which make the
revision superblock field be set to the correct value depending on if
superblock features are set.
hangeLog
ke2fs.c
6930372eff810d0daf39febbb1129d8cce815d13 12-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (PRS): fsck -? now prints the usage message.
ChangeLog, jfs.h:
jfs.h (JFS_DEBUG): Don't define JFS_DEBUG for non-kernel builds; if
necessasry it can be set with configure --enable-jfs-debug
hangeLog
sck.c
12da49c9472d555234df732738b19bed520c8550 12-May-2001 Theodore Ts'o <tytso@mit.edu> Many files:
badblocks.8.in, dumpe2fs.8.in, e2label.8.in, mke2fs.8.in,
mklost+found.8.in, tune2fs.8.in: Fix typo; removed excess "anonymous"
in the AVAILABILITY section.
hangeLog
adblocks.8.in
umpe2fs.8.in
2label.8.in
ke2fs.8.in
klost+found.8.in
une2fs.8.in
6d56d51a0ab7bcee8bc142b9d50c5df82e4e04dd 12-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, chattr.1.in, lsattr.1.in, uuidgen.1.in:
chattr.1.in, lsattr.1.in, uuidgen.1.in: Update URL location of
e2fsprogs package.
hangeLog
hattr.1.in
sattr.1.in
uidgen.1.in
d71a495dd060f9bf318c689406eff2a96511e952 07-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, util.c:
util.c: Use specific check for HAVE_SYS_STAT_H.
hangeLog
til.c
609c9d0f49c61d1407f2864e075e72b8c8762021 05-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.8.in:
fsck.8.in: Add explicit language to describe how options get passed to
filesystem-specific checkers.
hangeLog
sck.8.in
cd130a0887b5e5e9436533bbcda4c17ec5202788 05-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.8.in, badblocks.c:
badblocks.8.in: Fixed man page to describe the first optional
parameter to badblocks as last_block, instead of num_blocks. (Debian
nbug #87216)
badblocks.c: Change the blocks_count variable to be last_count, which
is a more accurate description of the variable.
hangeLog
adblocks.8.in
adblocks.c
0edb4d8504afc08c48ce7f30b670a2a7e27db7bc 03-May-2001 Theodore Ts'o <tytso@mit.edu> e2image.8.in:
Updates and clarifications to the manual page.
2image.8.in
a3827953b21d5bfe43ff912b6e3b54fd7a7ffd56 03-May-2001 Theodore Ts'o <tytso@mit.edu> e2image.c:
Update copyright date.
:
2image.c
348e43dccbbc0511be3b151b319ff95830753dec 03-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, dumpe2fs.8.in, dumpe2fs.c:
dumpe2fs.c (main): Add new flag, -i, which will allow dumpe2fs to dump
out the filesystem statistics from an ext2 image file.
Many files:
e2image.8.in: New manual page
badblocks.8.in, e2label.8.in, mke2fs.8.in mklost+found.8.in,
tune2fs.8.in: Update location of e2fsprogs to be
http://e2fsprogs.sourceforge.net.
hangeLog
akefile.in
adblocks.8.in
umpe2fs.8.in
umpe2fs.c
2image.8.in
2label.8.in
ke2fs.8.in
klost+found.8.in
une2fs.8.in
095b459dac77d532a4a1020acb57dfc0c681a9dc 03-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, e2image.c:
e2image.c (main): Fix format of e2image to be easier to be parse by
ext2fs_open().
hangeLog
2image.c
45d7086f4e04feed8ceaa2349fe6875423209862 01-May-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (device_already_active): If we're not able to determine the
base device, we should assume that the device is already active in
order to force serialization.
hangeLog
sck.c
ce57f14f409a1e51c93c763850560143f7b40b0f 26-Apr-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.c:
tune2fs.c (parse_tune2fs_options): Interpret -c 0 as -c -1 (for
backwards compatibility with older kernels). -c 0 makes more sense to
users.
tune2fs.8.in:
Update tune2fs manual papge so that it is up to date.
hangeLog
une2fs.8.in
une2fs.c
4d0f22832cf02183e001ce9dd94787aaf2ff1ec9 23-Apr-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.c:
tune2fs.c (remove_journal_device): If the force flag is given, tune2fs
will remove the journal device information from the superblock even if
tune2fs failed to open the journal device or otherwise other failed to
remove the filesystem from journal device.
(parse_tune2fs_options): Fix -j option so that it works (it was
missing the open_flag being set to EXT2_FLAG_RW).
(main): Accept "-U clear" to set a null UID.
hangeLog
une2fs.c
48015ced4e02419d1eb4aec928764a9b1ae8a6a6 22-Apr-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in:
mke2fs.8.in: Manual page cleanups. Temporarily comment out the
documentation for the extern journal device support.
hangeLog
ke2fs.8.in
b10fd5e84ec7ea0e843b09e7c44784f072b8fdb7 22-Apr-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (usage): Remove the deprecated -s option from the usage message.
hangeLog
ke2fs.c
2103ea787fe039413b491ec80e1e77d916e62cc8 21-Apr-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (main): Add better explanation about when the filesystem will
be checked after it is created.
hangeLog
ke2fs.c
d6a27e0048537ab6367a6aa97fbe84a423119eea 17-Apr-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (create_journal_dev): Call ext2fs_create_journal_superblock()
first, so if it's going to error out, the user finds out before
waiting for the entire device to get zero'ed.
ChangeLog, util.c:
util.c (parse_journal_opts): Remove code which allowed a bare number
to be treated as a journal size.
hangeLog
ke2fs.c
til.c
1d08d9bfc225543eaf12bee7cf655124f66f43e4 17-Apr-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c, tune2fs.c:
mke2fs.c, tune2fs.c: Add newlines to error messages so that they look
nicer.
hangeLog
ke2fs.c
une2fs.c
2537b6d0c1aa9710a05cdfafc281b4884c67bdb2 26-Mar-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in, mke2fs.c, tune2fs.8.in, tune2fs.c, util.c, util.h:
ke2fs.8.in, tune2fs.8.in: Change man paegs to document that the
journal must be bewteen 1024 and 10,240 file system blocks.
mke2fs.c, tune2fs.c: Change to use figure_journal_size()
util.c, util.h (figure_journal_size): Change journal_default_size into
routine which also converts the requested journal size into filesystem
blocks and does bounds checking to make sure the journal is sized
reasonably. Renamed function to journal_default_size.
parse_journal_opts): Remove bounds check for the journal size, since
this is now done in figure_journal_size, and based on the number of
filesystem blocks, as opposed to using the absolute size of the
journal.
hangeLog
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
til.c
til.h
93345d1588606ccc558406202bff8f86360ab03f 17-Feb-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (main): Flush out the "creating journal" message. Also
handle the case where the default journal size returns zero blocks ==
no journal. Print out how often the filesystem will be checked.
hangeLog
ke2fs.c
c5423c5b3ea549d96d1b3315a96b5b58beca75cd 08-Feb-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, e2image.c:
e2image.c (main): Add code to write the e2image header.
ChangeLog, e2image.h:
e2image.h (struct ext2_image_hdr): Fix type for fs_hostname
hangeLog
2image.c
be4244bafd5e5de619ff9a0888cc526c3bc5d1bf 08-Feb-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.8.in:
tune2fs.8.in: Update man page to reflect that 2.0.39 supports
sparse_super.
hangeLog
une2fs.8.in
8b164f974d70e34a27404e6cd43461961c7dd0de 08-Feb-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, dumpe2fs.c:
dumpe2fs.c (list_desc): Fix fencepost error when calculating the range
of inode table blocks. Add '0x' to values printed in hex.
hangeLog
umpe2fs.c
fff18b4e76d3757a78e5583010bbce3772461f4d 08-Feb-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, chattr.c, lsattr.c:
chattr.c, lsattr.c: Define the _LARGEFILE64_SOURCE to force the use of
the LFS so that lstat will work on large files.
hangeLog
hattr.c
sattr.c
6b7e807e0a69462b4757facdd8a0b2ce364da679 08-Feb-2001 Theodore Ts'o <tytso@mit.edu> uuidgen.c:
Add check for HAVE_STDLIB_H before including stdlib.h
uidgen.c
a05c589a5ef9959ac91f9b56bba9e61aeacb9d9c 18-Jan-2001 Theodore Ts'o <tytso@mit.edu> Makefile.in:
Update makefile dependencies
akefile.in
dc2ec525f5619bf478d2aae1b406fca2ff4b0d21 18-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in, mke2fs.c, tune2fs.8.in, tune2fs.c:
tune2fs.c, mke2fs.c, tune2fs.8.in, mke2fs.8.in: Change user interface
so that -J is used to specify journal options, and -j is used to
request creation of a journal using default values. (This is a UI
change, but we haven't done a formal release, and it makes things much
more consistent with the rest of the options out there.)
tune2fs.c: Add support for removing a filesystem from an external
journal; we correctly remove the filesystem UUID from the external
journal's filesystem list.
hangeLog
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
5683e6e2c78ef4c620f3830c4e2fa4c2ead0eb4c 18-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, util.c, util.h:
util.h, util.c (journal_default_size): New function from Andreas
Dilger to calculate an appropriate default journal size given a
filesystem size.
util.c (parse_journal_opts): Allow the creation of a journal as small
as 1MB.
hangeLog
til.c
til.h
020888625fb8f6d5293e67da95ae18c0af45aead 18-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mkjournal.c:
mkjournal.c (ext2fs_add_journal_device): Fix bug where the device
number of the filesystem (instead of the journal) was being dropped
into s_journal_dev.
ChangeLog, dumpe2fs.c:
dumpe2fs.c (print_journal_information): Use s_first_data_block to find
the correct block to read the journal superblock.
hangeLog
umpe2fs.c
16ed5b3af43c72f60991222b9d7ab65cf53f203d 16-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, dumpe2fs.c, jfs_user.h, mke2fs.c, tune2fs.c:
tune2fs.c: Changed the external journal code so that it simply adds a
filesystem to a journal; the journal must have bene created via
"mke2fs -O journal_dev /dev/XXX".
mke2fs.c: Add support for creating an external journal device by using
the command "mke2fs -O journal_dev /dev/XXX". Also changed the
external journal code so -j device=/dev/XXX it simply adds a
filesystem to that journal; the journal must have been created via
separate step.
dumpe2fs.c (print_journal_information): Add support for dumping
information about an external journal device.
hangeLog
akefile.in
umpe2fs.c
fs_user.h
ke2fs.c
une2fs.c
44c09c0454925e6e7756e4dc51aac6acbf5020ae 14-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in, mke2fs.c:
mke2fs.c: Add new filesystem types, largefile and largefile4, for
those filesystems whose average inode size is 1MB and 4MB,
respectively. Allow the inode ratio specified to be has high as 4MB.
Make the s_max_mount_count vary between 20 and 40, to avoid needing to
check all of the filesystems at the same time. Add some random jitter
to the s_max_mount_count value so that we avoid checking all of the
filesystems at the same time when we reboot.
hangeLog
ke2fs.8.in
ke2fs.c
08dd830ddd99b43396bec4401b6badf4498f46d0 14-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.8.in:
tune2fs.8.in: Add description of the -j option.
tune2fs.c:
Minor whitespace and option ordering fixes from Andreas Dilger
hangeLog
une2fs.8.in
une2fs.c
4055ef7301ddf93120eb174f3473be15ce5a658b 14-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.c:
tune2fs.c (add_journal): Minor fixes from Andreas Dilger. Flush stdout
after printing in-progress message.
(main): Exit with status code 1 if we failed to determine the mount
status of the device.
ChangeLog, gcc-wall-cleanup:
gcc-wall-cleanup: Remove additional annoying warning messages emited
by gcc 2.95.2.
ChangeLog, uuid.h:
uuid: Change arguments to make it clear which argument is the source
and which is the destination.
hangeLog
une2fs.c
c8c071a07319939dfd7ae2ff1dedec644d750deb 11-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, e2image.c, mke2fs.c, mklost+found.c, tune2fs.c, util.c, uuidgen.c:
e2image.c, mke2fs.c, mklost+found.c, tune2fs.c, util.c, uuidgen.c: Fix
gcc -Wall complaints, including one bug in tune2fs caused by a block
automatic shadowing version of the variable we really wanted to use,
which broke the logic testing to see if the filesystem was mounted.
ChangeLog, MCONFIG.in:
(gcc-wall-new): Added new target which forgoes the make clean so we
only check the newly modified .c files.
hangeLog
2image.c
ke2fs.c
klost+found.c
une2fs.c
til.c
uidgen.c
4d4045475f80ad2901c468815976d2beffd0cb59 11-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.c:
badblocks.c (flush_bufs): Use ext2fs_sync_device() to sync and flush
the device.
hangeLog
adblocks.c
dfcdc32f8d6623a35a9e66f503c535e4081b7266 11-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, libext2fs.texinfo:
libext2fs.texinfo: Change ino_t to ext2_ino_t
ChangeLog, extent.c, main.c, resize2fs.c:
extent.c, main.c, resize2fs.c: Change ino_t to ext2_ino_t.
ChangeLog, mke2fs.c:
mke2fs.c: Change ino_t to ext2_ino_t.
ChangeLog, test_icount.c, test_rel.c:
test_icount.c, test_rel.c: Change ino_t to ext2_ino_t
hangeLog
ke2fs.c
832381536ee28ea493b73785f7c0cfdd403a8269 09-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, tune2fs.c:
Makefile.in, tune2fs.c: Move e2label functionality into tune2fs, using
argv[0] as a dispatch. This allows e2label to be (more) safely used
on mounted filesystems.
hangeLog
akefile.in
une2fs.c
8820c79f75c37a3bc85cea7f56e7277025e157ef 06-Jan-2001 Theodore Ts'o <tytso@mit.edu> Many files:
get_device_by_label.h (get_volume_label_by_spec): Add function prototype.
get_device_by_label.c: Use string_copy() instead of strdup() for
portability's sake. Fix a few other gcc -Wall complaints.
fsck.h, fsck.c (string_copy): Export string_copy() extern.
badblocks.c: Fix various gcc -Wall complaints, including an incorrect
reference to sync in flush_bufs().
ChangeLog, configure, configure.in:
configure.in: Add checks for the header files sys/mkdev.h and
sys/sysmacros.h.
hangeLog
adblocks.c
sck.c
sck.h
et_device_by_label.c
et_device_by_label.h
63985320384bf143eaac9857af424800d9867a1a 03-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, mke2fs.c, tune2fs.8.in, tune2fs.c, util.c, util.h:
tune2fs.c (update_feature_set, add_journal): Moved to separate
functions. Added ability to add and remove the journal while the
filesystem is live. Added support for setting a time-based UUID.
Removed zero-initialized static variables.
mke2fs.c, util.c, util.h (strcasecmp, proceed_question,
check_plausibility, parse_journal_opts, check_mount): Moved functions
to util.c so they can be used by tune2fs.
mke2fs.c (main): Change ext2fs_add_journal_fs() to
ext2fs_add_journal_inode() to reflect function renaming.
hangeLog
akefile.in
ke2fs.c
une2fs.8.in
une2fs.c
til.c
til.h
ef9abe5f2529b3a42b46bf64c5f4232f86e7b390 01-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, e2image.c, mke2fs.c:
mke2fs.c, e2image.c: Removed references to struct ext2fs_sb to struct
ext2_super_block.
hangeLog
2image.c
ke2fs.c
b21e38a0df0111f527f7b286ff9119534de04c09 01-Jan-2001 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.c:
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).
hangeLog
une2fs.c
d4cf2fcda2aee14d1e312d8e145dd54f480ffeae 31-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
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.
hangeLog
sck.c
f10748d88cb9b79e1f1a41a12a3e4f411f2494c7 31-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, lsattr.c:
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.
hangeLog
sattr.1.in
sattr.c
9a7188496851014f62592077b2ec603cc2c300a6 31-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, chattr.1.in, chattr.c:
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.
hangeLog
hattr.1.in
hattr.c
16ad33346dd4666edd9d46d417245432c87057ef 31-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (usage): Document the -j option.
(main): Print the number blocks used in the journal.
ChangeLog, mke2fs.8.in:
Minor clarity edits.
hangeLog
ke2fs.8.in
ke2fs.c
b9fd8c1fdbe0b118e29494366c9aac0545c8e1fe 29-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, base_device.c, fsck.c:
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.
hangeLog
ase_device.c
sck.c
26900ae444e3585a52f6d37e231373a63404dac2 09-Dec-2000 Theodore Ts'o <tytso@mit.edu> flushb.c, findsuper.c:
Adjust legal language.
indsuper.c
d48755e97f7d4cb06092921bff0d3681d30a8aca 09-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
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?)
hangeLog
ke2fs.c
74a74d22d8ed60587afd55c798f08531115f4920 09-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, findsuper.c:
findsuper.c: And non-subtle copyright licensing restriction to get
Yann to remove this program from the Debian package. :-)
hangeLog
indsuper.c
0e8a9560d89dd9cca73037a59efa93e46abdccda 09-Dec-2000 Theodore Ts'o <tytso@mit.edu> Many files:
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.
akefile.in
3e377db29466e8a7d960df27fa5c0b933a3fa581 09-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, MCONFIG.in, Makefile.in, Makefile.in.in:
Fix so that top-level "make check" works correctly.
e2image.c:
Fix program name for e2image.
2image.c
793e27df7312d5b217c172387f71fd581ed30c82 03-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, base_device.c, base_device.tst, fsck.c, fsck.h:
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
hangeLog
akefile.in
ase_device.c
ase_device.tst
sck.c
sck.h
2d09179aec6e79fe4cd7f09de5f71a197b9846ba 02-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.8.in:
fsck.8.in: Add clarification that filesystems with a fs_passno of 0
are skipped with the -A option. (Debian wishlist/bug #63442)
hangeLog
sck.8.in
e9f9dd8e93712ba1ea4a1382c360b107883fc056 02-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.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)
hangeLog
sck.c
e1c6b2f02bf5be8bf12ef82e20ef5ee590d6f56d 02-Dec-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.8.in:
tune2fs.8.in: Add clarifying statement about converting user and group
names to uid's before storing them in the superblock. (Debian bug
#67446)
hangeLog
une2fs.8.in
8ddaa66bfef067f1a6ba02698a61a0fd3a26e618 17-Nov-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in, mke2fs.c:
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.
hangeLog
ke2fs.8.in
ke2fs.c
72ed12648368b3f3ea14e8102e20bf5d3a3be6d3 12-Nov-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, e2image.h, ext2_err.et.in, ext2fs.h, imager.c:
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.
hangeLog
akefile.in
2image.c
f6f6583239203d0b017285f5f7acdd21ec7afc05 25-Oct-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
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.
hangeLog
ke2fs.c
0056be14d7c90c6ce24a585662e07db9f0c61949 25-Oct-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, get_device_by_label.c:
get_device_by_label.c: Apply fix from Erik Troan to support 16
character labels.
hangeLog
et_device_by_label.c
438196669574f87493b153b2dee93f5eeba1844e 25-Oct-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, llseek.c:
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.
hangeLog
sck.c
85ef4ae87a8d27d8e3a734f8b3964d6b8f39867b 24-Oct-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in, mke2fs.c:
mke2fs.c (PRS, main), mke2fs.8.in: Add support for the -j option,
which builds an ext2/3 filesystem with an ext3 journal.
hangeLog
ke2fs.8.in
ke2fs.c
e294cf2f6409aeede04316b1268f3e78a83509d0 24-Oct-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (zap_sector): Fix really stupid typo which gcc 2.95
didn't catch.
hangeLog
ke2fs.c
3f1e9a5db6f05fc60d7557ed40d07e3e7359821b 12-Sep-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c: Add base device definitions for hd[e-h], for those systems
with four IDE interfaces.
hangeLog
sck.c
d7e39b0609baf57f23d91655b28ec7e981f39441 11-Sep-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, dumpe2fs.c, mke2fs.c:
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.
hangeLog
umpe2fs.c
ke2fs.c
556ccbd6f9722ccf4a278a7bbdaf82f3c6153ede 20-Aug-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, get_device_by_label.c:
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.)
hangeLog
akefile.in
et_device_by_label.c
80c22c90145bc495502210ac4502cca8228f997b 14-Aug-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, dumpe2fs.8.in, dumpe2fs.c, mke2fs.c:
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
hangeLog
umpe2fs.8.in
umpe2fs.c
ke2fs.c
e41784eb0e47ff5e460b635c86a0cef7250b48b4 14-Aug-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
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.
hangeLog
ke2fs.c
28412de600c0c81424e7f3640442f80dbe5b3034 27-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, get_device_by_label.c:
get_device_by_label.c: Improve /proc/partitions parsing in fsck, and
speed up fsck -a.
hangeLog
et_device_by_label.c
f9e67064ce720e9a8563038d07fe452ffed661bc 14-Jul-2000 Theodore Ts'o <tytso@mit.edu> configure.in:
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.
hangeLog
a551b783479b47d05ec996da5c87009a092cf491 14-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.8.in, badblocks.c:
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.
hangeLog
adblocks.8.in
adblocks.c
19c689196bcd90510070b50cd08d0e962fe8311c 07-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
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.
hangeLog
sck.c
45d9e2ff7c4bc08d77b3b671e1da5a94dff2cbee 07-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.8.in, tune2fs.c:
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.
hangeLog
une2fs.8.in
une2fs.c
5b1519bf528182fff35b8786455182ec018c454e 06-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
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.
hangeLog
sck.c
981dc56ae312ef6f13ab5fca57ef51616890e13f 06-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.8.in, badblocks.c:
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.
hangeLog
adblocks.8.in
adblocks.c
35964b5c4a85ab73c1ac02caed98584b6527f7c2 06-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.8.in, badblocks.c:
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.
hangeLog
adblocks.8.in
adblocks.c
d49a22b734299e4b433a19b8f5f60d689c92a78e 06-Jul-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.c:
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.
hangeLog
adblocks.c
7dc435082e384d9b2d15ab53aebcde53b4aa01ab 12-Jun-2000 Theodore Ts'o <tytso@mit.edu> badblocks.8.in:
Update man page explanation for badblocks.
Update man page's explanation for the -c option.
adblocks.8.in
26ab531523a319682a099c9a91aa3b8aeab2835c 29-May-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
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.
hangeLog
ke2fs.c
415ed79ebcb9a48172764c7e9339001f24ef5fa2 26-May-2000 Theodore Ts'o <tytso@mit.edu> Many files:
Remove generated file.
depend
bdcb8234e7783714a83b32eea25901cd43b83817 26-May-2000 Theodore Ts'o <tytso@mit.edu> .cvsignore:
Supress build files when builddir==srcdir
cvsignore
c96e511a0c020a309d4fd3f8cac9ebc1a52c2ff4 08-May-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (interpret_device): Add better error messages if a UUID= or
LABEL= specification is given.
hangeLog
sck.c
4ea0a1109d761e9caaa53f6fa9e036321826c5fa 08-May-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, problem.c, problem.h, super.c:
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".
hangeLog
ke2fs.c
e2207ce595f05e4db5945326f9b2d553ff7a4d57 06-Apr-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, jump.funcs, jump.import, jump.params:
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().
hangeLog
adblocks.c
373b8337c7b6c6243810be250083fa4773891e92 03-Apr-2000 Theodore Ts'o <tytso@mit.edu> Many files:
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.
hangeLog
adblocks.c
umpe2fs.c
2label.c
ke2fs.c
une2fs.c
uidgen.c
4d003982f95ea4151b964f5f986e8af76707bde0 03-Apr-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.8.in, badblocks.c:
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.
hangeLog
adblocks.8.in
adblocks.c
ffe4cab315464f16486504eeeadaa6c336c6ab3d 03-Apr-2000 Theodore Ts'o <tytso@mit.edu> Many files:
badblocks.8.in, chattr.1.in, dumpe2fs.8.in, lsattr.1.in,
mklost+found.8.in, tune2fs.8.in: Update Remy Card's e-mail address.
chattr.1.in: Update which attributes aren't supported.
hangeLog
adblocks.8.in
hattr.1.in
umpe2fs.8.in
sattr.1.in
klost+found.8.in
une2fs.8.in
e1a0a3e304229a625c37f0e845c0c9fff117c8c1 11-Feb-2000 Theodore Ts'o <tytso@mit.edu> Many files:
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.
hangeLog
hattr.1.in
hattr.c
sattr.1.in
sattr.c
ke2fs.c
une2fs.8.in
une2fs.c
a4fa100c5b743491f33b77981c4bf28ba4fe1e34 08-Feb-2000 Theodore Ts'o <tytso@mit.edu> .cvsignore, nyc.po:
More i18n checkins.
tune2fs.c:
Fix some stupid i18n compilation bugs.
une2fs.c
8f5c0f66ca343ec4689470e5941aa3066ed062bb 08-Feb-2000 Theodore Ts'o <tytso@mit.edu> badblocks.c:
Fix I18N compilation bug.
adblocks.c
d9c56d3ca0bee11e3446ff7e12e3124d28e298a7 08-Feb-2000 Theodore Ts'o <tytso@mit.edu> Many files:
badblocks.c, chattr.c, dumpe2fs.c, e2label.c, findsuper.c, fsck.c,
get_device_by_label.c, lsattr.c, mke2fs.c, mklost+found.c,
nls-enable.h, partinfo.c, tune2fs.c, uuidgen.c: Add
Internationalization support as suggested by Marco d'Itri
<md@linux.it>.
hangeLog
adblocks.c
hattr.c
umpe2fs.c
2label.c
indsuper.c
sck.c
et_device_by_label.c
sattr.c
ke2fs.c
klost+found.c
ls-enable.h
artinfo.c
une2fs.c
uidgen.c
dd018f5aa41cc21d22f01c45a3eee6ce492eb228 07-Feb-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.8.in, badblocks.c:
badblocks.c: Fix non-destructive read/write patches from David
Beattie. Non-standard variable-length automatic arrays removed.
Non-destrutive write test fixed so that logic is clearer and more
provably correct. (I believe the old code had a bug where the disk
data wasn't restored if it was interrupted at the wrong time.)
badblocks.8.in: Document new options in man page.
hangeLog
adblocks.8.in
adblocks.c
b4ee1fb28e9aeea982cbbdef873604224ce45445 02-Feb-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c, mke2fs.c, partinfo.c:
fsck.c (interpret_device): If there was an attempt to interpret a
device specification of the type "UUID=" or "LABEL=", and it fails,
check to see if /proc/partitions is readable. If not, print a warning
message about /proc perhaps not being mounted, and exit.
mke2fs.c (check_plausibility): Remove unneeded #include of linux/fs.h.
Add #define of MAJOR if necessary.
partinfo.c: Remove unneeded #include of linux/fs.h
hangeLog
sck.c
ke2fs.c
artinfo.c
582134cccf3ddf4f98e3d6038c47d68d43936f3d 19-Jan-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.c:
tune2fs.c (usage): Update the usage message to correctly document the
-s option.
hangeLog
une2fs.c
879ac920e347267d4461ba76b349fbef67b42b9b 18-Jan-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.c:
badblocks.c: Folded in patches David Beattie <dbeattie@usa.net>. Need
to do cleanup before release: use of GCC extensions (dynamic arrays);
unclean coding tricks (use of || instead of if statements, etc.).
Comments from David Beattie:
"I added non-destructive write-testing, and quite a few other
features. The non-destructive write testing, triggered by new "-n"
command-line option, will write test patterns to the disk, but only
after reading data off the disk into memory. Then, comparing the test
patterns gives a result as to whether or not those sectors are
reliable. Finally, the original data is written back.
To streamline this operation, I added another option, "-c
blocks_at_once", which will give the number of disk blocks to process
at one time (mnemonic--"count"). I made this default to 16 (as in the
read-only testing mode), and also affect the read-only testing mode.
Of course, read-only mode needs (count * block_size) amount of memory,
and non-destructive read-write needs 3 times that much, so it makes
sense to do the calculations and not overrun available RAM...I would
have liked to implement and auto-memory-usage heuristic, but I have no
idea if it's even possible to determine the amount of free memory on a
Unix system except by reading /proc entries, and that didn't seem
portable. I did NOT make this blocks_at_once affect the behavior of
the test_rw routine, as it is processing the whole disk at once,
anyway.
I *think* that I got higher detection rates on my hard drive using
random test data than patterned test data, so my non-destructive mode
initializes its test data buffer randomly.
I fixed a typo in flush_bufs that caused the ioctl BLKFLSBUF to never
get compiled into the program.
Also, I added an "undocumented" (I didn't put it into the usage
message; you can if you think it's useful) "-h" option to specify the
host device to flush--useful if you want to test out my
"non-destructive" code on something other than a hard drive, such as a
file on a hard drive, and want the host hard drive to flush.
I provided support for an "input" file (via option "-i", similar to
the "-o" option)...containing a list of already-known bad blocks; it
will skip testing those blocks, thus adding speed to the bad block
scan (on my computer, hitting a physically bad block causes a
half-second-or-more freeze as the kernel waits for the hard drive to
give up and reset itself; pretty annoying when you already know the
block is bad from a previous scan).
Finally, the real killer, the persistent re-scan (option: "-p
num_passes") that I created will, if desired, persistently re-scan the
drive until it has completed a user-decidable number of passes in a
row during which no new bad blocks are found. On my drive, I would
see behavior that a certain percentage of bad blocks would be found
with each pass (it was not reliable in the defective areas!), so I
wanted it to check it over and over again until it didn't find any
more, several times. Perhaps this will be useful to others. Defaults
of course to zero, meaning it will stop after the first pass. I used
"-p 2" on my drive, and it ran for 2 1/2 days...then used "-p 3" a
couple days later and it ran for a few more hours, and since then the
rest of my drive has been completely reliable.
Implementation of these last two features, "-i" and "-p", I did using
a bb_list from libext2fs. I debated whether bad blocks input through
"-i" should be output into the "-o" file (or stdout, of course), and
decided against it, but left the code to do so in place, commented
out, just for your information.
In order to maintain data integrity upon interruption of a
non-destructive-write test, I created a signal handler which I install
which will write back whatever original disk data is in the buffers
upon any of the fatal signals (except SIGKILL, of course).
Of course, ideally, the new options would be reflected in the
badblocks manual page, but I am not experienced at manual page
modification; if you decide my patch to badblocks should be
incorporated into the distribution, I could learn how to update the
manpage and other documentation, or you could do it for me after
exercising your opinions, if you have any, on exactly what the
command-line parameters should be called and which ones should be in
the distribution."
hangeLog
adblocks.c
3cb7784f307db3f32b008bacbe87fe385f8543a7 18-Jan-2000 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, fsck.c:
Really fix the bug where "fsck -As" will actually allow interactive
fsck's. (For those people who like to do interactive fsck's in the
/etc/rc scripts!?!)
hangeLog
akefile.in
sck.c
bfd2193e5227a178fca1e2d1fe626b8af873fcdb 23-Nov-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.8.in:
tune2fs.8.in: Fix man page so that the sparse_super filesystem option
is properly named.
hangeLog
une2fs.8.in
6733c2fd0046c525203034f58fc0a8c69fdf480b 23-Nov-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c: Change log2() and log10() to int_log2() and int_log10() to
avoid namespace collisions. Change #ifdef sparc to #ifdef __sparc__.
hangeLog
ke2fs.c
5c36a2f85b4f8648ed7916c7e5d489dea09c1a37 19-Nov-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in:
Makefile.in (distclean): Remove TAGS and Makefile.in.old from the
source directory. Also, when making the .exclude file for the
source_tar_file, exclude those two files as well.
Makefile.in (distclean): Remove TAGS and Makefile.in.old from the
source directory.
hangeLog
akefile.in
cd08636179a07e95e36d307ce2b158e7b276b1e5 10-Nov-1999 Theodore Ts'o <tytso@mit.edu> libext2fs.texinfo, ChangeLog:
Update for 1.18 release.
hangeLog
6fdc7a325c8bff67fc3a0489d0858bc7c48dc1a3 10-Nov-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, e2fsck.h, pass1.c, pass2.c, pass3.c, problem.c, problem.h, util.c:
pass1.c (e2fsck_pass1): If the filesystem does not support imagic
inodes, if an inode has the imagic flag set, offer to clear the imagic
flag. If a valid device/fifo/socket has the immutable flag set, call
the new helper function check_immutable() to offerto clear the
immutable flag.
pass2.c (check_filetype): Use the new ext2_file_type() helper function
instead of calculating the file_type information manually.
pass3.c (e2fsck_reconnect_file): When adding a link to lost+found,
calculate the filetype information so that ext2fs_link() can use the
information if applicable. (get_lost_and_found): Create the
/lost+found directory with the correct filetype information if
applicable.
util.c (ext2_file_type), e2fsck.h: New function which returns the
directory entry file type information given the inode's mode bits.
problem.c, problem.h: Added new problem codes PR_1_SET_IMAGIC and
PR_1_SET_IMMUTABLE.
ChangeLog, mke2fs.8.in:
mke2fs.8.in: Update manual page so that the sparse_option filesystem
option is properly named.
hangeLog
ke2fs.8.in
6a35ffa0ed7ca24436bdab1807b5ae9d1845946a 04-Nov-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (main): Move setting of the interactive flag to before the call
to check_all(), so that people who try to use fsck -As can do so
interactively.
hangeLog
sck.c
28e1194e6537c8448b4ce322dc13a9d781ce22b9 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> Many files:
Update for 1.17 release.
hangeLog
3bc036691a1679fa82bee17ed4c3e18d7165c4d1 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (PRS, device_already_active): Add debugging hook; if the
environment variable FSCK_FORCE_ALL_PARALLEL is set, then force all
fsck runs to happen in parallel.
hangeLog
sck.c
9094f28440b6c504a80d97aeea2dab543f97978b 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (set_fs_defaults): Changed parameter name to avoid gcc
warnings.
Makefile.in:
Update dependency information.
hangeLog
ke2fs.c
36b0130b1fde12e6eceda490f0cda39f7bce2503 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, get_device_by_label.c:
get_device_by_label.c (has_right_label): Fixed bug where code used a
strncmp to compare a binary UUID value which may contain a NULL.
Fixed GCC warnings; added const to char * typed variables. Eliminated
non-portable use of u_char.
hangeLog
et_device_by_label.c
4a6005666e1f62442cb55fabd946f454605e340e 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (PRS): Fix gcc warnings; add const to some char * variables,
including in struct mke2fs_defaults.
hangeLog
ke2fs.c
b5135717e72626334f929ca2ddf75cecbb1f9c99 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (wait_one): Fix gcc warnings; add #include for ctype.h, add
const to char * variables, and use NOARGS to declare functions that
take no arguments. Also fix a memory leak in execute() where we
weren't freeing argv[] after forking the child process.
hangeLog
sck.c
36caf25f8d61eb8ffddc9895463bce5807e96808 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, e2p.h, feature.c:
feature.c: Fix GCC warnings; add const to the char * types in the
function prototypes for e2p_feature2string and e2p_edit_feature.
ChangeLog, uuid.h, uuid_time.c:
uuid_time.c (variant_string): Declare to be static to avoid gcc warnings.
uuid.h: Add function prototypes for uuid_generate_random() and
uuid_generate_time().
ChangeLog, chattr.c:
chattr.c: Add hack to compile in a definition for S_ISLNK so we can
successfully compile even with warnings turned on.
hangeLog
hattr.c
e6597048d9d1637c9f997363a7f45c74b98fd0e2 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c (PRS): Use __u64 instead of long long for portability
reasons.
Moved #include of sys/stat.h inside #ifdef HAVE_LINUX_MAJOR_H for
portability reasons.
ChangeLog, util.c:
util.c: For NT portability, don't redefine getchar(), since stdio
defines that. Instead we introduce a new abstract macro read_a_char()
which is #defined to the right function as necessary.
hangeLog
ke2fs.c
ad6783df0c9d06e5c298167de34aec8e6e25e6c2 26-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (execute): Fix really stupid bug in the linked list management
which caused fsck in parallel mode to go into an infinite loop.
ChangeLog, mke2fs.c:
mke2fs.c (show_stats): Capitalized Hurd to make the GNU types happy.
ChangeLog, configure.in:
configure.in: Capitalized Hurd to make the GNU folks happy.
hangeLog
sck.c
ke2fs.c
0859c04fce317c77643dd8a69814c892613bf5f3 23-Oct-1999 Theodore Ts'o <tytso@mit.edu> Makefile.in:
Update makefile dependencies for 1.16 release.
akefile.in
614fdfd5d978a9e58c25cb4ff7f5b634063c1e6a 23-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Update for 1.16 release.
libext2fs.texinfo:
Update version number for 1.16 release.
hangeLog
06968e7e27aaac0f28fc6448fef58fcda314b5a2 23-Oct-1999 Theodore Ts'o <tytso@mit.edu> debugfs.c:
Update to pass new required parameter to e2p_edit_features
mke2fs.8.in:
Update man page to add explanatory note about how the default block
size is determined.
ke2fs.8.in
18160d26c0fcf8dbe990977c0231ebbc79fc9508 23-Oct-1999 Theodore Ts'o <tytso@mit.edu> mke2fs.c, tune2fs.c:
Fixed usage messages.
ke2fs.c
une2fs.c
896938d57e7091e7a032674dfeeb91f2a17fd78b 23-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, mke2fs.8.in, mke2fs.c, tune2fs.8.in, tune2fs.c:
tune2fs.c (main): Add a new option -O which allows the user to set and
clear certain "safe" filsystem feature flags. Currently, the only
ones which are supported for modification are sparse_superblock and
filetype.
mke2fs.c (PRS): Add new option -O which allows the user to request
filesystems with specific filesystem options. By default on 2.2 and
later systems, create filesystems that have both file type information
and sparse superblocks.
hangeLog
akefile.in
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
caf8ce4cc497b22cca26e1063183e58391c1b3a0 21-Oct-1999 Theodore Ts'o <tytso@mit.edu> Many files:
badblocks.8.in, chattr.1.in, dumpe2fs.8.in, e2label.8.in,
fsck.8.in, lsattr.1.in, mke2fs.8.in, mklost+found.8.in,
tune2fs.8.in, uuidgen.1.in: Update man page to use a more standard
format (bold option flags and italicized variables), as suggested by
Andreas Dilger (adilger@enel.ucalgary.ca)
ChangeLog, e2fsck.8.in:
e2fsck.8.in: Update man page to use a more standard format (bold
option flags and italicized variables), as suggested by Andreas Dilger
(adilger@enel.ucalgary.ca)
ChangeLog, uuid_generate.3.in:
uuid_generate.8.in: Update man page to use a more standard format
(bold option flags and italicized variables), as suggested by Andreas
Dilger (adilger@enel.ucalgary.ca)
hangeLog
adblocks.8.in
hattr.1.in
umpe2fs.8.in
2label.8.in
sck.8.in
sattr.1.in
ke2fs.8.in
klost+found.8.in
une2fs.8.in
uidgen.1.in
671cbfa9fab194888151df2714359e357e047ca2 20-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, tune2fs.c:
tune2fs.c: Fix typo (double spaces) in messages regarding changing the
sparse superblock option
hangeLog
une2fs.c
7f4bb6c6e832b38b8e52b4bcc143f99a4059dcec 20-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c, fsck.h:
fsck.c (wait_one): If the fsck process just started, wait a second
before sending a SIGUSR1, to give it a chance to set the signal
handler; otherwise, fsck will die on an unhandled SIGUSR1.
hangeLog
sck.c
sck.h
7671433a9daad089af037f84b365d640e1adf252 20-Oct-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
Fix display bug when printing out the number of superblocks.
Suggested by Yann Dirson.
hangeLog
ke2fs.c
2740156bd12747389eaf745529653b26a3a9d73d 14-Sep-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, dumpe2fs.8.in, dumpe2fs.c, mke2fs.8.in, mke2fs.c, partinfo.c:
partinfo.c: Fix minor compilation bugs pointed out by Yann Dirson.
mke2fs.c: Don't turn on sparse superblocks by default on pre-2.2 kernels.
mke2fs.8.in: Add the possible valid block sizes for mke2fs. Document
the -n flag, and the new defaults for the -s flag.
dumpe2fs.c, dumpe2fs.8.in: Add new options -f (force) and -h (header-only).
mke2fs.c (PRS): Fix logic for turning on/off the sparse superblock option.
Many files:
Updated copyright statements to reflect the GPL with permission of the
original authors.
hangeLog
umpe2fs.8.in
umpe2fs.c
ke2fs.8.in
ke2fs.c
artinfo.c
657cb97522332b1adcd871bf8f0949e9c8d8f231 31-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Add 1.15 release note to the Changelogs.
hangeLog
b89122fca182036433d37fd76720cb00f5f1d31b 19-Jul-1999 Theodore Ts'o <tytso@mit.edu> fsck.8.in:
Make clear the -- is optional.
Makefile.in:
Add makefile production for the findsuper program. We do not build
it by default, however.
akefile.in
sck.8.in
50787ea22edd8b4662203daf3569411d9dcf4287 19-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.8.in, fsck.c, fsck.h, mke2fs.8.in, mke2fs.c:
* mke2fs.c (PRS, set_fs_defaults): Add new option -T which allows the
user to specify the how the filesystem is to be used. Mke2fs now
chooses the filesystem parameters automatically based on the size of
the filesystem and the intended use of the filesystem. Add new option
-n which simply goes through the calculations to determine the
parameters of the filesystem the system would make.
* fsck.c, fsck.h: Add support for new option -C. This option will
automatically manage e2fsck processes so that they will print
completion/progress bars. If multiple filesystems are being checked,
arrange to make sure that only one e2fsck process is displaying a
progress bar at a time.
hangeLog
sck.8.in
sck.c
sck.h
ke2fs.8.in
ke2fs.c
9f10a7b31e57288093930fc9565102409eeac6e9 16-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.c:
badblocks.c (do_test): Don't complain if the write error occurs on a
non-block boundary. This is perfectly common when using blocksizes
larger than 1k.
hangeLog
adblocks.c
6c133523b23aa6cdae2da2dc35aeaac1904539a4 03-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, MCONFIG.in, configure.in, configure:
MCONFIG.in (BUILD_CC):
configure.in (BUILD_CC): If cross compiling, find the native C
compiler and set it to BUILD_CC so that we can successfully build
util/subst.
ChangeLog, Makefile.in:
Makefile.in (subst): Build subst using $(BUILD_CC), since it's a
helper program which must be built using the native C compiler during
a cross-compilation.
Makefile.in:
Update dependencies.
akefile.in
c54b3c3c99a5d3011f6f60934e90dae7f60b3b00 03-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, pass3.c:
Fix some stupid spelling typo's.
ChangeLog:
Fix e-mail address.
hangeLog
5dbb072e27bea6f740822590e348da6ae4db2d60 03-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, uuidgen.1.in, uuidgen.c:
uuidgen.c: Add option parsing so that user can ask for either a
time-based UUID or a random-based UUID.
hangeLog
uidgen.1.in
uidgen.c
d44ae132f20785576b10ce75714d7779b099bc54 03-Jul-1999 Theodore Ts'o <tytso@mit.edu> Makefile.in:
Update dependency information for Makefile.
akefile.in
2d8defde38006fd4c92862db089ca2a1f0acda63 03-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, fsck.c, get_device_by_label.c, get_device_by_label.h:
fsck.c: Added support for LABEL= and UUID= specifications for the
filesystem's device, to match what recent mount programs can support.
Also, close stdin when doing fsck -A or when checking more than one
filesystem at a time, so that e2fsck doesn't try to ask interactive
questions if the filesystem appears to be mounted.
get_device_by_label.c: New file added to support LABEL=foo and
UUID=bar type specifications.
hangeLog
akefile.in
sck.c
et_device_by_label.c
et_device_by_label.h
00eedba1bd3a37812ee9403abca7ea4376ac9a08 03-Jul-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.c:
badblocks.c: Make the "done" string include enough spaces to clear out
a large block number.
hangeLog
adblocks.c
ca3c32851031bf51bacf59e5d7ac581b1c8347fe 29-Jun-1999 Theodore Ts'o <tytso@mit.edu> mke2fs.c, ChangeLog, mke2fs.8.in:
mke2fs.c (check_mount): Allow a filesystem to be made even if it
appears mounted if the force option is given.
hangeLog
ke2fs.8.in
ke2fs.c
e72a9ba39471364ad2f9397f645ca547090e3485 25-Jun-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, e2fsck.h, pass1.c, pass2.c, pass4.c, swapfs.c:
e2fsck.h:
pass1.c (pass1_get_blocks, pass1_read_inode, pass1_write_inode,
pass1_check_directory, e2fsck_use_inode_shortcuts): Make pass1_* be
private static functions, and create new function
e2fsck_use_inode_shortcuts which sets and clears the inode shortcut
functions in the fs structure.
e2fsck.h:
pass2.c (e2fsck_process_bad_inode): Make process_bad_inode() an
exported function.
pass4.c (e2fsck_pass4): Call e2fsck_process_bad_inode to check if a
disconnected inode has any problems before connecting it to
/lost+found. Bug and suggested fix by Pavel Machek <pavel@bug.ucw.cz>
ChangeLog, swapfs.c:
swapfs.c (ext2fs_swap_inode): Add compatibility for Linux 2.3 kernels
that use i_generation instead of i_version. Patch supplied by Jon
Bright <sircus@sircus.demon.co.uk>.
ChangeLog, mke2fs.8.in:
mke2fs.8.in: Fix typo in man page which caused the badblocks command
to not show up in the "SEE ALSO" section.
ChangeLog, expect.1, expect.2, image.gz, name:
f_recnect_bad: New test which checks the case where a disconnect inode
also bad inode fields; we need to make sure e2fsck offers to fix the
inode (or clear the inode, as necessary).
hangeLog
ke2fs.8.in
e2423cc07a0fafce4be50715336052eea4b9913a 18-Jun-1999 Theodore Ts'o <tytso@mit.edu> findsuper.c, ChangeLog:
findsuper.c: Added documentation from aeb@cwi.nl; some minor code
cleanups.
hangeLog
indsuper.c
02e7dd9ac779f108d2bf1c166f4faeae1db5c7a4 18-Jun-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, dumpe2fs.c, dumpe2fs.8.in:
dumpe2fs.c, dumpe2fs.8.in: Added new command-line options which allow
a filesystem expert to specify the superblock and blocksize when
opening a filesystem. This is mainly useful when examining the
remains of a toasted filesystem.
hangeLog
umpe2fs.8.in
umpe2fs.c
b19d1a959eeea17d6b899a5b994bf3f3691de947 18-Jun-1999 Theodore Ts'o <tytso@mit.edu> Many files:
* gen_uuid.c (get_random_bytes): Use a while loop when reading from
/dev/urandom so that if we get interrupted while reading the right
thing happens.
(uuid_generate_random): Add new function which uses the new UUID
format which uses 122 random bits to form the 128-bit UUID.
(uuid_generate): Rename the old uuid_generate to be
uuid_generate_time, and create a new uuid_generate function which
calls either uuid_generate_random or uuid_genereate_time depending on
whether /dev/urandom is present.
uuid_generate.3.in: Update to reflect changesin uuid_generate and its
two new variants.
tst_uuid.c: Updated to test new uuid_generate functions, and to
reflect new semantics of uuid_compare. Added tests to make sure the
UUID type and variant created by UUID generate is correct.
uuid_time.c (uuid_variant, uuid_type): Added new functions to return
the UUID variant and type information. The debugging program now
prints the UUID variant and type, and warns if the unparsed time
information is likely to be incorrect.
uuid_parse.3.in, libuuid.3.in: Miscellaneous text cleanups.
uuidgen.1.in:
Miscellaneous text cleanups.
uidgen.1.in
5d45d80375943be8917302a502f3f28d2df8d16d 16-Mar-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, fsck.c, mke2fs.c, uuidgen.1.in, uuidgen.c:
uuidgen.c, uuidgen.1.in: Created command-line utility to generate
UUIDs.
fsck.c (fsck_device, execute): Don't dereference a null pointer when
checking a filesystem not in /etc/fstab.
hangeLog
akefile.in
sck.c
ke2fs.c
uidgen.1.in
uidgen.c
7d5633cf6ee1be74777cf4b1adfa9738ff33f2b7 09-Feb-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c, mke2fs.c:
fsck.c (fsck_device): Print an error message if the user passes in a
device or directory name which isn't found in /etc/fstab. Allow the
location of /etc/fstab to be overridden by the FSTAB_FILE environment
variable.
mke2fs.c (write_inode_tables): Add kludge code so that when the
MKE2FS_SYNC environment variable is set, mke2fs will sync every
MKE2FS_SYNC block groups, while it is writing out the inode tables.
This is to work around a VM bug in the 2.0 kernel. I've heard a
report that a RAID user was able to trigger it even using a 2.2
kernel.
hangeLog
sck.c
ke2fs.c
ee9229993a0bb078c17738e91d7aa7864be5a17b 16-Jan-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
fsck.c (execute, wait_one): Modified routines so that they accurately
create an fsck_instance even when the noexecute flag is set. This
allows for accurate debugging of the fsck pass structure.
(check_all): When the verbose flag is given twice, print debugging
information about when fsck is waiting for jobs to finish.
hangeLog
sck.c
9e51eca782b8e17a1ec87944ccbeac94c7c8e2a1 09-Jan-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, message.c:
message.c (safe_print): New function which prints strings, converting
non-printable characters using the '^' and M-notation. This function
is now used to print directory name entries and pathnames.
ChangeLog:
Update for release of E2fsprogs 1.14.
hangeLog
7953f61012d10f2040d63108cbe277f8854e6423 09-Jan-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.8.in:
fsck.8.in: Clarified and expanded the documentation for the -A switch.
hangeLog
sck.8.in
665f7107c595ff5bace48d360d506e3d968b9991 08-Jan-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, inode.c:
inode.c (ext2fs_read_inode, ext2fs_write_inode): Check to see if the
inode number is zero; if it's zero, return EXT2_ET_BAD_INODE_NUM.
ChangeLog, fsck.c:
fsck.c (load_fs_info): If the pass number field is missing, it needs
to be treated as zero.
libext2fs.texinfo, README:
Update for 1.14 release.
hangeLog
sck.c
5515e6b47de9ff941164a546dd9a74e9c6da3367 05-Jan-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in, mke2fs.c:
mke2fs.c (PRS): Allow the user to specify exactly how many inodes
he/she wishes.
hangeLog
ke2fs.8.in
ke2fs.c
a88fa0c0135307288562d4922438ae52fdbad855 05-Jan-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, chattr.1.in, chattr.c, lsattr.1.in, lsattr.c:
chattr.c, lsattr.c: Only print the version information for the program
if the -V option is given.
chattr.c: Ignore symbolic links when doing a recursive descent through
a directory.
hangeLog
hattr.1.in
hattr.c
sattr.1.in
sattr.c
93ab9d784e8945b256f4e9c76af9644f1cd7ba0e 02-Jan-1999 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
mke2fs.c: Add definition of SCSI_BLK_MAJOR if not defined, for
compatibility with Linux 1.2.13 header files.
ChangeLog, fsck.c:
fsck.c (load_fs_info, parse_fstab_line): Ignore fstab lines are
commented out. Also allow blank lines in the /etc/fstab file.
(execute): In verbose mode, print the mountpount of the filesystem
which we are checking (user request).
hangeLog
sck.c
ke2fs.c
556ad1327feb34ea5b711eb9c135f8e11415cf53 19-Dec-1998 Theodore Ts'o <tytso@mit.edu> Many files:
Update version information in ChangeLogs, release notes,
documentation, etc. for release of version 1.13.
hangeLog
cb62017475565967c7308552a06f7fc1a77d76bb 08-Dec-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.8.in:
Fixed stupid typo ("Raid options are _comma_ separated", instead of
common seperated)
hangeLog
ke2fs.8.in
5a679c8fb15540f86fc2eae3117412adc6ecbb33 03-Dec-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, pass3.c, problem.c:
pass3.c (get_lost_and_found): If the filesystem is not opened
read-only, then force /lost+found to be created if it is not present.
problem.c: Allow PR_3_NO_LF_DIR to be handled during a preen operation.
ChangeLog, Makefile.in:
Makefile.in: Updated dependencies.
ChangeLog, fsck.c:
fsck.c (load_fs_info): Parse /etc/fstab ourselves, instead of relying
on getmntent(). This has the advantage of allowing us to properly
handle missing pass numbers correctly.
ChangeLog, configure.in:
configure.in: Add paths.h to header files for which we search.
hangeLog
akefile.in
sck.c
1dde43f0c1176f61dd0bf91aff265ce8cd1c5fd6 14-Nov-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c, tune2fs.8.in:
tune2fs.8.in: Fix minor display bug in the nroff.
mke2fs.c (show_stats, write_inode_tables): Use the log10 function to
calculate the display of block numbers so that things look nice on an
80 character display.
mke2fs.c (usage): Add the sparse-super-flag to the usage message.
ChangeLog, e2fsck.c, pass1.c, pass2.c, problem.c, problem.h, unix.c:
unix.c (main): Move ext2fs_close() after e2fsck_free_context() since
e2fsck_free_context may reference data in ctx->fs.
e2fsck.c (e2fsck_reset_context): Make sure ctx->fs is non-NULL before
checking ctx->fs->dblist.
pass1.c (e2fsck_pass1): Use the device check subroutine on FIFO's and
Socket's, so that we catch bogus immutable inodes.
pass2.c (process_bad_inode): Process bad socket and fifo's.
problem.h, problem.c: Define new problem codes PR_2_BAD_FIFO and
PR_2_BAD_SOCKET.
hangeLog
ke2fs.c
une2fs.8.in
4a5fa192122c996e7e42908ef9eb4fc2f1f99277 09-Jul-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, .del-ChangeLog~905e7699, version.h:
Update for 1.12 release.
hangeLog
eb5ab749afac30e24247509b3b6ec462f9ad1502 04-Jul-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, findsuper.c:
findsuper.c (main): Print the block group number which is now being
written by e2fsprogs.
hangeLog
indsuper.c
818180cdfcff84b9048ecdc5dc86323f0fefba24 27-Jun-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, debugfs.8.in, debugfs.c:
Add a -V option which displays the current version.
ChangeLog, unix.c:
unix.c (e2fsck_update_progress): Remove unused variables.
ChangeLog, inode.c:
inode.c (get_next_blockgroup): Fix bug where if get_next_blockgroup()
is called early because of a missing inode table in a block group, the
current_inode counter wasn't incremented correctly.
ChangeLog, tst_uuid.c:
tst_uuid.c (main): Fixed bogus declaration of the main's argv parameter.
ChangeLog, test_icount.c:
test_icount.c (main): Fix main() declaration so that it returns int,
not void.
Many files:
fsck.c (ignore): Remove unused variable cp.
chattr.c (fatal_error):
tune2fs.c (usage):
lsattr.c (usage):
dumpe2fs.c (usage):
badblocks.c (usage): Remove volatile from declaration.
fsck.c: Change use of strdup to be string_copy, since we don't trust
what glibc is doing with strdup. (Whatever it is, it isn't pretty.)
hangeLog
adblocks.c
hattr.c
umpe2fs.c
sck.c
sattr.c
ke2fs.8.in
ke2fs.c
une2fs.c
4bf5fbfe055d5e9bce54a7bc2ad7b959041dcf12 15-May-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, fsck.c:
Remove check for filesystem with the noauto option.
hangeLog
sck.c
7e44f24237285e809a9f6752e5c960a421e4e998 01-Apr-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in:
Change to use new installation directory variables convention. Fix
uninstall rules to take $(DESTDIR) into account. Remove cat8dir and
cat1dir from the installdirs target, since modern man package don't
necessarily put the cat directory in /usr/man/cat?.
Makefile.in: Change to use new installation directory variables
convention. Fix uninstall rules to take $(DESTDIR) into account.
Remove cat8dir from the installdirs target, since modern man package
don't necessarily put the cat directory in /usr/man/cat?.
Change to use new installation directory variables convention. Fix
installdirs and uninstall rules to reflect the fact that debugfs has
been installed in the root filesystem. Fix uninstall rules to take
$(DESTDIR) into account.
hangeLog
akefile.in
3b27db9fb6da9302e567cb2b03ac12091eca7130 30-Mar-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Committed wrong version of ChangeLog that didn't include the line
describing the new e2label.8.in file.
hangeLog
a789d8406070224503c9ab78040acc7ea80c65ae 30-Mar-1998 Theodore Ts'o <tytso@mit.edu> Many files:
e2label.c: Fix -Wall warning by making functions static.
chattr.1.in: Document that the append-only attribute may only be set
or cleared by the superuser.
Update all manual pages to that the availability section is
up-to-date.
e2label.8.in, tune2fs.8.in: Update manual page to state that labels
must be no longer than 16 characters, or they will be truncated.
e2label.c (change_label), tune2fs.c (main): If the label is longer
than 16 characters, print a warning message stating that the label
will be truncated.
mke2fs.c (PRS): If the user specifies a filesystem size, and it's
larger than the apparent size of the device, print a warning message
and ask if the user wants to proceed.
hangeLog
akefile.in
adblocks.8.in
hattr.1.in
umpe2fs.8.in
2label.8.in
2label.c
sattr.1.in
ke2fs.8.in
ke2fs.c
klost+found.8.in
une2fs.8.in
une2fs.c
bbfa3aa990ba29de563d30598f9bf515be26026c 21-Mar-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
Fixed spelling typo in warning message. Fixed up -Wall warnings in
file.
Many files:
Update latest version of the build files for resize2fs.
hangeLog
ke2fs.c
e927168ed69c29df1a405ea71e1e602a6c37436b 09-Mar-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, partinfo.c:
The ioctl BLKGETSIZE requires a long, not an int.
hangeLog
artinfo.c
92bcc595dcb31ad15e12d8c72e6edfc70545c204 16-Feb-1998 Theodore Ts'o <tytso@mit.edu> ChangeLog, badblocks.8.in, mke2fs.c:
badblocks.8: Update documentation to note that output format of
badblocks is suitable for use with e2fsck -l or mke2fs -l.
mke2fs.c (handle_bad_blocks): Fix bug so that all groups with bad
superblock backup blocks are printed (not just the first one).
hangeLog
adblocks.8.in
ke2fs.c
ca8abba7e0970fd1702db53e3f89ceb68c70768c 19-Jan-1998 Theodore Ts'o <tytso@mit.edu> Many files:
resize2fs.h: If EXT2_FLAT_INCLUDES is defined, then assume all
of the ext2-specific header files are in a flat directory.
ext2_block_move.c, ext2_inode_move.c, extent.c, resize2fs.c,
resize2fs.h: Rename variables named "new" to "new_block",
"new_inode", or "new_loc" to avoid C++ reserved word
clash.
ext2_block_move.c, ext2_inode_move.c, extent.c, resize2fs.c,
sim_progress.c: Use ext2fs_get_memory(),
ext2fs_free_memory(), et. al., instead of malloc() and
free().
ext2_block_move.c, ext2_inode_move.c, extent.c: Explicitly cast
all assignments from void * to be compatible with C++.
banalysis.c, banalysis.h, ext2_inode_move.c, ext2_block_move.c:
Change private to priv_data to avoid C++ namespace clash.
ChangeLog, badblocks.8.in:
badblocks.8.in: Add documentation for the -s option.
hangeLog
adblocks.8.in
134ea28aaf76a3497361c99e115ff666b0c000b8 28-Nov-1997 Theodore Ts'o <tytso@mit.edu> partinfo.c:
Add preliminary version of the partinfo program.
artinfo.c
80c0fc3492278168448017e79730905aa5b9b62b 03-Nov-1997 Theodore Ts'o <tytso@mit.edu> Many files:
resize2fs.c, ext2_block_move.c ext2_inode_move.c: Only include printf
statements if RESIZE2FS_DEBUG is defined.
main.c: Don't read in the bitmaps since resize2fs.c does that.
e2label.c, mke2fs.c:
Adjust header files.
2label.c
ke2fs.c
519149fb458b0fa69c10fecd83fae42e838cf01d 25-Oct-1997 Theodore Ts'o <tytso@mit.edu> Many files:
fsck.c:
chattr.c: Remove #include of getopt.h, since it's not needed.
tune2fs.c (main):
lsattr.c (main):
badblocks.c (main):
dumpe2fs.c (main):
mke2fs.c (PRS): Make the variable which getopt returns into be
an int, so that it won't lose on platforms where char is
unsigned.
ChangeLog, unix.c:
Make the variable which getopt returns into be an int, so that it
won't lose on platforms where char is unsigned.
hangeLog
adblocks.c
hattr.c
umpe2fs.c
sck.c
sattr.c
ke2fs.c
une2fs.c
d40259fd552d942903f2fd0b426c75a5c2516017 20-Oct-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Rename io.h to be ext2_io.h (avoid namespace collisions)
ChangeLog, resize2fs.h:
Add #ifdef's for HAVE_SYS_TYPES_H and HAVE_SYS_TIME_H.
akefile.in
adblocks.c
44339bdff87584b72a2ade7d3a1426e3335f2167 15-Oct-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Use new substitution technology which doesn't depend on shell scripts.
(Faster, and better for MS-DOS port!)
akefile.in
d163b0948731e6d84bd3efe75075a2d0a8009272 03-Oct-1997 Theodore Ts'o <tytso@mit.edu> ChangeLog, bmove.c, icount.c, inode.c, llseek.c:
llseek.c (ext2fs_llseek): Fix type error for ext2fs_llseek()
icount.c (ext2fs_icount_validate):
bmove.c (process_block): Fix lint error in type for fprintf().
inode.c (ext2fs_check_directory): Add support for the callback
to return the error code EXT2_ET_CALLBACK_NOTHANDLED.
ChangeLog, mke2fs.c:
Make parse_raid_opts return a void, to fix a -Wall warning.
hangeLog
ke2fs.c
00e5433eb5e9f70f485968b809fdcf297d7fe7b9 16-Sep-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Declare main() to return an int, as required. Make sure main() always
ends with an exit(0). (Some programs weren't doing this, and thus
were returning a random exit value.)
hangeLog
adblocks.c
hattr.c
umpe2fs.c
sattr.c
klost+found.c
une2fs.c
ab6b8ab64d5afb5393a9aa826fce26490127f785 14-Jul-1997 Theodore Ts'o <tytso@mit.edu> ChangeLog, Makefile.in, e2label.c:
e2label.c: New file contributed by Andries Brouwer which provides an
easy-to-use interface to modify the filesystem label.
hangeLog
akefile.in
2label.c
024996cf0a54c2b294810a15942747c8fa9238e3 17-Jun-1997 Theodore Ts'o <tytso@mit.edu> ChangeLog:
Check-in for the 1.11 source release.
hangeLog
e22d4616efcea5e5920e4cc9526b27bb5a79cf01 17-Jun-1997 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c:
Adjust the number of columns printed when displaying the superblock
backups to avoid running over 80 columns when making a really big
disk.
hangeLog
ke2fs.c
583ccdc32d9f2feaf1a157cc6aad1f39152b8680 09-May-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Fix minor typos and grammer oops found by Bill Hawes (whawes@star.net).
hangeLog
adblocks.8.in
hattr.1.in
umpe2fs.8.in
sck.8.in
ke2fs.8.in
une2fs.8.in
f635d7f65bd002984ce9a202d491d4f187b996b2 09-May-1997 Theodore Ts'o <tytso@mit.edu> ChangeLog, mke2fs.c, badblocks.c:
Pass the blocksize to the bad blocks command so that all of the
filesystem gets tested in the case where the blocksize 2048 or 4096.
ChangeLog, badblocks.c:
Fix bug where ext2fs_badblocks_list_test would test the list (and
exceed array boundaries) if there were no bad blocks on the bad blocks
list. (Showed up when user tried: mke2fs -c -b 4096).
hangeLog
ke2fs.c
a29f4d30f24d68f1f1c75548e020689ede532c05 29-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checkin of e2fsprogs 1.10
hangeLog
akefile.in
ke2fs.8.in
ke2fs.c
une2fs.8.in
2ecc6fefa176f3203598225eb9ae2f61c3ae9c10 29-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 1.09
hangeLog
akefile.in
hattr.1.in
hattr.c
521e36857227b21e7ab47b0a97f788d2af9f9717 29-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 1.08.
hangeLog
umpe2fs.c
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
19c78dc07fce2d6f39b5e541562afc3ca1ea38ff 29-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs-1.07
hangeLog
akefile.in
adblocks.8.in
adblocks.c
hattr.c
umpe2fs.c
indsuper.c
sck.c
sattr.c
ke2fs.c
une2fs.c
5c576477ccb2f0ca8c5d5af2e2354fd8eeff1589 29-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 1.06
hangeLog
hattr.1.in
hattr.c
umpe2fs.8.in
umpe2fs.c
1e3472c5f37ca3686dd69b079d4d02a302f5798d 29-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 1.05
hangeLog
akefile.in
hattr.c
umpe2fs.c
ke2fs.8.in
ke2fs.c
une2fs.8.in
une2fs.c
62c06f790c4920ec2721515e36d599751f6d4d2d 29-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 1.04.
hangeLog
akefile.in
7f88b04341d88c5df0360d930832c38040303b61 26-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checkin of e2fsprogs 1.03.
hangeLog
indsuper.c
sck.8.in
sck.c
ke2fs.8.in
ke2fs.c
74becf3c0a065f8d64e07ce4d31f9fe53be91d62 26-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checkin of e2fsprogs 1.02.
hangeLog
akefile.in
adblocks.8
adblocks.8.in
hattr.1
hattr.1.in
umpe2fs.8
umpe2fs.8.in
umpe2fs.c
sck.8
sck.8.in
sck.c
sattr.1
sattr.1.in
ke2fs.8
ke2fs.8.in
ke2fs.c
klost+found.8
klost+found.8.in
une2fs.8
une2fs.8.in
900e442732393189b8ecfd3bb39176e398b24970 26-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 1.01.
sattr.1
ke2fs.8
klost+found.8
une2fs.8
297f47a13edce54d08517182e714083a0a7f196c 26-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 1.01.
hangeLog
adblocks.8
hattr.1
sck.c
a418d3ad819323f871005d253f7f9ac378e78ba5 26-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checked in e2fsprogs 0.5c
depend
hangeLog
akefile
akefile.in
adblocks.8
adblocks.c
hattr.1
hattr.c
umpe2fs.8
umpe2fs.c
sck.8
sck.c
sattr.1
sattr.c
ke2fs.8
ke2fs.c
klost+found.8
klost+found.c
une2fs.8
une2fs.c
f3db3566b5e1342e49dffc5ec3f418a838584194 26-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checkin of e2fsprogs 0.5b
depend
hangeLog
akefile
adblocks.8
adblocks.c
hattr.1
hattr.c
umpe2fs.8
umpe2fs.c
sck.8
sck.c
sck.h
sattr.1
sattr.c
ke2fs.8
ke2fs.c
klost+found.8
une2fs.8
une2fs.c
3839e65723771b85975f4263102dd3ceec4523c0 26-Apr-1997 Theodore Ts'o <tytso@mit.edu> Many files:
Checkin of e2fsprogs 0.5b
depend
akefile
adblocks.8
adblocks.c
hattr.1
hattr.c
umpe2fs.8
umpe2fs.c
sck.8
sck.c
sck.h
sattr.1
sattr.c
ke2fs.8
ke2fs.c
klost+found.8
klost+found.c
une2fs.8
une2fs.c