Whamcloud - gitweb
tools/e2fsprogs.git
14 years agopo: update nl.po (from translationproject.org)
Benno Schulenberg [Mon, 7 Jun 2010 16:21:46 +0000 (12:21 -0400)]
po: update nl.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update id.po (from translationproject.org)
Arif E. Nugroho [Mon, 7 Jun 2010 16:21:46 +0000 (12:21 -0400)]
po: update id.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update fr.po (from translationproject.org)
Samuel Thibault [Mon, 7 Jun 2010 16:21:46 +0000 (12:21 -0400)]
po: update fr.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update cs.po (from translationproject.org)
Petr Pisar [Mon, 7 Jun 2010 16:21:46 +0000 (12:21 -0400)]
po: update cs.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agoUpdate debian/changelog for v1.41.12-2 release debian-1.41.12-2
Theodore Ts'o [Thu, 3 Jun 2010 15:52:02 +0000 (11:52 -0400)]
Update debian/changelog for v1.41.12-2 release

14 years agoFix debian problem: e2fsprogs: bogus dependency on libblkid1 due to shlibs.local
Theodore Ts'o [Thu, 3 Jun 2010 15:50:42 +0000 (11:50 -0400)]
Fix debian problem: e2fsprogs: bogus dependency on libblkid1 due to shlibs.local

Addresses-Debian-Bug: #583551

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoReserve feature flags and fields needed for the Next3 snapshot feature
Theodore Ts'o [Wed, 2 Jun 2010 14:35:45 +0000 (10:35 -0400)]
Reserve feature flags and fields needed for the Next3 snapshot feature

The documentation is not (as of this writing) fully complete, but
there is some documentation here:

http://sourceforge.net/apps/mediawiki/next3/index.php?title=Code_documentation
http://sourceforge.net/apps/mediawiki/next3/index.php?title=On-disk_format
http://sourceforge.net/projects/next3/files/Next3_Snapshots.pdf/download

... which will hopefully be updated soon to be fully up to date with
these assignments and more details about how things work.

For now, the assignments should avoid collisions with other new work
that people might want to do on ext3/4.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoReserve the EXT4_FEATURE_INCOMPAT_DIRDATA feature flag
Andreas Dilger [Wed, 2 Jun 2010 02:21:42 +0000 (22:21 -0400)]
Reserve the EXT4_FEATURE_INCOMPAT_DIRDATA feature flag

Reserve the EXT4_FEATURE_INCOMPAT_DIRDATA feature flag for adding
extra file data in ext2_dir_entry_2 entries.

This changes the on-disk layout in the following way.

Firstly, the ext2_dir_entry_2 file_type field now has a mask: that
limits the "filetype" information to the low 4 bits of this field.
Since these values are sequentially assigned, this allows for up to 7
more filetypes to be assigned.  When reading the "filetype" field, the
high 4 bits should be masked off when converting to DT_* filetypes for
userspace.

The high 4 bits of "filetype" are used as a bitmask to register up to
4 different "extended" directory entry fields.  Extended data fields
are packed without alignment into the directory entry after the "name"
field in order of increasing bitmask value, for each field where bit
is set.  In order to avoid the need to "understand" each of the
extended fields, the first byte of each extended data field holds the
size of that data field (including the size itself), so they can be
skipped if not understood.  For fields that change the semantics of
the filesystem it is expected that a separate ROCOMPAT or INCOMPAT
field is registered.

There is a single dirent data type defined currently, for Lustre:
which holds a 128-bit file identifier.  It is expected that if there
are 64-bit inode values that this will be assigned the 0x20 value.

Should a need ever arise to use all 4 of the extended dirent data
fields, it would be possible to keep the last bit (0x80) for use as a
multiplexor that stores a 1-byte aggregate data size, then a series of
"<u8_size><u8_type><data>" records in the last extended data record.
It is not expected that this will actually be needed in the lifetime
of ext4.

Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoReserve the EXT4_INCOMPAT_EA_INODE feature flag
Andreas Dilger [Wed, 2 Jun 2010 02:20:22 +0000 (22:20 -0400)]
Reserve the EXT4_INCOMPAT_EA_INODE feature flag

Reserve the EXT4_INCOMPAT_EA_INODE feature flag for use with
large extended attributes that are stored in a separate inode.
This changes the on-disk format in several ways:

First, replace the e_value_block field with e_value_inum, so that
an xattr entry can reference an external inode.  This field is
currently unused, as all of the entries live in the same block.

struct ext2_ext_attr_entry {
  __u8 e_name_len; /* length of name */
  __u8 e_name_index; /* attribute name index */
  __le16 e_value_offs; /* offset in disk block of value */
> __le32 e_value_inum; /* inode in which the value is stored */
  __le32 e_value_size; /* size of attribute value */
  __le32 e_hash; /* hash value of name and value */
  char e_name[0]; /* attribute name */
}

Second, add a flag to the inode that indicates it is using a large
(external) extended attribute.  This is needed so that when unlinking
an inode the xattrs will be scanned to unlink the xattr inodes
referenced by the main inode.

Third, for inodes that have a number of xattrs that are larger than
a single block, but not large enough to justify an external inode
(less than 64kB total xattr size, due to e_value_offs limitation)
the ext2_ext_attr_header->h_blocks field can grow beyond a single
block to represent a contiguous allocation of blocks for the xattr.

Signed-off-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agolibext2fs: Remove #include of <linux/types.h> from fiemap.h
Theodore Ts'o [Mon, 31 May 2010 22:50:50 +0000 (18:50 -0400)]
libext2fs: Remove #include of <linux/types.h> from fiemap.h

The system header file can end up causing type conflicts, and
including kernel header files is always dodgy/dangerous (and this case
not needed).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoFix minor nit in debian/rules file
Theodore Ts'o [Wed, 26 May 2010 15:01:06 +0000 (11:01 -0400)]
Fix minor nit in debian/rules file

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: correct test for EOFBLOCKS
Eric Sandeen [Wed, 19 May 2010 18:20:13 +0000 (13:20 -0500)]
e2fsck: correct test for EOFBLOCKS

This test, added to e2fsprogs-1.41.12, is backwards.

If EOFBLOCKS is set, then the size -should- be less than
the last physical block...

xfstests 013 caught this.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agotune2fs: Enable uninit_bg to be set without requiring an fsck
Theodore Ts'o [Wed, 19 May 2010 16:14:39 +0000 (12:14 -0400)]
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>
14 years agoClean up "last commit" comment in RELEASE-NOTES
Theodore Ts'o [Tue, 18 May 2010 04:14:21 +0000 (00:14 -0400)]
Clean up "last commit" comment in RELEASE-NOTES

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoUpdate release notes, version string, etc. for e2fsprogs 1.41.12 release v1.41.12
Theodore Ts'o [Tue, 18 May 2010 03:54:49 +0000 (23:54 -0400)]
Update release notes, version string, etc. for e2fsprogs 1.41.12 release

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoFix dpkg-buildpackage -j2
Theodore Ts'o [Tue, 18 May 2010 03:48:52 +0000 (23:48 -0400)]
Fix dpkg-buildpackage -j2

Add a dependency on subs to all-libs-recursive and all-progs-recursive
to dpkg-buildpackage -j2, since it builds make target 'libs'
explicitly, and we need to make sure the 'subs' target is run first.

Addresses-Debian-Bug: #563487

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoUpdate e2fsprogs translation template for 1.41.12 release
Theodore Ts'o [Tue, 18 May 2010 00:03:18 +0000 (20:03 -0400)]
Update e2fsprogs translation template for 1.41.12 release

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Don't set the group descriptor checksums if the fsck was cancelled
Theodore Ts'o [Tue, 18 May 2010 02:54:06 +0000 (22:54 -0400)]
e2fsck: Don't set the group descriptor checksums if the fsck was cancelled

It's a bad idea to set the checksums if e2fsck is aborted by the user,
and it often causes an error message, "Inode bitmap not loaded while
setting block group checksum info".

Addresses-Launchpad-Bug: #582035

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs: account for physical as well as logical sector size
Theodore Ts'o [Tue, 18 May 2010 02:31:45 +0000 (22:31 -0400)]
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>
14 years agolibe2p, libext2fs: Update file copyright permission states to match COPYING
Theodore Ts'o [Tue, 18 May 2010 01:31:56 +0000 (21:31 -0400)]
libe2p, libext2fs: Update file copyright permission states to match COPYING

The top-level COPYING file states that the e2p and ext2fs libraries
are available under the LGPLv2.  The files were incorrectly labelled.
Alex Thomas/Luster has been consulted wrt to the ext3_extents.h file;
the rest of the files were primarily authored by Theodore Ts'o.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs: Fix compile warning message
Theodore Ts'o [Tue, 18 May 2010 00:05:13 +0000 (20:05 -0400)]
mke2fs: Fix compile warning message

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoInstall fsck.ext4 symlink in e2fsprogs-udeb package
Theodore Ts'o [Mon, 17 May 2010 23:38:31 +0000 (19:38 -0400)]
Install fsck.ext4 symlink in e2fsprogs-udeb package

Addresses-Debian-Bug: #571247

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoAlways build namei.o so that building with "configure --disable-debugfs" works
Theodore Ts'o [Mon, 17 May 2010 23:32:19 +0000 (19:32 -0400)]
Always build namei.o so that building with "configure --disable-debugfs" works

namei.o is also needed by e2initrd_helper.

Long term, if we care about reduced e2fsprogs builds, we need a more
general solution for deciding what .o files are needed for a
particular build.  Given that install floppies are going (gone?) the
way the dodo bird, we probably don't care, though.

Addresses-Sourceforge-Bug: #2911433

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoAdd configure options --enable-symlink-build and --enable-symlink-install
Theodore Ts'o [Mon, 17 May 2010 23:21:42 +0000 (19:21 -0400)]
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>
14 years agolibcom_err: Only output ^M when tty is in raw mode
Theodore Ts'o [Sat, 15 May 2010 11:48:25 +0000 (07:48 -0400)]
libcom_err: Only output ^M when tty is in raw mode

This fixes a long-standing botch in the com_err library, and solves a
regression test problem for libss that gets tickled by source code
management systems (like Perforce) that don't preserve CRLF line
endings with fidelity.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agotests: Use our own mke2fs.conf file
Theodore Ts'o [Sat, 15 May 2010 00:18:11 +0000 (20:18 -0400)]
tests: Use our own mke2fs.conf file

Use a standard, fixed mke2fs.conf file so that if downstream
distributions want to change the mke2fs.conf which is distributed in
the RPM or dpkg file, it won't screw up the regression tests.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Explicitly reject extents that begin at physical block 0 as illegal
Theodore Ts'o [Fri, 14 May 2010 22:03:14 +0000 (18:03 -0400)]
e2fsck: Explicitly reject extents that begin at physical block 0 as illegal

In the case where s_first_data_block is 1, we need to explictly reject
an extent whose starting physical block is zero.

Thanks to Jiaying Zhang <jiayingz@google.com> for finding this bug.

Addresses-Google-Bug: #2573806

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Fix segmentation fault when checking a file system
Theodore Ts'o [Wed, 17 Mar 2010 17:32:52 +0000 (13:32 -0400)]
e2fsck: Fix segmentation fault when checking a file system

If a corrupted file system causes us to want to delete an extent, and
that causes us to want to release a block in e2fsck pass #1, it would
be preferable if e2fsck didn't seg fault.  This tends to get users
craky, as users are wont to do.  :-)

Thanks to Dirk Reiners for reporting this bug:

e2fsck crashes fixing a corrupted 3.5 TB filesystem:

0x0000000000432002 in ext2fs_unmark_generic_bitmap (bitmap=0x0, bitno=623386749)
at gen_bitmap.c:183
183             if ((bitno < bitmap->start) || (bitno > bitmap->end)) {
(gdb) bt
bitno=623386749) at gen_bitmap.c:183
block=623386749) at ../../lib/ext2fs/bitops.h:319
inuse=-1) at alloc_stats.c:78
extent.c:1509
pb=0x7fffffffdfe0, start_block=0, ehandle=0x6dcf50) at pass1.c:1709
pb=0x7fffffffdfe0, start_block=0, ehandle=0x6dcf50) at pass1.c:1737
pctx=0x7fffffffe100, pb=0x7fffffffdfe0) at pass1.c:1842
block_buf=0x6c4330 "\373\212#") at pass1.c:1920

The source of the NULL bitmap is fs on stack frame 2:

(gdb) up 2
inuse=-1) at alloc_stats.c:78
78                      ext2fs_unmark_block_bitmap(fs->block_map, blk);

Addresses-SourceForge-Bug: #2971800

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Skip time-based checks if the time looks insane or broken_system_clock
Theodore Ts'o [Thu, 13 May 2010 21:36:36 +0000 (17:36 -0400)]
e2fsck: Skip time-based checks if the time looks insane or broken_system_clock

There are broken embedded devices that have system clocks that always
reset to January 1, 1970 whenever they boot (even if no power is
lost).  There are also systems that have super cheap clock crystals
that can be very inaccurate.  So if the option broken_system_clock is
given, disable all time based checks.  E2fsck will also try to detect
incorrect system clock times, and automatically mark the system clock
as insane.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: make block counting variable in pass1 64 bits
Eric Sandeen [Tue, 30 Mar 2010 16:42:51 +0000 (11:42 -0500)]
e2fsck: make block counting variable in pass1 64 bits

Justin reported that creating a 4T file with posix_fallocate led
to fsck errors:

e2fsck 1.41.10 (10-Feb-2009)
Pass 1: Checking inodes, blocks, and sizes
Inode 12, i_blocks is 8589935432, should be 840.  Fix? yes

This looks like a 32-bit overflow.

commmit 8a8f36540bbf5d4397cf476e216e9a720b5c1d8e added handling of
the high i_blocks number, but we accumulate blocks in the num_blocks
field, and that's still just 32 bits.

Note: we don't need to expand max_blocks for now, that's only used
in the non-extents case, and those files have smaller max sizes.

I haven't been able to replicate the problem, oddly, but Justin
reports that this patch fixed his situation.

Reported-by: Justin Maggard <jmaggard10@gmail.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agoe2fsck: mark sparse journal as invalid
Eric Sandeen [Mon, 12 Apr 2010 22:36:33 +0000 (17:36 -0500)]
e2fsck: mark sparse journal as invalid

For a filesystem that fails with:

journal_bmap: journal block not found at offset 7334 on loop0
JBD: bad block at offset 7334

e2fsck won't actually fix this; it will mark the fs as clean,
so it will mount, but it does not fix that block, and when the
journal reaches this point again it will fail again.

The following simple change to process_journal_block() might be
a little drastic; it will clear & recreate the journal inode if
it's sparse - i.e. if it gets block 0.

I suppose we could be more complicated and try to replay the journal
up to the error, but I'm not sure it's worth it since we're fscking
it anyway.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agoe2fsck: Fix a number of problems that were inappropriately using PROMPT_ABORT
Theodore Ts'o [Wed, 12 May 2010 22:58:53 +0000 (18:58 -0400)]
e2fsck: Fix a number of problems that were inappropriately using PROMPT_ABORT

There were a number of problems that were prompting the user whether
or not to ABORT, but then would abort regardless of whether the user
answered yes or no.  Change those to be PROMPT_NONE, PR_FATAL.

Also, fix PR_1_RESIZE_INODE_CREATE so that it recovers appropriately
after failing to create the resize inode.  This problem now uses
PROMPT_CONTINUE instead of PROMPT_ABORT, and if the user says, "no",
the code will abort.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs: be explicit if external journal device is not found
Eric Sandeen [Thu, 1 Apr 2010 19:26:30 +0000 (14:26 -0500)]
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>
14 years agoresize2fs: don't print minimum size if fs is not clean
Eric Sandeen [Wed, 31 Mar 2010 19:28:42 +0000 (14:28 -0500)]
resize2fs: don't print minimum size if fs is not clean

Right now, resize2fs -P on a dirty filesystem will give you a number;
however, it's probably wrong if the fs is not clean:

# resize2fs -P myimage.img
resize2fs 1.41.9 (22-Aug-2009)
Estimated minimum size of the filesystem: 75623

# e2fsck -fy myimage.img
e2fsck 1.41.9 (22-Aug-2009)
myimage.img: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information

myimage.img: ***** FILE SYSTEM WAS MODIFIED *****
myimage.img: 9530/53760 files (0.1% non-contiguous), 24737/98304 blocks

# resize2fs -P myimage.img
resize2fs 1.41.9 (22-Aug-2009)
Estimated minimum size of the filesystem: 32165

We should issue the same "Please run e2fsck ..." message for
-P as we do for an actual resize request.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agotests: Add new test f_unused_itable
Theodore Ts'o [Wed, 12 May 2010 01:10:12 +0000 (21:10 -0400)]
tests: Add new test f_unused_itable

Add test to make sure e2fsck doesn't end up detaching and sending to
lost+found inodes which are in an bg_itable_unused_region (e.g. if
there was a power failure and bg_itable_unused wasn't updated because
journaling wasn't enabled).

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Don't clear inodes if we found inodes that are in the unused region
Theodore Ts'o [Tue, 11 May 2010 19:12:52 +0000 (15:12 -0400)]
e2fsck: Don't clear inodes if we found inodes that are in the unused region

Commit 6267ee4 avoided repeating pass #1 over and over again if
multiple block groups are found with inodes in the bg_itable_unused
region during pass #2.  This caused a regression because the problem
with not restarting pass #1 right away is that e2fsck will offer to
clear directory entries for inodes that are deleted, and e2fsck can't
easily distinguish between deleted inodes and inodes that were skipped
because of an incorrect bg_itable_unused value.  So once an inode is
found in an unused region and we know that we're going to restart the
e2fsck pass, don't offer to clear any deleted inodes --- since those
will be caught in the second round.

Addresses-Google-Bug: #2642165

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs: Allow a flex_bg size of 1
Theodore Ts'o [Tue, 11 May 2010 01:49:58 +0000 (21:49 -0400)]
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>
14 years agoe2fsck: Check for cases where EOFBLOCKS_FL is unnecessarily set
Theodore Ts'o [Mon, 10 May 2010 14:17:44 +0000 (10:17 -0400)]
e2fsck: Check for cases where EOFBLOCKS_FL is unnecessarily set

Some kernels will crash if EOFBLOCKS_FL is set when it is it not
needed, and this if it is left set when it isn't needed, it is a sign
of a kernel bug.

Addresses-Google-Bug: #2604224

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agopo: update cs.po (from translationproject.org)
Petr Pisar [Thu, 6 May 2010 18:49:49 +0000 (14:49 -0400)]
po: update cs.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update zh_CN.po (from translationproject.org)
Dark Raven [Mon, 19 Apr 2010 20:59:03 +0000 (16:59 -0400)]
po: update zh_CN.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update vi.po (from translationproject.org)
Clytie Siddall [Mon, 19 Apr 2010 20:59:03 +0000 (16:59 -0400)]
po: update vi.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update pl.po (from translationproject.org)
Jakub Bogusz [Mon, 19 Apr 2010 20:59:03 +0000 (16:59 -0400)]
po: update pl.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update nl.po (from translationproject.org)
Benno Schulenberg [Mon, 19 Apr 2010 20:59:03 +0000 (16:59 -0400)]
po: update nl.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update id.po (from translationproject.org)
Arif E. Nugroho [Mon, 19 Apr 2010 20:59:03 +0000 (16:59 -0400)]
po: update id.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update fr.po (from translationproject.org)
Samuel Thibault [Mon, 19 Apr 2010 20:59:03 +0000 (16:59 -0400)]
po: update fr.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update de.po (from translationproject.org)
Philipp Thomas [Mon, 19 Apr 2010 20:59:02 +0000 (16:59 -0400)]
po: update de.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agoRevert "e2fsck: fix spurious complaints about i_size caused by preallocated blocks"
Theodore Ts'o [Thu, 8 Apr 2010 19:51:10 +0000 (15:51 -0400)]
Revert "e2fsck: fix spurious complaints about i_size caused by preallocated blocks"

This reverts commit 0ea910997b3c2ba09b65b852b9bb4dd7b4d68999.

Since the Linux kernel now has support for the EXT4_EOFBLOCKS_FL flag
starting in 2.6.34, we don't need this workaround any more.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoUpdate release notes, version string, etc. for e2fsprogs 1.41.11 release v1.41.11
Theodore Ts'o [Mon, 15 Mar 2010 04:57:42 +0000 (00:57 -0400)]
Update release notes, version string, etc. for e2fsprogs 1.41.11 release

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodebian: Update compliance to debian policy to 3.8.4
Theodore Ts'o [Mon, 15 Mar 2010 04:56:58 +0000 (00:56 -0400)]
debian: Update compliance to debian policy to 3.8.4

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodebian: static build no longer needs -fno-stack-protector
Theodore Ts'o [Mon, 15 Mar 2010 04:14:46 +0000 (00:14 -0400)]
debian: static build no longer needs -fno-stack-protector

From: Kees Cook <kees@debian.org>

I noticed that the debian/rules contains "-fno-stack-protector".  While
this used to be needed a while back, this is no longer required, as the
stack protection code will be statically compiled into the static e2fsprogs
correctly now.

Addresses-Debian-Bug: #573923

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agotests: Add new test f_rehash_dir
Theodore Ts'o [Mon, 15 Mar 2010 03:40:55 +0000 (23:40 -0400)]
tests: Add new test f_rehash_dir

Add a new test which tests to make sure e2fsck -D works correctly.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agolibcom_err: Add support for Heimdal com_right_r function()
Theodore Ts'o [Sun, 14 Mar 2010 23:34:53 +0000 (19:34 -0400)]
libcom_err: Add support for Heimdal com_right_r function()

Addresses-Sourceforge-Bug: #2963865
Addresses-Debian-Bug: #558910

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Don't blow up if the physical device is too big
Theodore Ts'o [Sun, 14 Mar 2010 23:26:48 +0000 (19:26 -0400)]
e2fsck: Don't blow up if the physical device is too big

If the user grows a partition bigger than 2**32 blocks, e2fsprogs
1.41.x is not going to be able to support resizing the filesystem,
since it doesn't have > 2**32 block support.  However, e2fsck should
still work, so the system administrator doesn't get stuck.

Addresses-Launchpad-Bug: #521648

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodebugfs: Correctly show the allocation status of a block using logdump
Theodore Ts'o [Sun, 14 Mar 2010 23:02:57 +0000 (19:02 -0400)]
debugfs: Correctly show the allocation status of a block using logdump

The offset in the bitmap was not getting correctly calculated when the
user specifics a block to track using "logdump -b <block-num>"

Addresses-Debian-Bug: #564084

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Make the "filesystem is mounted" message more scary
Theodore Ts'o [Sat, 13 Mar 2010 00:25:33 +0000 (19:25 -0500)]
e2fsck: Make the "filesystem is mounted" message more scary

I guess the message wasn't scary enough for users who are just smart
enough to really get themselves in deep doo-doo.  Let's make it even
scarier.

Addresses-Launchpad-Bug: #537483

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Make the -n always open the file system read-only
Theodore Ts'o [Sat, 13 Mar 2010 00:18:20 +0000 (19:18 -0500)]
e2fsck: Make the -n always open the file system read-only

A user was surprised when -n -D caused the file system to be opened
read/write, and then outsmarted himself when e2fsck asked the question:

   WARNING!!!  Running e2fsck on a mounted filesystem may cause
   SEVERE filesystem damage.

   Do you really want to continue (y/n)?

This is partially our fault for not documenting the fact that -D
overrode opening the filesystem read-write.  But the bottom line is it
much safer if -n *always* opens the file system read-only, so there
can be no confusion.  This means that we have to disable certain
combination of options, such as "-n -c", "-n -l", and "-n -L", and
"-n -D", but the utility of these combinations is pretty low, and
is more than offset by making e2fsck idiot-proof.

Addresses-Launchpad-Bug: #537483

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs: Don't ask to proceed in case of a badly aligned partition
Eric Sandeen [Fri, 12 Mar 2010 02:43:50 +0000 (21:43 -0500)]
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>
14 years agoext2fs: Optimize extending an extent-mapped file using ext2fs_block_iterate2()
Theodore Ts'o [Thu, 11 Mar 2010 17:47:41 +0000 (12:47 -0500)]
ext2fs: Optimize extending an extent-mapped file using ext2fs_block_iterate2()

When ext2fs_block_iterate2() is called on an extent-mapped file with a
depth > 1, it will erroneously calling the callback function starting
all over again with an offset of logical block 0.  It shouldn't do
this, and it cases mke2fs to become very slow when creating files with
very large journals.

Fix this.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: don't complain about i_size for known blocks past EOF
Eric Sandeen [Wed, 24 Feb 2010 16:24:37 +0000 (11:24 -0500)]
e2fsck: don't complain about i_size for known blocks past EOF

This is the userspace side of Jiaying's EOFBLOCKS patch.  With
Aneesh's patches for .33, Jiaying's patch, and this one, xfstests
013/fsstress (even with direct IO enabled) has held up through many
runs.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Fix bug which can cause e2fsck -fD to corrupt non-indexed directories
Theodore Ts'o [Tue, 23 Feb 2010 04:51:26 +0000 (23:51 -0500)]
e2fsck: Fix bug which can cause e2fsck -fD to corrupt non-indexed directories

E2fsprogs 1.41.10 introduced a regression (in commit b71e018) where
e2fsck -fD can corrupt non-indexed directories when are exists one or
more file names which alphabetically sort before ".".  This can happen
with ext2 filesystems or for small directories (take less than a
block) which contain filenames that begin with a space or some other
punctuation mark.

Fix this by making sure we never reorder the '.' or '..' entry in the
directory, since they must be first.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoUpdate release notes, version string, etc. for e2fsprogs 1.41.10 release v1.41.10
Theodore Ts'o [Wed, 10 Feb 2010 20:49:32 +0000 (15:49 -0500)]
Update release notes, version string, etc. for e2fsprogs 1.41.10 release

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs: fix up topo complaints on regular files
Eric Sandeen [Sun, 24 Jan 2010 03:50:45 +0000 (21:50 -0600)]
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>
14 years agoresize2fs: Fix fix uninit group test accessing invalid memory
Theodore Ts'o [Sat, 6 Feb 2010 03:25:03 +0000 (22:25 -0500)]
resize2fs: Fix fix uninit group test accessing invalid memory

Commit 74128f8 added tests for uninit groups, but it could access past
the end of the group_desc[] array after processing the last group:

==19668== Invalid read of size 2
==19668==    at 0x40518C: resize_fs (resize2fs.c:1824)
==19668==    by 0x405A46: main (main.c:451)
==19668==  Address 0x5a0d002 is not stack'd, malloc'd or (recently) free'd
==19668==
==19668== Invalid read of size 2
==19668==    at 0x405391: resize_fs (resize2fs.c:1864)
==19668==    by 0x405A46: main (main.c:451)
==19668==  Address 0x5a0d002 is not stack'd, malloc'd or (recently) free'd
==19668==

It was found by Eric Sandeen running the regression suite through
valgrind.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agolibss: add newer libreadline to dlopen path
Eric Sandeen [Tue, 26 Jan 2010 04:19:38 +0000 (22:19 -0600)]
libss: add newer libreadline to dlopen path

Rawhide now has libreadline.so.6 ... add it to the ever-expanding
list of libs to look for.

Unfortunately without commit 06ef971be505678ee462ae1844204ed24f14aedc
this fails in a rather cryptic way.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Fix the check if a file is really a directory to understand extents
Nick Dokos [Fri, 5 Feb 2010 15:35:17 +0000 (10:35 -0500)]
e2fsck: Fix the check if a file is really a directory to understand extents

Pass 1 has a test to see if a special file is really a directory.

Signed-off-by: Nick Dokos <nicholas.dokos@hp.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Add new e2fsck.conf option: broken_system_clock
Theodore Ts'o [Mon, 4 Jan 2010 18:59:04 +0000 (13:59 -0500)]
e2fsck: Add new e2fsck.conf option: broken_system_clock

The broken_system_clock allows the time to be in the future when in
preen mode.  It's useful for people who have, as the name implies,
broken system clocks.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agolibext2fs: Improve flex_bg inode table placement algorithm
Theodore Ts'o [Mon, 30 Nov 2009 17:24:59 +0000 (12:24 -0500)]
libext2fs: Improve flex_bg inode table placement algorithm

When trying to find the best place for the inode table in the last
flex block group, use the true size for the flex_bg's portion of the
inode table instead of the worst case required size of the inode table
fragment if the file system is resized.  This fixes a corner case
where if the size of the filesystem is just big enough that there is
only room for a single block group in the last flex_bg, and that
partial block group is too small for the full portion of the inode
table, the inode table is placed in the very first block group:

Group 64: (Blocks 2097152-2099199) [INODE_UNINIT, ITABLE_ZEROED]
  Checksum 0xd305, unused inodes 8080
  Block bitmap at 2097152 (+0), Inode bitmap at 2097168 (+16)
  Inode table at 8626-9130 (+4292878770)
                 ^^^^^^^^^

Thanks to Vyacheslav Dubeyko for pointing this out.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodebian: Add source lintian overrides
Theodore Ts'o [Mon, 30 Nov 2009 04:33:26 +0000 (23:33 -0500)]
debian: Add source lintian overrides

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodebian: Fix FTBFS problem caused by texi2html changing its output location
Theodore Ts'o [Mon, 30 Nov 2009 01:19:10 +0000 (20:19 -0500)]
debian: Fix FTBFS problem caused by texi2html changing its output location

Unfortunately, texi2html gratuitously changed its behavior of where
its output html files are placed when the -split_chapter is in effect.
(First it was in a subdirectory; then it was in the current directory;
now it's back to putting the output html files in a subdirectory
again.)

Support either way of doing things since the texi2html team seems to
be indecisive...

Addresses-Debian-Bug: #552934

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agotests: Add new test f_holedir2
Theodore Ts'o [Sun, 29 Nov 2009 06:28:14 +0000 (01:28 -0500)]
tests: Add new test f_holedir2

This tests e2fsck's handling of both direct and extent-mapped
directoris containing holes when the i_size is 0.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Try to update on-disk bitmap in e2fsck_get_alloc_block() callback
Theodore Ts'o [Sun, 29 Nov 2009 06:24:06 +0000 (01:24 -0500)]
e2fsck: Try to update on-disk bitmap in e2fsck_get_alloc_block() callback

The e2fsck_get_alloc_block() callback is used so that if the ext2fs
library needs to allocate blocks internally (most notably by the
extents functions), e2fsck's internal block usage map is consulted
since it is the only thing that can be trusted during a large part of
e2fsck's operation.

Change it to update the on-disk bitmap if it is loaded.  This reduces
the number of spurious differences found in pass #5.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Don't rehash directories which can fit in a single directory block
Theodore Ts'o [Sun, 29 Nov 2009 06:22:44 +0000 (01:22 -0500)]
e2fsck: Don't rehash directories which can fit in a single directory block

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Fix block allocation for holes in extent-mapped directories
Theodore Ts'o [Sun, 29 Nov 2009 06:12:12 +0000 (01:12 -0500)]
e2fsck: Fix block allocation for holes in extent-mapped directories

In pass 2, when allocating new blocks for holes in directories, use
ext2fs_set_bmap() instead of ext2fs_block_iterate2() with a helper
function so that the newly allocated directory blocks are correctly
assigned in extent-mapped directories.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agolibext2fs: Fix SET_BMAP bugs in ext2fs_bmap() and ext2fs_bmap2()
Theodore Ts'o [Sun, 29 Nov 2009 05:08:54 +0000 (00:08 -0500)]
libext2fs: Fix SET_BMAP bugs in ext2fs_bmap() and ext2fs_bmap2()

Don't byte-swap the block number when setting i_block[x], since the
write_inode function will take of byte swapping the inode.

The phys_blk parameter contains an input parameter in the SET_BMAP
case, so it must be passed to ext2fs_bmap2() from the legacy function
ext2fs_bmap().

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: detect holes in extent-mapped directories
Theodore Ts'o [Sun, 29 Nov 2009 05:06:10 +0000 (00:06 -0500)]
e2fsck: detect holes in extent-mapped directories

Directories are not allowed to be sparse; the code for scanning
extent-mapped directories was not calling ext2fs_add_dir_block() for
missing directory blocks, so we weren't catching this form of file
system corruption.  Fix this.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agofilefrag: Fix a core dump on sparc32 platforms with 8k file systems
Theodore Ts'o [Sat, 28 Nov 2009 15:28:03 +0000 (10:28 -0500)]
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>
14 years agoe2fsck: Move check to add an index to a directory after fixing i_size
Theodore Ts'o [Sat, 28 Nov 2009 14:44:08 +0000 (09:44 -0500)]
e2fsck: Move check to add an index to a directory after fixing i_size

The check that determines whether an directory needs to be have an
index added to it depends on i_size.  So move it after we have fixed
up i_size so that we reliable will rehash a directory that needs it,
even if its i_size field was originally incorrect.  Otherwise, a
second run of e2fsck would be needed before the directory gets an
index added.

Thanks to Mikulas Patocka for providing a sample file system which
demonstrated this problem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Fix directory with holes even when i_size is wrong
Theodore Ts'o [Sat, 28 Nov 2009 14:35:37 +0000 (09:35 -0500)]
e2fsck: Fix directory with holes even when i_size is wrong

The old method for detecting directories with holes depended on i_size
being correct, even though the correct value of i_size hadn't been
calculated yet.  Hence, a directory inode with holes and an i_size of
0 would require two e2fsck passes to fix completely.

The replacement method for determining whether or not
ext2fs_add_dir_block() should be called is more reliable, and reduces
the size of e2fsck and makes the code more readable as a bonus.

Thanks to Mikulas Patocka for providing a sample file system which
demonstrated this problem.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agopo: update pl.po (from translationproject.org)
Jakub Bogusz [Fri, 27 Nov 2009 20:23:14 +0000 (15:23 -0500)]
po: update pl.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agoconfigure: Work around bug in autoconf 2.64
Theodore Ts'o [Thu, 26 Nov 2009 15:38:04 +0000 (10:38 -0500)]
configure: Work around bug in autoconf 2.64

In autoconf 2.64, if AC_CHECK_LIB is first used in a conditional that
evaluates to false, the helper function ac_fn_c_try_link gets defined
inside that conditional, and then subsequent attempts to use
ac_fn_c_try_link() will blow up.  Work around this by moving an
unconditional use of AC_CHECK_LIB to the beginning of configure.in.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs: open device writable for trim/discard
Eric Sandeen [Tue, 17 Nov 2009 21:49:03 +0000 (15:49 -0600)]
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>
14 years agopo: update vi.po (from translationproject.org)
Clytie Siddall [Wed, 25 Nov 2009 12:00:40 +0000 (07:00 -0500)]
po: update vi.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update id.po (from translationproject.org)
Arif E. Nugroho [Wed, 25 Nov 2009 12:00:39 +0000 (07:00 -0500)]
po: update id.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agopo: update cs.po (from translationproject.org)
Petr Pisar [Wed, 25 Nov 2009 12:00:39 +0000 (07:00 -0500)]
po: update cs.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agoe2fsck: Fix duplicate directory entries for non-indexed directories
Theodore Ts'o [Tue, 17 Nov 2009 02:56:24 +0000 (21:56 -0500)]
e2fsck: Fix duplicate directory entries for non-indexed directories

Duplicate directory entries were not necessarily getting found and
fixed for non-indexed directories, since we were sorting these
directories by inode number, and the duplicate entry code assumed the
entries were getting sorted by name or directory name hash.

Addresses-Sourceforge-Bug: #2862551

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agomke2fs support for BLKDISCARD
Eric Sandeen [Wed, 7 Oct 2009 21:49:17 +0000 (16:49 -0500)]
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>
14 years agolibext2fs: handle <=linux-2.6.19 bug in /proc/swaps
Karel Zak [Tue, 13 Oct 2009 13:52:59 +0000 (13:52 +0000)]
libext2fs: handle <=linux-2.6.19 bug in /proc/swaps

Linux <= 2.6.19 contained a bug in the /proc/swaps code where the
header would not be displayed (the first line).

This issue has been reported by Mike Frysinger for swapon(8).

Signed-off-by: Karel Zak <kzak@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agolibext2fs: don't swap extent-based journal backup
Eric Sandeen [Tue, 10 Nov 2009 20:45:44 +0000 (14:45 -0600)]
libext2fs: don't swap extent-based journal backup

The f_illitable_flexbg test was failing on ppc, because
e2fsck_move_ext3_journal is doing a direct memcmp of i_block with
s_jnl_blocks, and failing.

This is because we don't swap extent data on read from disk; rather
we do it when we access the extents.  However, ext2fs_swap_super
was swapping s_jnl_blocks unconditionally, so these didn't match.

Looks like we need to treat s_jnl_blocks the same as i_block, and
swap it on access, not on read.  Except for the last i_size bit...

Reviewed-by: Andreas Dilger <adilger@sun.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agoresize2fs: exit fix_sb_journal_backup early for external journal
Eric Sandeen [Mon, 9 Nov 2009 20:57:04 +0000 (14:57 -0600)]
resize2fs: exit fix_sb_journal_backup early for external journal

Resizing a filesystem with an external journal fails when it tries
to read inode 0:

# touch testfs
# truncate testfs 1342177280
# touch testjournal
# truncate testjournal 134217728
# mke2fs -O journal_dev testjournal
# losetup /dev/loop0 testjournal
# mkfs.ext4 -J device=/dev/loop0 testfs 127680
# resize2fs testfs
resize2fs 1.41.9 (22-Aug-2009)
Resizing the filesystem on testfs to 327680 (4k) blocks.
resize2fs: Illegal inode number while trying to resize testfs
Please run 'e2fsck -fy testfs' to fix the filesystem
after the aborted resize operation.

I think the right, simple thing to do is just bail out early
for an external journal here, as there are no backup blocks
to update.

Reported-by: mjevans1983@gmail.com
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agolibss: initialize function pointer for readline_shutdown()
Theodore Ts'o [Thu, 12 Nov 2009 22:54:45 +0000 (17:54 -0500)]
libss: initialize function pointer for readline_shutdown()

Clear the function pointer for readline_shutdown() so that if libss is
linking against a readline library which doesn't supply a
readline_shutdown() function, ss_delete_invocation() won't seg fault.

Thanks to Solar Designer <solar@openwall.com> for reporting this
problem to me.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodebian: Fix pre-depends relation for util-linux-ng
Theodore Ts'o [Wed, 28 Oct 2009 07:42:47 +0000 (03:42 -0400)]
debian: Fix pre-depends relation for util-linux-ng

Commit 06807d9 had a typo; we need util-linux-ng >= 2.15~rc1-1, not
<< 2.15~rc1-1!

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodebian: Add pre-depends for util-linux for util-linux-ng builds
Theodore Ts'o [Sat, 24 Oct 2009 19:04:54 +0000 (15:04 -0400)]
debian: Add pre-depends for util-linux for util-linux-ng builds

Addresses-Debian-Bug: #551795

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoUpdate .gitignore
Michael Roth [Sat, 17 Oct 2009 11:26:51 +0000 (13:26 +0200)]
Update .gitignore

Signed-off-by: Michael Roth <mroth@nessie.de>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
14 years agotune2fs.8: Clarify tune2fs's -i option
Theodore Ts'o [Sat, 24 Oct 2009 18:25:39 +0000 (14:25 -0400)]
tune2fs.8: Clarify tune2fs's -i option

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agodumpe2fs: Fix usage message for -o superblock=<num> and -o blocksize=<num>
Theodore Ts'o [Sat, 24 Oct 2009 18:15:55 +0000 (14:15 -0400)]
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>
14 years agoconfigure.in: Fix typo: remove '2' from blkid_probe_get_topology2
Eric Sandeen [Wed, 21 Oct 2009 07:43:02 +0000 (03:43 -0400)]
configure.in: Fix typo: remove '2' from blkid_probe_get_topology2

I think vim <esc>wq turned into <esc>2wq or something; in any case
blkid_probe_get_topology2 is not the right thing to search for.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
14 years agolibext2fs: Fix FEATURE_RO_COMPAT_HUGE_FILE && !HUGE_FILE_FL
Theodore Ts'o [Wed, 21 Oct 2009 05:46:58 +0000 (01:46 -0400)]
libext2fs: Fix FEATURE_RO_COMPAT_HUGE_FILE && !HUGE_FILE_FL

If the RO compat HUGE_FILE feature flag is set, but the inode's
HUGE_FILE_FL flag is not set, we should still pay attention to the
high 32 bits of the i_blocks filed.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Accept superblock times to be fudged by up to 24 hours by default
Theodore Ts'o [Sat, 17 Oct 2009 00:46:45 +0000 (20:46 -0400)]
e2fsck: Accept superblock times to be fudged by up to 24 hours by default

Unfortunately, due to Windows' unfortunate design decision to
configure the hardware clock to tick localtime, instead of the more
proper and less error-prone UTC time, many users end up in the
situation where the system clock is incorrectly set at the time when
e2fsck is run.

Historically this was usually due to some distributions having buggy
init scripts and/or installers that didn't correctly detect this case
and take appropriate countermeasures.  However, it's still possible,
despite the best efforts of init script and installer authors to not
be able to detect this misconfiguration, usually due to a buggy or
misconfigured virtualization manager or the installer not having
access to a network time server during the installation process.  So
by default, we allow the superblock times to be fudged by up to 24
hours.  This can be disabled by setting options.accept_time_fudge to
the boolean value of false in e2fsck.conf.  The old
options.buggy_init_scripts is left for backwards compatibility.

Since we are now accepting the 24 hour time fudge by default, there is
no longer a need to install an Ubuntu-specific e2fsck.conf file, so we
can remove it.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Fix handling of non-zero i_blocks_high field
Theodore Ts'o [Tue, 13 Oct 2009 01:59:37 +0000 (21:59 -0400)]
e2fsck: Fix handling of non-zero i_blocks_high field

E2fsck was not properly printing the i_blocks field in filesystem
corruption messages, and it was not properly checking i_blocks_hi and
i_blocks_lo, either.  This commit fixes this.

Thanks to Felipe Conteras for pointing this out.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
14 years agoe2fsck: Interpret negative blkcount in file system problem reports
Theodore Ts'o [Sun, 4 Oct 2009 22:02:24 +0000 (18:02 -0400)]
e2fsck: Interpret negative blkcount in file system problem reports

Non-expert users get confused when they see messages like this:

Illegal block #-1 (2291965952) in inode 176. CLEARED.

So change it to be something a little bit more understandable:

Illegal indirect block (2291965952) in inode 176.  CLEARED.

Addresses-SourceForge-Bug: #2871782

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>