OSDN Git Service

android-x86/external-e2fsprogs.git
10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Wed, 14 May 2014 12:50:13 +0000 (05:50 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Tue, 13 May 2014 12:49:54 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Mon, 12 May 2014 12:49:34 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Sun, 11 May 2014 12:49:34 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Sat, 10 May 2014 12:49:56 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Thu, 8 May 2014 12:49:54 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Wed, 7 May 2014 16:10:49 +0000 (09:10 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Wed, 7 May 2014 12:49:57 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Tue, 6 May 2014 12:49:54 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Mon, 5 May 2014 12:49:41 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Sun, 4 May 2014 12:49:40 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Sat, 3 May 2014 12:50:29 +0000 (05:50 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Thu, 1 May 2014 12:49:49 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Wed, 30 Apr 2014 12:50:00 +0000 (05:50 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Tue, 29 Apr 2014 12:49:55 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Mon, 28 Apr 2014 12:49:30 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Sun, 27 Apr 2014 12:49:33 +0000 (05:49 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Sat, 26 Apr 2014 12:50:25 +0000 (05:50 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agomerge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe
The Android Automerger [Thu, 24 Apr 2014 12:50:52 +0000 (05:50 -0700)]
merge in master-release history after reset to 2079d768f79f636223d89b988a30209adf8dddbe

10 years agoam 78374f04: Merge "llseek: setup the correct seek for ext2fs_llseek"
JP Abgrall [Mon, 24 Mar 2014 22:36:52 +0000 (22:36 +0000)]
am 78374f04: Merge "llseek: setup the correct seek for ext2fs_llseek"

* commit '78374f0476e3af9060362028e99085e1c200514b':
  llseek: setup the correct seek for ext2fs_llseek

10 years agoMerge "llseek: setup the correct seek for ext2fs_llseek"
JP Abgrall [Mon, 24 Mar 2014 17:33:48 +0000 (17:33 +0000)]
Merge "llseek: setup the correct seek for ext2fs_llseek"

10 years agomerge in master-release history after reset to master
The Android Automerger [Sat, 22 Mar 2014 12:51:18 +0000 (05:51 -0700)]
merge in master-release history after reset to master

10 years agoe2fsck: remove unneeded type redefinitions
JP Abgrall [Thu, 6 Mar 2014 03:42:19 +0000 (19:42 -0800)]
e2fsck: remove unneeded type redefinitions

Or else ...:
  In file included from e2fsck/pass5.c:21:
  e2fsck/problem.h:13: error: redefinition of typedef ‘__u32’
  lib/ext2fs/ext2_types.h:56: error: previous declaration of ‘__u32’ was here
  e2fsck/problem.h:14: error: redefinition of typedef ‘errcode_t’
  lib/et/com_err.h:22: error: previous declaration of ‘errcode_t’ was here

Change-Id: I0a1ff3b2455bfbaf1e3d0940034a7dbcc231a0f7
Signed-off-by: JP Abgrall <jpa@google.com>
10 years agollseek: setup the correct seek for ext2fs_llseek
JP Abgrall [Thu, 20 Mar 2014 02:31:35 +0000 (19:31 -0700)]
llseek: setup the correct seek for ext2fs_llseek

After
  http://git.kernel.org/cgit/fs/ext2/e2fsprogs.git/commit/lib/ext2fs/llseek.c?id=274d46e1d35af423d0292d63c4d0ad7a03be82ba

with
  __linux__
  defined(HAVE_LSEEK64) && defined(HAVE_LSEEK64_PROTOTYPE)
  SIZEOF_OFF_T >= SIZEOF_LONG_LONG
it leads to ext2fs_llseek() doing a "return lseek(fd, offset, origin);"
Which  fails for offsets > 32bit.

Also, with
  __linux__
  !(defined(HAVE_LSEEK64) && defined(HAVE_LSEEK64_PROTOTYPE))
  defined(HAVE_LLSEEK)
  SIZEOF_OFF_T == SIZEOF_LONG_LONG
my_llseek is not defined at all. And there is no need to define
llseek as lseek, as llseek is never used.
Luckily ext2fs_llseek() then does "return lseek(...);"
It would seem that my_llseek should be used in both places.

Bug: 13340735
Change-Id: Ie7330300c9c1ca103eaaef97536dcf10adbbba02
Signed-off-by: JP Abgrall <jpa@google.com>
10 years agollseek: setup the correct seek for ext2fs_llseek
JP Abgrall [Thu, 20 Mar 2014 02:31:35 +0000 (19:31 -0700)]
llseek: setup the correct seek for ext2fs_llseek

After
  http://git.kernel.org/cgit/fs/ext2/e2fsprogs.git/commit/lib/ext2fs/llseek.c?id=274d46e1d35af423d0292d63c4d0ad7a03be82ba

with
  __linux__
  defined(HAVE_LSEEK64) && defined(HAVE_LSEEK64_PROTOTYPE)
  SIZEOF_OFF_T >= SIZEOF_LONG_LONG
it leads to ext2fs_llseek() doing a "return lseek(fd, offset, origin);"
Which  fails for offsets > 32bit.

Also, with
  __linux__
  !(defined(HAVE_LSEEK64) && defined(HAVE_LSEEK64_PROTOTYPE))
  defined(HAVE_LLSEEK)
  SIZEOF_OFF_T == SIZEOF_LONG_LONG
my_llseek is not defined at all. And there is no need to define
llseek as lseek, as llseek is never used.
Luckily ext2fs_llseek() then does "return lseek(...);"
It would seem that my_llseek should be used in both places.

Bug: 13340735
Change-Id: Ie7330300c9c1ca103eaaef97536dcf10adbbba02
Signed-off-by: JP Abgrall <jpa@google.com>
10 years agoSwitch back to 1.42.9 now that there is a fix
JP Abgrall [Thu, 20 Mar 2014 02:08:39 +0000 (19:08 -0700)]
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.

10 years agoam 9d965309: (-s ours) Merge "e2fsck: remove unneeded type redefinitions"
JP Abgrall [Fri, 7 Mar 2014 03:02:15 +0000 (03:02 +0000)]
am 9d965309: (-s ours) Merge "e2fsck: remove unneeded type redefinitions"

* commit '9d9653095dd3ecb9f86e9347a14f7203f52f3f3e':
  e2fsck: remove unneeded type redefinitions

10 years agoRevert changes that moved from 1.41.14 to 1.42.9
JP Abgrall [Thu, 6 Mar 2014 21:50:20 +0000 (13:50 -0800)]
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>
10 years agoRevert changes that moved from 1.41.14 to 1.42.9
JP Abgrall [Thu, 6 Mar 2014 21:50:20 +0000 (13:50 -0800)]
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>
10 years agoMerge "e2fsck: remove unneeded type redefinitions"
JP Abgrall [Thu, 6 Mar 2014 18:18:49 +0000 (18:18 +0000)]
Merge "e2fsck: remove unneeded type redefinitions"

10 years agoe2fsck: remove unneeded type redefinitions
JP Abgrall [Thu, 6 Mar 2014 03:42:19 +0000 (19:42 -0800)]
e2fsck: remove unneeded type redefinitions

Or else ...:
  In file included from e2fsck/pass5.c:21:
  e2fsck/problem.h:13: error: redefinition of typedef ‘__u32’
  lib/ext2fs/ext2_types.h:56: error: previous declaration of ‘__u32’ was here
  e2fsck/problem.h:14: error: redefinition of typedef ‘errcode_t’
  lib/et/com_err.h:22: error: previous declaration of ‘errcode_t’ was here

Change-Id: I0a1ff3b2455bfbaf1e3d0940034a7dbcc231a0f7
Signed-off-by: JP Abgrall <jpa@google.com>
10 years agoam 166bc333: Merge "e2fsck: Don\'t use e2fsck_global_ctx unless HAVE_SIGNAL_H"
JP Abgrall [Tue, 4 Mar 2014 23:51:32 +0000 (23:51 +0000)]
am 166bc333: Merge "e2fsck: Don\'t use e2fsck_global_ctx unless HAVE_SIGNAL_H"

* commit '166bc3339ab0914cf1c2e316e2143ccfefec2ae4':
  e2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H

10 years agoe2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H
JP Abgrall [Tue, 4 Mar 2014 21:24:25 +0000 (13:24 -0800)]
e2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H

Program received signal SIGSEGV, Segmentation fault.
0x56577382 in e2fsck_set_bitmap_type (fs=0x5658c2b8, default_type=2, profile_name=0x56580e12 "default", old_type=0x0) at external/e2fsprogs/e2fsck/util.c:797
797             profile_get_uint(e2fsck_global_ctx->profile, "bitmaps",

e2fsck_global_ctx is only ever initialized in unix.c PRS()
if HAVE_SIGNAL_H is defined.

Change-Id: Ic93fb8d9114054f7bf8512c622b2fb9b2ae60584
Signed-off-by: JP Abgrall <jpa@google.com>
10 years agoMerge "e2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H"
JP Abgrall [Tue, 4 Mar 2014 21:31:04 +0000 (21:31 +0000)]
Merge "e2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H"

10 years agoe2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H
JP Abgrall [Tue, 4 Mar 2014 21:24:25 +0000 (13:24 -0800)]
e2fsck: Don't use e2fsck_global_ctx unless HAVE_SIGNAL_H

Program received signal SIGSEGV, Segmentation fault.
0x56577382 in e2fsck_set_bitmap_type (fs=0x5658c2b8, default_type=2, profile_name=0x56580e12 "default", old_type=0x0) at external/e2fsprogs/e2fsck/util.c:797
797             profile_get_uint(e2fsck_global_ctx->profile, "bitmaps",

e2fsck_global_ctx is only ever initialized in unix.c PRS()
if HAVE_SIGNAL_H is defined.

Change-Id: Ic93fb8d9114054f7bf8512c622b2fb9b2ae60584
Signed-off-by: JP Abgrall <jpa@google.com>
10 years agoMerge remote-tracking branch 'linaro/linaro-1.42.9' into aosp_master
JP Abgrall [Tue, 4 Mar 2014 02:44:03 +0000 (18:44 -0800)]
Merge remote-tracking branch 'linaro/linaro-1.42.9' into aosp_master

* linaro/linaro-1.42.9: (4262 commits)
  Add missing libext2_quota linkage and resource_track.c
  Fix blkid time diff bug, build binary.
  Add files that would normally be generated by the e2fsprogs build system
  Re-add Android makefiles from AOSP master
  Update release notes, etc., for final 1.42.9 release
  po: update vi.po (from translationproject.org)
  po: update tr.po (from translationproject.org)
  po: update sv.po (from translationproject.org)
  po: update pl.po (from translationproject.org)
  po: update nl.po (from translationproject.org)
  po: update fr.po (from translationproject.org)
  po: update de.po (from translationproject.org)
  po: update cs.po (from translationproject.org)
  po: update ca.po (from translationproject.org)
  e2freefrag: avoid integer overflow when reporting free space statistics
  debugfs: document the lsdel command in the man page
  mke2fs: clarify documentation about bigalloc in the man page
  debian: fix cross build support
  mke2fs: clarify the description of the -I option in the man page
  debian: update debian-policy conormance to 3.9.5
  ...

10 years agoPrepare for upstream 1.42.9
JP Abgrall [Tue, 4 Mar 2014 02:43:55 +0000 (18:43 -0800)]
Prepare for upstream 1.42.9

Remove everything.

Change-Id: I6ef4c9bc888a245744d7ec4d193857b357472392
Signed-off-by: JP Abgrall <jpa@google.com>
10 years agoAdd missing libext2_quota linkage and resource_track.c
Bernhard Rosenkraenzer [Wed, 19 Feb 2014 10:46:32 +0000 (11:46 +0100)]
Add missing libext2_quota linkage and resource_track.c

Change-Id: If3983d882f97c5b4cfaf2a177d5d84c68c66fad3
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
10 years agoFix blkid time diff bug, build binary.
Jeff Sharkey [Wed, 16 Oct 2013 22:42:12 +0000 (15:42 -0700)]
Fix blkid time diff bug, build binary.

When calculating time diffs, use difftime() instead of risking
integer overflow.  Also build a "blkid" binary.

Bug: 11175082
Change-Id: I23521f45204574bb32f152926401c2cbad93175b

10 years agoAdd files that would normally be generated by the e2fsprogs build system
Bernhard Rosenkränzer [Tue, 31 Dec 2013 13:43:20 +0000 (14:43 +0100)]
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>
10 years agoRe-add Android makefiles from AOSP master
Bernhard Rosenkränzer [Tue, 31 Dec 2013 13:13:18 +0000 (14:13 +0100)]
Re-add Android makefiles from AOSP master

Change-Id: I6c6dbe11baa395442f4cf845ad39801f1c426129
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
10 years agoUpdate release notes, etc., for final 1.42.9 release
Theodore Ts'o [Sun, 29 Dec 2013 03:39:41 +0000 (22:39 -0500)]
Update release notes, etc., for final 1.42.9 release

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agopo: update vi.po (from translationproject.org)
Trần Ngọc Quân [Sun, 29 Dec 2013 03:34:45 +0000 (22:34 -0500)]
po: update vi.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update tr.po (from translationproject.org)
Volkan Gezer [Sun, 29 Dec 2013 03:34:45 +0000 (22:34 -0500)]
po: update tr.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update sv.po (from translationproject.org)
Göran Uddeborg [Sun, 29 Dec 2013 03:34:45 +0000 (22:34 -0500)]
po: update sv.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update pl.po (from translationproject.org)
Jakub Bogusz [Sun, 29 Dec 2013 03:34:45 +0000 (22:34 -0500)]
po: update pl.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update nl.po (from translationproject.org)
Benno Schulenberg [Sun, 29 Dec 2013 03:34:45 +0000 (22:34 -0500)]
po: update nl.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update fr.po (from translationproject.org)
Samuel Thibault [Sun, 29 Dec 2013 03:34:45 +0000 (22:34 -0500)]
po: update fr.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update de.po (from translationproject.org)
Philipp Thomas [Sun, 29 Dec 2013 03:34:44 +0000 (22:34 -0500)]
po: update de.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update cs.po (from translationproject.org)
Petr Pisar [Sun, 29 Dec 2013 03:34:44 +0000 (22:34 -0500)]
po: update cs.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agopo: update ca.po (from translationproject.org)
Walter Garcia-Fontes [Sun, 29 Dec 2013 03:34:44 +0000 (22:34 -0500)]
po: update ca.po (from translationproject.org)

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
10 years agoe2freefrag: avoid integer overflow when reporting free space statistics
Theodore Ts'o [Sun, 29 Dec 2013 03:25:11 +0000 (22:25 -0500)]
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>
10 years agodebugfs: document the lsdel command in the man page
Theodore Ts'o [Sun, 29 Dec 2013 03:15:59 +0000 (22:15 -0500)]
debugfs: document the lsdel command in the man page

Addresses-Debian-Bug: #731329

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agomke2fs: clarify documentation about bigalloc in the man page
Theodore Ts'o [Sat, 28 Dec 2013 22:50:54 +0000 (17:50 -0500)]
mke2fs: clarify documentation about bigalloc in the man page

Addresses-Debian-Bug: #669730

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agodebian: fix cross build support
Theodore Ts'o [Sat, 28 Dec 2013 22:21:17 +0000 (17:21 -0500)]
debian: fix cross build support

We need to explicitly specify the $DEB_BUILD_HOST when querying for
the version of the libblkid1 package.

Addresses-Debian-Bug: #721365

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agomke2fs: clarify the description of the -I option in the man page
Theodore Ts'o [Sat, 28 Dec 2013 22:06:38 +0000 (17:06 -0500)]
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>
10 years agodebian: update debian-policy conormance to 3.9.5
Theodore Ts'o [Sat, 28 Dec 2013 21:28:56 +0000 (16:28 -0500)]
debian: update debian-policy conormance to 3.9.5

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agogen-tarball: ignore all of the build* directories
Theodore Ts'o [Sat, 28 Dec 2013 20:57:29 +0000 (15:57 -0500)]
gen-tarball: ignore all of the build* directories

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoUse makeinfo --html instead of texi2html
Theodore Ts'o [Sat, 28 Dec 2013 20:40:56 +0000 (15:40 -0500)]
Use makeinfo --html instead of texi2html

The texi2html utility from the texi2html ceased being developed
upstream in 2011, and upstream has declared it superseded by the
makeinfo utility from the texinfo package.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoe2image: Clarify e2image's usage message
Theodore Ts'o [Fri, 27 Dec 2013 06:08:25 +0000 (01:08 -0500)]
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>
10 years agoe2image: write progress information to stderr
Theodore Ts'o [Fri, 27 Dec 2013 06:04:32 +0000 (01:04 -0500)]
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>
10 years agoe2image: clean up progress reporting
Theodore Ts'o [Fri, 27 Dec 2013 04:45:17 +0000 (23:45 -0500)]
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>
10 years agotests: fix stray newline printed when running r_min_itable
Theodore Ts'o [Thu, 26 Dec 2013 05:37:09 +0000 (00:37 -0500)]
tests: fix stray newline printed when running r_min_itable

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agodumpe2fs: don't try to print the journal info when using image files
Theodore Ts'o [Thu, 26 Dec 2013 03:53:00 +0000 (22:53 -0500)]
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>
10 years agoe2image: make sure all strings are marked for internationalization
Theodore Ts'o [Thu, 26 Dec 2013 03:52:23 +0000 (22:52 -0500)]
e2image: make sure all strings are marked for internationalization

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoe2image: add -n option to show what blocks would have been written
Theodore Ts'o [Thu, 26 Dec 2013 01:22:03 +0000 (20:22 -0500)]
e2image: add -n option to show what blocks would have been written

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoe2image: add -c option to optimize file system copying for flash devices
Theodore Ts'o [Wed, 25 Dec 2013 21:46:39 +0000 (16:46 -0500)]
e2image: add -c option to optimize file system copying for flash devices

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoe2image: only skip writing zero blocks when writing to a new file
Theodore Ts'o [Wed, 25 Dec 2013 21:33:52 +0000 (16:33 -0500)]
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>
10 years agoe2image: clean up gcc -Wall and sparse nits
Theodore Ts'o [Wed, 25 Dec 2013 19:26:44 +0000 (14:26 -0500)]
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>
10 years agoe2image: refactor calls to ext2fs_llseek()
Theodore Ts'o [Wed, 25 Dec 2013 19:20:22 +0000 (14:20 -0500)]
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>
10 years agoe2image: handle SIGINT safely
Phillip Susi [Wed, 25 Dec 2013 04:41:34 +0000 (23:41 -0500)]
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>
10 years agoe2image: add progress indicator
Phillip Susi [Tue, 8 Oct 2013 15:56:31 +0000 (11:56 -0400)]
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>
10 years agoe2image: perform in-place move
Phillip Susi [Mon, 16 Dec 2013 16:33:19 +0000 (11:33 -0500)]
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>
10 years agoe2image: add offset switches
Phillip Susi [Mon, 16 Dec 2013 16:32:39 +0000 (11:32 -0500)]
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>
10 years agolibext2fs: checksum bg descriptors larger than 64 bytes
Theodore Ts'o [Wed, 25 Dec 2013 04:19:07 +0000 (23:19 -0500)]
libext2fs: checksum bg descriptors larger than 64 bytes

Currently the ext4 block group descriptor is 64 bytes.  In case we
need to support larger block group descriptors in the future, teach
ext2fs_group_desc_csum() to checksum parts of the block group
descriptors that libext2fs doesn't yet understand.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agotests: use the in-tree binaries in the test f_extent_oobounds
Theodore Ts'o [Wed, 25 Dec 2013 03:44:14 +0000 (22:44 -0500)]
tests: use the in-tree binaries in the test f_extent_oobounds

Fix the f_extent_oobounds test so that it uses binaries built in the
tree, instead of the binaries in the system PATH (which might not
exist in a chroot environment) when creating the test image.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agodebugfs: fix extent header in do_write for big-endian machines
Theodore Ts'o [Wed, 25 Dec 2013 03:40:01 +0000 (22:40 -0500)]
debugfs: fix extent header in do_write for big-endian machines

Commit a17e9f30 set up the extent header for a new file.
Unfortunately it didn't correctly handle byte swapping; fix this so
the regression tests pass on PowerPC systems.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: Eric Sandeen <sandeen@redhat.com>
10 years agoAdd ext4 man page and update and clean up the other man pages
Theodore Ts'o [Tue, 24 Dec 2013 20:15:31 +0000 (15:15 -0500)]
Add ext4 man page and update and clean up the other man pages

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agodebugfs: silence build warning and remove incorrect error message
Eric Whitney [Tue, 24 Dec 2013 16:04:42 +0000 (11:04 -0500)]
debugfs: silence build warning and remove incorrect error message

Commit fe56188b07 modified the code used to check the block number
argument to the command line -s switch, adding a call to com_err().
This causes a compile time warning because the third argument to
com_err() isn't a string.  Also, when the block number argument is
bad it outputs an incorrect error message - "Operation not permitted".

Fix these minor problems by removing the call to com_err().  Other
code provides enough error reporting information in this case.

Signed-off-by: Eric Whitney <enwlinux@gmail.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoe2fsck: fix printf conversion specs in ea_refcount.c
Eric Whitney [Tue, 24 Dec 2013 06:58:09 +0000 (01:58 -0500)]
e2fsck: fix printf conversion specs in ea_refcount.c

Commit 130e961a6fb9d38997c83c6397cf9ddb5ed2491f changed the type
used to represent block numbers in ea_refcount.c from blk_t to blk64_t
to add support for 64 bit extended attribute refcounting.  We also
need to adjust printf conversion specs that now don't match their new
blk64_t arguments.  This will silence compiler warnings seen when
"make check" is run and will avoid truncation of printed values.

Signed-off-by: Eric Whitney <enwlinux@gmail.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agomke2fs: further updates for mke2fs(8) man page
Andreas Dilger [Mon, 23 Dec 2013 21:09:49 +0000 (16:09 -0500)]
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>
10 years agodebugfs, e2fsck: fix s_desc_size handling
Andreas Dilger [Mon, 23 Dec 2013 21:04:46 +0000 (16:04 -0500)]
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>
10 years agoe2fsck: verify s_desc_size is power-of-two value
Andreas Dilger [Mon, 23 Dec 2013 21:03:41 +0000 (16:03 -0500)]
e2fsck: verify s_desc_size is power-of-two value

Add a LOG2_CHECK mode for check_super_value() so that it is easy
to verify values that are supposed to be power-of-two values
(s_desc_size and s_inode_size so far).  In ext2fs_check_desc()
also check for a power-of-two s_desc_size.

Print out s_desc_size in debugfs "stats" and dumpe2fs output, if
it is non-zero.

It turns out that the s_desc_size validation in check_super_block()
is not currently used by e2fsck, because the group descriptors are
verified earlier by ext2fs_check_desc(), and even without an
explicit check of s_desc_size the group descriptors fail to align
correctly on disk.  It makes sense to keep the check_super_block()
regardless, in case the code changes at some point in the future.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agotests: delete temporary resize test files
Andreas Dilger [Mon, 23 Dec 2013 21:01:51 +0000 (16:01 -0500)]
tests: delete temporary resize test files

Since commit 5ad07acad if $TMP cannot hold large test filesystems
for resize testing the resize_test creates temporary test files
in the local working directory.  Since it overrides TMPFILE locally
the calling program does not delete the generated file correctly.

Delete the large $TMPFILE within resize_test if it passes, but leave
it for debugging if the test failed.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoe2fsck: read only parameter incorrectly compared
Johan Erlandsson [Thu, 19 Dec 2013 18:55:51 +0000 (13:55 -0500)]
e2fsck: read only parameter incorrectly compared

Don't check for lost+found in read only mode.

[Note: this patch was originally made against 1.41.14 version of
e2fsprogs found as part of the AOSP (Android Open Source Program)
tree.  My Signed-off-by relies on the fact that the original patch
author would have had to have filed a contribution agreement with Open
Handset Alliance before this commit before this commit was allowed
into the AOSP tree. -- tytso]

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoMerge "e2fsck: read only parameter incorrectly compared"
Elliott Hughes [Thu, 19 Dec 2013 20:04:46 +0000 (20:04 +0000)]
Merge "e2fsck: read only parameter incorrectly compared"

10 years agoe2fsck: read only parameter incorrectly compared
Johan Erlandsson [Thu, 2 Aug 2012 12:16:00 +0000 (14:16 +0200)]
e2fsck: read only parameter incorrectly compared

Don't check for lost+found in read only mode.

Change-Id: Ib5861f615b60cf5d0836af73539dd53c70638de5

10 years agoClean up sparse warnings
Theodore Ts'o [Mon, 16 Dec 2013 23:56:36 +0000 (18:56 -0500)]
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>
10 years agoe2fsprogs: mke2fs manpage updates
Uri Corin [Mon, 16 Dec 2013 05:53:35 +0000 (00:53 -0500)]
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>
10 years agomke2fs: disallow creating FS on a loop mounted file with no option
Kazuya Mio [Mon, 16 Dec 2013 05:48:12 +0000 (00:48 -0500)]
mke2fs: disallow creating FS on a loop mounted file with no option

When /etc/mtab is a symlink of /proc/mounts, mke2fs without -FF option
can create a filesystem on the image file that is mounted.
According to mke2fs man page, we should specify -FF option in this case.

This patch protects filesystem from unintended mke2fs caused by human error.

How to reproduce:
  # mke2fs -t ext4 -Fq fs.img
  # mount -o loop fs.img /mnt/mp1
  # mke2fs -t ext4 -Fq fs.img && echo "mke2fs success"
  mke2fs success

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agomke2fs: fix force option to create filesystem on mounted device
Kazuya Mio [Mon, 16 Dec 2013 05:42:22 +0000 (00:42 -0500)]
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>
10 years agoe2fsck: try implied cluster allocation when expanding a dir
Darrick J. Wong [Mon, 16 Dec 2013 04:54:07 +0000 (23:54 -0500)]
e2fsck: try implied cluster allocation when expanding a dir

When we're expanding a directory, check to see if we're doing an
implied cluster allocation; if so, we don't need to allocate a new
block, and we certainly don't need to update the summary counts.

Reported-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>
10 years agoe2fsck: print cluster ranges when encountering bitmap errors
Darrick J. Wong [Mon, 16 Dec 2013 04:53:32 +0000 (23:53 -0500)]
e2fsck: print cluster ranges when encountering bitmap errors

If pass5 finds bitmap errors in a range of clusters, don't print each
cluster number individually when we could print only the start and end
cluster number.  e2fsck already does this for the non-bigalloc case.

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>
10 years agoe2fsck: only release clusters when shortening a directory during a rehash
Darrick J. Wong [Wed, 11 Dec 2013 01:23:12 +0000 (17:23 -0800)]
e2fsck: only release clusters when shortening a directory during a rehash

When the rehash process is running on a bigalloc filesystem, it
compresses all the directory entries and hash structures into the
beginning of the directory file and then uses block_iterate3() to free
the blocks off the end of the file.  It seems to call
ext2fs_block_alloc_stats2() for every block in a cluster, which is
unfortunate because this function allocates and frees entire clusters
(and updates the summary counts accordingly).  In this case e2fsck
writes out incorrect summary counts.

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>
10 years agolibext2fs: don't update the summary counts when doing implied cluster allocation
Darrick J. Wong [Mon, 16 Dec 2013 04:50:52 +0000 (23:50 -0500)]
libext2fs: don't update the summary counts when doing implied cluster allocation

When we're appending a block to a directory file or the journal file,
and the new block is part of a cluster that has already been allocated
to the file (implied cluster allocation), don't update the bitmap or
the summary counts because that was performed when the cluster was
allocated.

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>
10 years agolibext2fs: only punch complete clusters
Darrick J. Wong [Mon, 16 Dec 2013 04:50:03 +0000 (23:50 -0500)]
libext2fs: only punch complete clusters

When bigalloc is enabled, using ext2fs_block_alloc_stats2() to free
any block in a cluster has the effect of freeing the entire cluster.
This is problematic if a caller instructs us to punch, say, blocks
12-15 of a 16-block cluster, because blocks 0-11 now point to a "free"
cluster.

The naive way to solve this problem is to see if any of the other
blocks in this logical cluster map to a physical cluster.  If so, then
we know that the cluster is still in use and it mustn't be freed.
Otherwise, we are punching the last mapped block in this cluster, so
we can free the cluster.

The implementation given only does the rigorous checks for the partial
clusters at the beginning and end of the punching range.

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>
10 years agoext2fs,blkid: delete unused LIST_HEAD() macro
Andreas Dilger [Mon, 16 Dec 2013 04:26:38 +0000 (23:26 -0500)]
ext2fs,blkid: delete unused LIST_HEAD() macro

The LIST_HEAD() macro conflicts with the <sys/queue.h> declaration
of the same name.  Delete the unused LIST_HEAD() macro from the
libext2fs and libblkid headers to avoid compiler warnings.  It can
be replaced by INIT_LIST_HEAD() or LIST_HEAD_INIT() if needed.

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agoext2fs: quiet compiler warnings
Andreas Dilger [Mon, 16 Dec 2013 04:26:25 +0000 (23:26 -0500)]
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>
10 years agodebugfs: clean up debugfs man page and help text
Andreas Dilger [Mon, 16 Dec 2013 03:12:43 +0000 (22:12 -0500)]
debugfs: clean up debugfs man page and help text

Clean up the formatting of the debugfs(8) man page:
- add command aliases to the main descriptions
- use bold for sub-commands and italics for their arguments
- remove trailing spaces
- add "dirty" sub-command
- clarify "block_dump" and "zap_block" sub-commands

Signed-off-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
10 years agobuild: quiet LLVM non-literal string format warning
Andreas Dilger [Mon, 16 Dec 2013 03:11:40 +0000 (22:11 -0500)]
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>