diff --git a/e2fsprogs-1.41.1-e2fsck_fix_automatic_blocksize_detection.patch b/e2fsprogs-1.41.1-e2fsck_fix_automatic_blocksize_detection.patch deleted file mode 100644 index 9390e99..0000000 --- a/e2fsprogs-1.41.1-e2fsck_fix_automatic_blocksize_detection.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 52771ab59145d66b50399a8b953b8181cb2d5b04 -Author: Theodore Ts'o -Date: Tue Sep 9 15:02:24 2008 -0400 - - e2fsck: Fix e2fsck automatic blocksize detetion - - This fixes a regression that was introduced in commit dcc91e10 (it - showed up first in e2fsprogs 1.40.7). Since we weren't freeing the - filesystem handle, ext2fs_open2() was returning EBUSY, and so this - caused a failure in the code that would automatically determine the - filesystem block size when only the superblock number was specified by - the user. - - This was discussed in http://ubuntuforums.org/showthread.php?t=789323, - and Matthias Bannach pointed this out to me, for which I am very - grateful. - - Signed-off-by: "Theodore Ts'o" - -diff --git a/e2fsck/unix.c b/e2fsck/unix.c -index 94938a4..64faebe 100644 ---- a/e2fsck/unix.c -+++ b/e2fsck/unix.c -@@ -971,6 +971,8 @@ restart: - int blocksize; - for (blocksize = EXT2_MIN_BLOCK_SIZE; - blocksize <= EXT2_MAX_BLOCK_SIZE; blocksize *= 2) { -+ if (fs) -+ ext2fs_free(fs); - retval = ext2fs_open2(ctx->filesystem_name, - ctx->io_options, flags, - ctx->superblock, blocksize, diff --git a/e2fsprogs-1.41.1-function_signature_fix.patch b/e2fsprogs-1.41.1-function_signature_fix.patch deleted file mode 100644 index 773fe21..0000000 --- a/e2fsprogs-1.41.1-function_signature_fix.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: e2fsprogs-1.41.1/lib/ext2fs/alloc.c -=================================================================== ---- e2fsprogs-1.41.1.orig/lib/ext2fs/alloc.c 2008-08-28 16:39:14.000000000 +0200 -+++ e2fsprogs-1.41.1/lib/ext2fs/alloc.c 2008-10-28 11:28:34.000000000 +0100 -@@ -29,7 +29,7 @@ - /* - * Check for uninit block bitmaps and deal with them appropriately - */ --static check_block_uninit(ext2_filsys fs, ext2fs_block_bitmap map, -+static void check_block_uninit(ext2_filsys fs, ext2fs_block_bitmap map, - dgrp_t group) - { - int i; -@@ -75,7 +75,7 @@ static check_block_uninit(ext2_filsys fs - /* - * Check for uninit inode bitmaps and deal with them appropriately - */ --static check_inode_uninit(ext2_filsys fs, ext2fs_inode_bitmap map, -+static void check_inode_uninit(ext2_filsys fs, ext2fs_inode_bitmap map, - dgrp_t group) - { - int i; diff --git a/e2fsprogs-1.41.1-link_fix.patch b/e2fsprogs-1.41.1-link_fix.patch deleted file mode 100644 index 15b61b2..0000000 --- a/e2fsprogs-1.41.1-link_fix.patch +++ /dev/null @@ -1,188 +0,0 @@ -commit 55da987650b36a1b910a5968f7d83a190827f8bb -Author: Theodore Ts'o -Date: Tue Sep 2 23:12:38 2008 -0400 - - Improve ELF shared library handling - - Pass in -rpath-link option to the linker so that blkid will build - correctly on systems that don't have libcom_err.so.2 installed. - - Fix debugfs to only try to link with -ldl when building without shared - libraries; with ELF shared libraries, the library which requires -ldl - (libss.so) can required the library dependency itself. - - Fix how we build tune2fs.static so that we use @LDFLAG_STATIC@, via - $(LDFLAGS_STATIC), instead of hard-coding the use of -static. - - Addresses-Sourceforge-Bug: #2088537 - - Signed-off-by: "Theodore Ts'o" - -diff --git a/MCONFIG.in b/MCONFIG.in -index 554b5b5..2f32b92 100644 ---- a/MCONFIG.in -+++ b/MCONFIG.in -@@ -41,7 +41,8 @@ INTL_FLAGS = @INTL_FLAGS@ - ALL_CFLAGS = $(CPPFLAGS) $(DEFS) $(USE_WFLAGS) $(CFLAGS) $(XTRA_CFLAGS) \ - $(INTL_FLAGS) $(LINUX_INCLUDE) - LDFLAGS = @LDFLAGS@ --ALL_LDFLAGS = $(LDFLAGS) -+ALL_LDFLAGS = $(LDFLAGS) @LDFLAG_DYNAMIC@ -+LDFLAGS_STATIC = $(LDFLAGS) @LDFLAG_STATIC@ - BUILD_CFLAGS = @BUILD_CFLAGS@ - BUILD_LDFLAGS = @BUILD_LDFLAGS@ - RM = @RM@ -@@ -69,7 +70,7 @@ MKINSTALLDIRS = @MKINSTALLDIRS@ - # Library definitions - # - LIB = $(top_builddir)/lib --LIBSS = $(LIB)/libss@LIB_EXT@ @DLOPEN_LIB@ -+LIBSS = $(LIB)/libss@LIB_EXT@ @PRIVATE_LIBS_CMT@ @DLOPEN_LIB@ - LIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ - LIBE2P = $(LIB)/libe2p@LIB_EXT@ - LIBEXT2FS = $(LIB)/libext2fs@LIB_EXT@ -diff --git a/configure b/configure -index 5cf203e..0e3bdbe 100755 ---- a/configure -+++ b/configure -@@ -684,6 +684,8 @@ CHECKER_CMT - LIB_EXT - STATIC_LIB_EXT - PROFILED_LIB_EXT -+LDFLAG_DYNAMIC -+PRIVATE_LIBS_CMT - TEST_IO_CMT - DEBUGFS_CMT - IMAGER_CMT -@@ -3842,6 +3844,8 @@ fi - - - E2_PKG_CONFIG_STATIC=--static -+LDFLAG_DYNAMIC= -+PRIVATE_LIBS_CMT= - # Check whether --enable-elf-shlibs was given. - if test "${enable_elf_shlibs+set}" = set; then - enableval=$enable_elf_shlibs; if test "$enableval" = "no" -@@ -3861,6 +3865,8 @@ else - esac - BINARY_TYPE=elfbin - LIB_EXT=.so -+ PRIVATE_LIBS_CMT=# -+ LDFLAG_DYNAMIC='-Wl,-rpath-link,$(top_builddir)/lib' - { echo "$as_me:$LINENO: result: Enabling ELF shared libraries" >&5 - echo "${ECHO_T}Enabling ELF shared libraries" >&6; } - fi -@@ -3962,6 +3968,8 @@ fi - - - -+ -+ - # Check whether --enable-jbd-debug was given. - if test "${enable_jbd_debug+set}" = set; then - enableval=$enable_jbd_debug; if test "$enableval" = "no" -@@ -15902,8 +15910,8 @@ CHECKER_CMT!$CHECKER_CMT$ac_delim - LIB_EXT!$LIB_EXT$ac_delim - STATIC_LIB_EXT!$STATIC_LIB_EXT$ac_delim - PROFILED_LIB_EXT!$PROFILED_LIB_EXT$ac_delim --TEST_IO_CMT!$TEST_IO_CMT$ac_delim --DEBUGFS_CMT!$DEBUGFS_CMT$ac_delim -+LDFLAG_DYNAMIC!$LDFLAG_DYNAMIC$ac_delim -+PRIVATE_LIBS_CMT!$PRIVATE_LIBS_CMT$ac_delim - _ACEOF - - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 73; then -@@ -15977,6 +15985,8 @@ _ACEOF - ac_delim='%!_!# ' - for ac_last_try in false false false false false :; do - cat >conf$$subs.sed <<_ACEOF -+TEST_IO_CMT!$TEST_IO_CMT$ac_delim -+DEBUGFS_CMT!$DEBUGFS_CMT$ac_delim - IMAGER_CMT!$IMAGER_CMT$ac_delim - RESIZER_CMT!$RESIZER_CMT$ac_delim - FSCK_PROG!$FSCK_PROG$ac_delim -@@ -16060,7 +16070,7 @@ LIBOBJS!$LIBOBJS$ac_delim - LTLIBOBJS!$LTLIBOBJS$ac_delim - _ACEOF - -- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 81; then -+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 83; then - break - elif $ac_last_try; then - { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -@@ -16508,4 +16518,3 @@ if test "$no_create" != yes; then - fi - - if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi -- -diff --git a/configure.in b/configure.in -index fcca2ac..7ec6945 100644 ---- a/configure.in -+++ b/configure.in -@@ -211,6 +211,8 @@ dnl - dnl This needs to be before all of the --enable-*-shlibs options - dnl - E2_PKG_CONFIG_STATIC=--static -+LDFLAG_DYNAMIC= -+PRIVATE_LIBS_CMT= - dnl - dnl handle --enable-elf-shlibs - dnl -@@ -232,6 +234,8 @@ else - esac] - BINARY_TYPE=elfbin - LIB_EXT=.so -+ PRIVATE_LIBS_CMT=# -+ LDFLAG_DYNAMIC=['-Wl,-rpath-link,$(top_builddir)/lib'] - AC_MSG_RESULT([Enabling ELF shared libraries]) - fi - , -@@ -322,6 +326,8 @@ dnl - AC_SUBST(LIB_EXT) - AC_SUBST(STATIC_LIB_EXT) - AC_SUBST(PROFILED_LIB_EXT) -+AC_SUBST(LDFLAG_DYNAMIC) -+AC_SUBST(PRIVATE_LIBS_CMT) - dnl - dnl handle --enable-jbd-debug - dnl -@@ -921,4 +927,3 @@ for i in MCONFIG Makefile e2fsprogs.spec \ - done - AC_OUTPUT($outlist) - if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi -- -diff --git a/e2fsck/Makefile.in b/e2fsck/Makefile.in -index 7006b62..fe0fab5 100644 ---- a/e2fsck/Makefile.in -+++ b/e2fsck/Makefile.in -@@ -8,7 +8,6 @@ VPATH = @srcdir@ - top_builddir = .. - my_dir = e2fsck - INSTALL = @INSTALL@ --LDFLAG_STATIC = @LDFLAG_STATIC@ - - @MCONFIG@ - -@@ -119,8 +118,7 @@ e2fsck: $(OBJS) $(DEPLIBS) - - e2fsck.static: $(OBJS) $(STATIC_DEPLIBS) - @echo " LD $@" -- @$(LD) $(ALL_LDFLAGS) $(LDFLAG_STATIC) -o e2fsck.static $(OBJS) \ -- $(STATIC_LIBS) -+ @$(LD) $(LDFLAGS_STATIC) -o e2fsck.static $(OBJS) $(STATIC_LIBS) - - e2fsck.profiled: $(PROFILED_OBJS) $(PROFILED_DEPLIBS) - @echo " LD $@" -diff --git a/misc/Makefile.in b/misc/Makefile.in -index a81df8a..c208571 100644 ---- a/misc/Makefile.in -+++ b/misc/Makefile.in -@@ -108,7 +108,7 @@ tune2fs: $(TUNE2FS_OBJS) $(DEPLIBS) $(DEPLIBS_E2P) $(DEPLIBS_BLKID) - - tune2fs.static: $(TUNE2FS_OBJS) $(STATIC_DEPLIBS) $(STATIC_LIBE2P) $(DEPSTATIC_LIBBLKID) - @echo " LD $@" -- @$(CC) $(ALL_LDFLAGS) -static -o tune2fs.static $(TUNE2FS_OBJS) \ -+ @$(CC) $(LDFLAGS_STATIC) -o tune2fs.static $(TUNE2FS_OBJS) \ - $(STATIC_LIBS) $(STATIC_LIBBLKID) $(STATIC_LIBUUID) \ - $(STATIC_LIBE2P) $(LIBINTL) - diff --git a/e2fsprogs-1.41.1.tar.bz2 b/e2fsprogs-1.41.1.tar.bz2 deleted file mode 100644 index 6e3f99a..0000000 --- a/e2fsprogs-1.41.1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cd873d5653ef8d9e0c9003feb93980ec54b358521dfc65163b84e8e3ebfe84fb -size 3856795 diff --git a/e2fsprogs-1.41.4.tar.bz2 b/e2fsprogs-1.41.4.tar.bz2 new file mode 100644 index 0000000..b51ee52 --- /dev/null +++ b/e2fsprogs-1.41.4.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0366ef68b35ff094f5e6bce3b715d2291639732e384c25446833efe1db7c2f16 +size 3882283 diff --git a/e2fsprogs-libvolume_id-support.patch b/e2fsprogs-libvolume_id-support.patch index dad219a..82093e6 100644 --- a/e2fsprogs-libvolume_id-support.patch +++ b/e2fsprogs-libvolume_id-support.patch @@ -1,7 +1,7 @@ -diff --git a/misc/Makefile.in b/misc/Makefile.in -index be362e9..80af1b3 100644 ---- a/misc/Makefile.in -+++ b/misc/Makefile.in +Index: e2fsprogs-1.41.4/misc/Makefile.in +=================================================================== +--- e2fsprogs-1.41.4.orig/misc/Makefile.in 2008-11-15 18:33:33.000000000 +0100 ++++ e2fsprogs-1.41.4/misc/Makefile.in 2009-02-03 12:45:22.000000000 +0100 @@ -40,7 +40,7 @@ UUIDD_OBJS= uuidd.o DUMPE2FS_OBJS= dumpe2fs.o BADBLOCKS_OBJS= badblocks.o @@ -10,18 +10,18 @@ index be362e9..80af1b3 100644 +FSCK_OBJS= fsck.o base_device.o ismounted.o fsck_volume_id.o BLKID_OBJS= blkid.o FILEFRAG_OBJS= filefrag.o + E2UNDO_OBJS= e2undo.o +@@ -81,6 +81,9 @@ PROFILED_DEPLIBS= $(PROFILED_LIBEXT2FS) + STATIC_LIBS= $(STATIC_LIBEXT2FS) $(STATIC_LIBCOM_ERR) + STATIC_DEPLIBS= $(STATIC_LIBEXT2FS) $(STATIC_LIBCOM_ERR) -@@ -62,6 +62,9 @@ STATIC_DEPLIBS= $(STATIC_LIBEXT2FS) $(STATIC_LIBCOM_ERR) - LIBS_BLKID= $(LIBBLKID) $(LIBUUID) - DEPLIBS_BLKID= $(DEPLIBBLKID) $(DEPLIBUUID) - -+LIBS_VOLID= -lvolume_id -+DEPLIBS_VOLID= ++LIBVOLID= -lvolume_id ++DEPLIBVOLID= + LIBS_E2P= $(LIBE2P) $(LIBCOM_ERR) DEPLIBS_E2P= $(LIBE2P) $(LIBCOM_ERR) -@@ -117,10 +120,6 @@ base_device: base_device.c +@@ -184,10 +187,6 @@ base_device: base_device.c @$(CC) $(ALL_CFLAGS) $(ALL_LDFLAGS) $(srcdir)/base_device.c \ -DDEBUG -o base_device @@ -32,22 +32,29 @@ index be362e9..80af1b3 100644 mklost+found: $(MKLPF_OBJS) @echo " LD $@" @$(CC) $(ALL_LDFLAGS) -o mklost+found $(MKLPF_OBJS) $(LIBINTL) -@@ -157,9 +156,9 @@ dumpe2fs: $(DUMPE2FS_OBJS) $(DEPLIBS) $(DEPLIBS_E2P) $(DEPLIBUUID) - @$(CC) $(ALL_LDFLAGS) -o dumpe2fs $(DUMPE2FS_OBJS) $(LIBS) \ - $(LIBS_E2P) $(LIBUUID) $(LIBINTL) +@@ -250,14 +249,14 @@ dumpe2fs.profiled: $(PROFILED_DUMPE2FS_O + $(PROFILED_DUMPE2FS_OBJS) $(PROFILED_LIBS) \ + $(PROFILED_LIBE2P) $(PROFILED_LIBUUID) $(LIBINTL) --fsck: $(FSCK_OBJS) $(DEBLIBS_BLKID) -+fsck: $(FSCK_OBJS) $(DEBLIBS_VOLID) +-fsck: $(FSCK_OBJS) $(DEPLIBBLKID) ++fsck: $(FSCK_OBJS) $(DEPLIBVOLID) @echo " LD $@" -- @$(CC) $(ALL_LDFLAGS) -o fsck $(FSCK_OBJS) $(LIBS_BLKID) $(LIBINTL) -+ @$(CC) $(ALL_LDFLAGS) -o fsck $(FSCK_OBJS) $(LIBS_VOLID) $(LIBINTL) +- @$(CC) $(ALL_LDFLAGS) -o fsck $(FSCK_OBJS) $(LIBBLKID) $(LIBINTL) ++ @$(CC) $(ALL_LDFLAGS) -o fsck $(FSCK_OBJS) $(LIBVOLID) $(LIBINTL) + +-fsck.profiled: $(PROFILED_FSCK_OBJS) $(PROFILED_DEPLIBBLKID) ++fsck.profiled: $(PROFILED_FSCK_OBJS) $(DEPLIBVOLID) + @echo " LD $@" + @$(CC) $(ALL_LDFLAGS) -g -pg -o fsck.profiled $(PROFILED_FSCK_OBJS) \ +- $(PROFILED_LIBBLKID) $(LIBINTL) ++ $(LIBVOLID) $(LIBINTL) badblocks: $(BADBLOCKS_OBJS) $(DEPLIBS) @echo " LD $@" -diff --git a/misc/base_device.c b/misc/base_device.c -index 6237d0e..c3261fc 100644 ---- a/misc/base_device.c -+++ b/misc/base_device.c +Index: e2fsprogs-1.41.4/misc/base_device.c +=================================================================== +--- e2fsprogs-1.41.4.orig/misc/base_device.c 2009-02-03 12:24:08.000000000 +0100 ++++ e2fsprogs-1.41.4/misc/base_device.c 2009-02-03 12:24:48.000000000 +0100 @@ -27,6 +27,8 @@ #endif #include @@ -57,11 +64,11 @@ index 6237d0e..c3261fc 100644 #include "fsck.h" -diff --git a/misc/fsck.c b/misc/fsck.c -index 5cf1a1c..ad1d7a9 100644 ---- a/misc/fsck.c -+++ b/misc/fsck.c -@@ -59,7 +59,6 @@ +Index: e2fsprogs-1.41.4/misc/fsck.c +=================================================================== +--- e2fsprogs-1.41.4.orig/misc/fsck.c 2009-02-03 12:24:08.000000000 +0100 ++++ e2fsprogs-1.41.4/misc/fsck.c 2009-02-03 12:24:48.000000000 +0100 +@@ -61,7 +61,6 @@ #include "../version.h" #include "nls-enable.h" #include "fsck.h" @@ -69,7 +76,7 @@ index 5cf1a1c..ad1d7a9 100644 #ifndef _PATH_MNTTAB #define _PATH_MNTTAB "/etc/fstab" -@@ -118,7 +117,6 @@ struct fs_info *filesys_info = NULL, *filesys_last = NULL; +@@ -122,7 +121,6 @@ struct fs_info *filesys_info = NULL, *fi struct fsck_instance *instance_list; const char *fsck_prefix_path = "/sbin:/sbin/fs.d:/sbin/fs:/etc/fs:/etc"; char *fsck_path = 0; @@ -77,7 +84,7 @@ index 5cf1a1c..ad1d7a9 100644 static char *string_copy(const char *s) { -@@ -296,7 +294,7 @@ static int parse_fstab_line(char *line, struct fs_info **ret_fs) +@@ -298,7 +296,7 @@ static int parse_fstab_line(char *line, parse_escape(freq); parse_escape(passno); @@ -86,8 +93,8 @@ index 5cf1a1c..ad1d7a9 100644 if (dev) device = dev; -@@ -321,7 +319,7 @@ static void interpret_type(struct fs_info *fs) - +@@ -323,7 +321,7 @@ static void interpret_type(struct fs_inf + if (strcmp(fs->type, "auto") != 0) return; - t = blkid_get_tag_value(cache, "TYPE", fs->device); @@ -95,7 +102,7 @@ index 5cf1a1c..ad1d7a9 100644 if (t) { free(fs->type); fs->type = t; -@@ -1104,7 +1102,7 @@ static void PRS(int argc, char *argv[]) +@@ -1120,7 +1118,7 @@ static void PRS(int argc, char *argv[]) progname); exit(EXIT_ERROR); } @@ -104,7 +111,7 @@ index 5cf1a1c..ad1d7a9 100644 if (!dev && strchr(arg, '=')) { /* * Check to see if we failed because -@@ -1250,7 +1248,7 @@ int main(int argc, char *argv[]) +@@ -1266,7 +1264,7 @@ int main(int argc, char *argv[]) bindtextdomain(NLS_CAT_NAME, LOCALEDIR); textdomain(NLS_CAT_NAME); #endif @@ -113,7 +120,7 @@ index 5cf1a1c..ad1d7a9 100644 PRS(argc, argv); if (!notitle) -@@ -1319,6 +1317,6 @@ int main(int argc, char *argv[]) +@@ -1337,6 +1335,6 @@ int main(int argc, char *argv[]) } status |= wait_many(FLAG_WAIT_ALL); free(fsck_path); @@ -121,11 +128,11 @@ index 5cf1a1c..ad1d7a9 100644 + fsck_put_cache(); return status; } -diff --git a/misc/fsck.h b/misc/fsck.h -index 55cb525..242b21e 100644 ---- a/misc/fsck.h -+++ b/misc/fsck.h -@@ -66,5 +66,10 @@ struct fsck_instance { +Index: e2fsprogs-1.41.4/misc/fsck.h +=================================================================== +--- e2fsprogs-1.41.4.orig/misc/fsck.h 2009-02-03 12:24:08.000000000 +0100 ++++ e2fsprogs-1.41.4/misc/fsck.h 2009-02-03 12:24:48.000000000 +0100 +@@ -66,6 +66,11 @@ struct fsck_instance { struct fsck_instance *next; }; @@ -134,13 +141,13 @@ index 55cb525..242b21e 100644 +extern char *fsck_get_devname(const char *device); +extern char *fsck_get_fstype(const char *device); + - extern char *base_device(const char *device); - extern const char *identify_fs(const char *fs_name, const char *fs_types); -diff --git a/misc/fsck_volume_id.c b/misc/fsck_volume_id.c -new file mode 100644 -index 0000000..9456394 ---- /dev/null -+++ b/misc/fsck_volume_id.c + extern dev_t base_devt(const char *device); + extern int match_device(const char *dev1, const char *dev2); + +Index: e2fsprogs-1.41.4/misc/fsck_volume_id.c +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ e2fsprogs-1.41.4/misc/fsck_volume_id.c 2009-02-03 12:24:48.000000000 +0100 @@ -0,0 +1,132 @@ +/* + * Wrapper for libvolume_id diff --git a/e2fsprogs-no_cmd_hiding.patch b/e2fsprogs-no_cmd_hiding.patch index 8744293..7973722 100644 --- a/e2fsprogs-no_cmd_hiding.patch +++ b/e2fsprogs-no_cmd_hiding.patch @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:96e022f5ff6812872f54a7b5bbf8ade253989d633b81639926bb32fb69816904 -size 42772 +oid sha256:7c72de539b23710bd85095a7141fa909836fb9ef747e27cea18f7fb109bb127b +size 46572 diff --git a/e2fsprogs.changes b/e2fsprogs.changes index 64cd3ee..bde3ca6 100644 --- a/e2fsprogs.changes +++ b/e2fsprogs.changes @@ -1,3 +1,95 @@ +------------------------------------------------------------------- +Tue Feb 3 15:14:47 CET 2009 - mkoenig@suse.de + +- update to version 1.41.4: + debugfs: + * enhance the "ncheck" command + * enhance "hash" command + * fix a potential memory leak + * fix the usage message for logdump command + * fix ncheck command so that it prints all of the names of + hardlinks in the same directory + * e2fsprogs 1.41 broke debugfs's logdump command for normal + ext3/4 filesystems with 32-bit block numbers, when the headers + for 64-bit block numbers was added. This regression has been fixed + * ncheck command has been fixed to avoid printing garbage + characters at the end of file names + e2fsck: + * don't accidentally print the translation file's + header when asking the user a custom question + * print the correct inode number for uinit_bg related problems + * will now offer to clear the test_fs flag if the ext4 filesystem + is available on linux + * fix a bug where in preen mode, if there are disk I/O errors + while trying to close a filesystem can lead to infinite loops + * no longer abort an fsck run if block group has an errant + INODE_UNINIT flag + * distinguish between fragmented directories and fragmented + files in verbose mode statistics and in the fragcheck report + * fix a bug which caused it double count non-contiguous + extent-based inodes + * e2fsck will leave some slack space when repacking directories + to allow room for a few directory entries to be added without + causing leaf nodes to be split right away + * fix a bug which caused e2fsck to crash when it comes across a + corrupted interior node in an extent tree + * e2fsck problem descriptions involving the journal are no longer + referred to as "ext3" problems, since ext4 filesystems also have + journals + * fix a long-standing bug in e2fsck which would cause it to crash + when replying journals for filesystems with block sizes greater + than 8k + badblocks: + * support for normal files which are greater than 2GB + * display the time and percentage complete when in verbose mode + resize2fs: + * fix a potential memory corruption problem + * fix a bug in resize2fs where passing in a bogus new size of + 0 blocks will cause resize2fs to drop into an infinite loop + * fix resize2fs for ext4 filesystems + tune2fs: + * now updates the block group checksums when changing the UUID + to avoid causing e2fsck to complain vociferously at the next reboot + * inode size resizing algorithms have been fixed so it is not + vastly inefficient for moderate-to-large filesystems + * fix inode resizing algorithm so it will not corrupt filesystems + laid out for RAID filesystems; in addition, tune2fs will refuse + to change the inode size for filesystems that have the flex_bg + feature enabled + dumpe2fs: + * fix bug which caused dumpe2fs to abort with an error if run on a + filesystem that contained an external journal + mke2fs: + * new option -U, which allows the user to specify the UUID that + should be used for the new filesystem + * treat devices that are exactly 16TB as if they were 16TB minus + one block + blkid: + * fix a file descriptor leak in libblkid + * correctly detect whether the ext4 and ext4dev filesystems + are available, so that the ext4dev->ext4 fallback code works + correctly + * fixed a bug which could sometimes cause blkid to return an + exit value of zero for a non-existent device + * recognize ext3 filesystems that have the test_fs flag + set as ext3 filesystems + * recognize btrfs filesystems and swap devices currently used + by user-level software suspend + libext2fs: + * add a check in the Unix I/O functions in libext2fs so that + when a device is opened read/write, return an error if the + device is read-only using the BLKROGET ioctl +- the libcom_err patches for bnc#66534 have been removed because + git commit d7f45af802330a0e1450afa05185d3722e77a76c + should fix the problem +- remove patches + e2fsprogs-1.41.1-e2fsck_fix_automatic_blocksize_detection.patch + e2fsprogs-1.41.1-function_signature_fix.patch + e2fsprogs-1.41.1-link_fix.patch + libcom_err-disable_test.patch + libcom_err-mutex.patch + libcom_err-no-init_error_table.patch + ------------------------------------------------------------------- Tue Jan 13 12:34:56 CET 2009 - olh@suse.de diff --git a/e2fsprogs.spec b/e2fsprogs.spec index c5b763d..b48797f 100644 --- a/e2fsprogs.spec +++ b/e2fsprogs.spec @@ -1,5 +1,5 @@ # -# spec file for package e2fsprogs (Version 1.41.1) +# spec file for package e2fsprogs (Version 1.41.4) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -31,8 +31,8 @@ AutoReqProv: on Obsoletes: e2fsprogs-64bit %endif # -Version: 1.41.1 -Release: 13 +Version: 1.41.4 +Release: 1 Summary: Utilities for the Second Extended File System Url: http://e2fsprogs.sourceforge.net Source: %{name}-%{version}.tar.bz2 @@ -47,15 +47,8 @@ Patch1: e2fsprogs-mdraid.patch Patch2: e2fsprogs-base_devt.patch Patch3: e2fsprogs-libvolume_id-support.patch Patch5: e2fsprogs-1.40.4-uuidd_pid_path.patch -Patch6: e2fsprogs-1.41.1-link_fix.patch Patch7: e2fsprogs-1.41.1-splash_support.patch -Patch8: e2fsprogs-1.41.1-e2fsck_fix_automatic_blocksize_detection.patch -Patch9: e2fsprogs-1.41.1-function_signature_fix.patch # libcom_err patches -# 66534 - [SL 10.0] et_list handling of krb5 and libcom_err.so.2 conflict -Patch31: libcom_err-no-init_error_table.patch -Patch32: libcom_err-disable_test.patch -Patch33: libcom_err-mutex.patch Patch34: libcom_err-compile_et_permissions.patch # Do not suppress make commands Patch99: e2fsprogs-no_cmd_hiding.patch @@ -268,14 +261,8 @@ Authors: %patch2 -p1 %patch3 -p1 %patch5 -p1 -%patch6 -p1 %patch7 -p1 -%patch8 -p1 -%patch9 -p1 # libcom_err patches -%patch31 -p1 -%patch32 -p1 -%patch33 -p1 %patch34 -p1 %if %{no_command_hiding} %patch99 -p1 @@ -319,7 +306,6 @@ rm -f $RPM_BUILD_ROOT/usr/share/man/man8/fsck.ext4.8 %check make check -make gcc-wall %clean rm -rf $RPM_BUILD_ROOT @@ -493,6 +479,95 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man3/com_err.3.gz %changelog +* Tue Feb 03 2009 mkoenig@suse.de +- update to version 1.41.4: + debugfs: + * enhance the "ncheck" command + * enhance "hash" command + * fix a potential memory leak + * fix the usage message for logdump command + * fix ncheck command so that it prints all of the names of + hardlinks in the same directory + * e2fsprogs 1.41 broke debugfs's logdump command for normal + ext3/4 filesystems with 32-bit block numbers, when the headers + for 64-bit block numbers was added. This regression has been fixed + * ncheck command has been fixed to avoid printing garbage + characters at the end of file names + e2fsck: + * don't accidentally print the translation file's + header when asking the user a custom question + * print the correct inode number for uinit_bg related problems + * will now offer to clear the test_fs flag if the ext4 filesystem + is available on linux + * fix a bug where in preen mode, if there are disk I/O errors + while trying to close a filesystem can lead to infinite loops + * no longer abort an fsck run if block group has an errant + INODE_UNINIT flag + * distinguish between fragmented directories and fragmented + files in verbose mode statistics and in the fragcheck report + * fix a bug which caused it double count non-contiguous + extent-based inodes + * e2fsck will leave some slack space when repacking directories + to allow room for a few directory entries to be added without + causing leaf nodes to be split right away + * fix a bug which caused e2fsck to crash when it comes across a + corrupted interior node in an extent tree + * e2fsck problem descriptions involving the journal are no longer + referred to as "ext3" problems, since ext4 filesystems also have + journals + * fix a long-standing bug in e2fsck which would cause it to crash + when replying journals for filesystems with block sizes greater + than 8k + badblocks: + * support for normal files which are greater than 2GB + * display the time and percentage complete when in verbose mode + resize2fs: + * fix a potential memory corruption problem + * fix a bug in resize2fs where passing in a bogus new size of + 0 blocks will cause resize2fs to drop into an infinite loop + * fix resize2fs for ext4 filesystems + tune2fs: + * now updates the block group checksums when changing the UUID + to avoid causing e2fsck to complain vociferously at the next reboot + * inode size resizing algorithms have been fixed so it is not + vastly inefficient for moderate-to-large filesystems + * fix inode resizing algorithm so it will not corrupt filesystems + laid out for RAID filesystems; in addition, tune2fs will refuse + to change the inode size for filesystems that have the flex_bg + feature enabled + dumpe2fs: + * fix bug which caused dumpe2fs to abort with an error if run on a + filesystem that contained an external journal + mke2fs: + * new option -U, which allows the user to specify the UUID that + should be used for the new filesystem + * treat devices that are exactly 16TB as if they were 16TB minus + one block + blkid: + * fix a file descriptor leak in libblkid + * correctly detect whether the ext4 and ext4dev filesystems + are available, so that the ext4dev->ext4 fallback code works + correctly + * fixed a bug which could sometimes cause blkid to return an + exit value of zero for a non-existent device + * recognize ext3 filesystems that have the test_fs flag + set as ext3 filesystems + * recognize btrfs filesystems and swap devices currently used + by user-level software suspend + libext2fs: + * add a check in the Unix I/O functions in libext2fs so that + when a device is opened read/write, return an error if the + device is read-only using the BLKROGET ioctl +- the libcom_err patches for bnc#66534 have been removed because + git commit d7f45af802330a0e1450afa05185d3722e77a76c + should fix the problem +- remove patches + e2fsprogs-1.41.1-e2fsck_fix_automatic_blocksize_detection.patch + e2fsprogs-1.41.1-function_signature_fix.patch + e2fsprogs-1.41.1-link_fix.patch + libcom_err-disable_test.patch + libcom_err-mutex.patch + libcom_err-no-init_error_table.patch * Tue Jan 13 2009 olh@suse.de - obsolete old -XXbit packages (bnc#437293) * Thu Dec 04 2008 mkoenig@suse.de diff --git a/libcom_err-disable_test.patch b/libcom_err-disable_test.patch deleted file mode 100644 index f39bd0e..0000000 --- a/libcom_err-disable_test.patch +++ /dev/null @@ -1,31 +0,0 @@ -Index: e2fsprogs-1.40.5/lib/et/Makefile.in -=================================================================== ---- e2fsprogs-1.40.5.orig/lib/et/Makefile.in -+++ e2fsprogs-1.40.5/lib/et/Makefile.in -@@ -110,16 +110,16 @@ uninstall:: - $(RM) -rf $(DESTDIR)$(includedir)/et $(DESTDIR)$(datadir)/et - - check:: compile_et -- for i in $(srcdir)/test_cases/*.et ; do \ -- t=`basename $$i | sed -e 's/.et//'`; \ -- ./compile_et --build-tree $$i ; \ -- diff -c $(srcdir)/test_cases/$$t.c $$t.c > $$t.failed; \ -- if [ $$? -ne 0 ]; then echo Test case $$t failed; exit 1 ; fi ; \ -- diff -c $(srcdir)/test_cases/$$t.h $$t.h >> $$t.failed; \ -- if [ $$? -ne 0 ]; then echo Test case $$t failed; exit 1 ; fi ; \ -- $(RM) -f $$t.c $$t.h $$t.failed; \ -- echo "Test case $$t succeeded" ; \ -- done -+# for i in $(srcdir)/test_cases/*.et ; do \ -+# t=`basename $$i | sed -e 's/.et//'`; \ -+# ./compile_et --build-tree $$i ; \ -+# diff -c $(srcdir)/test_cases/$$t.c $$t.c > $$t.failed; \ -+# if [ $$? -ne 0 ]; then echo Test case $$t failed; exit 1 ; fi ; \ -+# diff -c $(srcdir)/test_cases/$$t.h $$t.h >> $$t.failed; \ -+# if [ $$? -ne 0 ]; then echo Test case $$t failed; exit 1 ; fi ; \ -+# $(RM) -f $$t.c $$t.h $$t.failed; \ -+# echo "Test case $$t succeeded" ; \ -+# done - - clean:: - $(RM) -f compile_et libcom_err.a libcom_err_p.a com_err.info diff --git a/libcom_err-mutex.patch b/libcom_err-mutex.patch deleted file mode 100644 index 909a7c3..0000000 --- a/libcom_err-mutex.patch +++ /dev/null @@ -1,190 +0,0 @@ -Index: e2fsprogs-1.40.4/lib/et/com_err.pc.in -=================================================================== ---- e2fsprogs-1.40.4.orig/lib/et/com_err.pc.in -+++ e2fsprogs-1.40.4/lib/et/com_err.pc.in -@@ -7,5 +7,5 @@ Name: com_err - Description: Common error description library - Version: @E2FSPROGS_VERSION@ - Requires: --Cflags: -I${includedir} --Libs: -L${libdir} -lcom_err -+Cflags: -I${includedir} -pthread -+Libs: -L${libdir} -lcom_err -pthread -Index: e2fsprogs-1.40.4/lib/et/error_message.c -=================================================================== ---- e2fsprogs-1.40.4.orig/lib/et/error_message.c -+++ e2fsprogs-1.40.4/lib/et/error_message.c -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - #ifdef HAVE_SYS_PRCTL_H - #include - #else -@@ -41,6 +42,17 @@ - struct et_list * _et_list = (struct et_list *) NULL; - struct et_list * _et_dynamic_list = (struct et_list *) NULL; - -+static pthread_mutex_t _et_lock = PTHREAD_MUTEX_INITIALIZER; -+ -+int et_list_lock() -+{ -+ return pthread_mutex_lock(&_et_lock); -+} -+ -+int et_list_unlock() -+{ -+ return pthread_mutex_unlock(&_et_lock); -+} - - const char * error_message (errcode_t code) - { -@@ -66,22 +78,32 @@ const char * error_message (errcode_t co - goto oops; - #endif - } -+ et_list_lock(); - for (et = _et_list; et; et = et->next) { - if ((et->table->base & 0xffffffL) == (table_num & 0xffffffL)) { - /* This is the right table */ -- if (et->table->n_msgs <= offset) -- goto oops; -- return(et->table->msgs[offset]); -+ if (et->table->n_msgs <= offset) { -+ break; -+ } else { -+ const char *msg = et->table->msgs[offset]; -+ et_list_unlock(); -+ return(msg); -+ } - } - } - for (et = _et_dynamic_list; et; et = et->next) { - if ((et->table->base & 0xffffffL) == (table_num & 0xffffffL)) { - /* This is the right table */ -- if (et->table->n_msgs <= offset) -- goto oops; -- return(et->table->msgs[offset]); -+ if (et->table->n_msgs <= offset) { -+ break; -+ } else { -+ const char *msg = et->table->msgs[offset]; -+ et_list_unlock(); -+ return(msg); -+ } - } - } -+ et_list_unlock(); - oops: - return "Unknown code"; - } -@@ -150,6 +172,9 @@ errcode_t add_error_table(const struct e - if (!(el = (struct et_list *) malloc(sizeof(struct et_list)))) - return ENOMEM; - -+ if( 0 != et_list_lock()) -+ return errno; -+ - el->table = et; - el->next = _et_dynamic_list; - _et_dynamic_list = el; -@@ -160,6 +185,7 @@ errcode_t add_error_table(const struct e - error_table_name(et->base), - (const void *) et); - -+ et_list_unlock(); - return 0; - } - -@@ -168,9 +194,13 @@ errcode_t add_error_table(const struct e - */ - errcode_t remove_error_table(const struct error_table * et) - { -- struct et_list *el = _et_dynamic_list; -+ struct et_list *el; - struct et_list *el2 = 0; - -+ if( 0 != et_list_lock()) -+ return ENOENT; -+ -+ el = _et_dynamic_list; - init_debug(); - while (el) { - if (el->table->base == et->base) { -@@ -184,6 +214,7 @@ errcode_t remove_error_table(const struc - "remove_error_table: %s (0x%p)\n", - error_table_name(et->base), - (const void *) et); -+ et_list_unlock(); - return 0; - } - el2 = el; -@@ -193,6 +224,7 @@ errcode_t remove_error_table(const struc - fprintf(debug_f, "remove_error_table FAILED: %s (0x%p)\n", - error_table_name(et->base), - (const void *) et); -+ et_list_unlock(); - return ENOENT; - } - -Index: e2fsprogs-1.40.4/lib/et/error_table.h -=================================================================== ---- e2fsprogs-1.40.4.orig/lib/et/error_table.h -+++ e2fsprogs-1.40.4/lib/et/error_table.h -@@ -19,6 +19,8 @@ struct et_list { - const struct error_table *table; - }; - extern struct et_list * _et_list; -+extern int et_list_lock(void); -+extern int et_list_unlock(void); - - #define ERRCODE_RANGE 8 /* # of bits to shift table number */ - #define BITS_PER_CHAR 6 /* # bits to shift per character in name */ -Index: e2fsprogs-1.40.4/lib/et/et_c.awk -=================================================================== ---- e2fsprogs-1.40.4.orig/lib/et/et_c.awk -+++ e2fsprogs-1.40.4/lib/et/et_c.awk -@@ -225,6 +225,8 @@ END { - print " const struct error_table * table;" > outfile - print "};" > outfile - print "extern struct et_list *_et_list;" > outfile -+ print "extern int et_list_lock();" > outfile -+ print "extern int et_list_unlock();" > outfile - print "" > outfile - if (tab_base_high == 0) { - print "const struct error_table et_" table_name "_error_table = { text, " \ -@@ -242,7 +244,22 @@ END { - print "void initialize_" table_name "_error_table(void);" > outfile - print "" > outfile - print "void initialize_" table_name "_error_table(void) {" > outfile -- print " initialize_" table_name "_error_table_r(&_et_list);" > outfile -+ print " if(0 == et_list_lock()) {" > outfile -+ print " if ( !link.table) {" > outfile -+ print " struct et_list *el = _et_list;" > outfile -+ print " while (el) {" > outfile -+ print " if (el->table->base == et_" table_name "_error_table.base) {" > outfile -+ print " et_list_unlock();" > outfile -+ print " return;" > outfile -+ print " }" > outfile -+ print " el = el->next;" > outfile -+ print " }" > outfile -+ print " link.next = _et_list;" > outfile -+ print " link.table = &et_" table_name "_error_table;" > outfile -+ print " _et_list = &link;" > outfile -+ print " }" > outfile -+ print " et_list_unlock();" > outfile -+ print " }" > outfile - print "}" > outfile - print "" > outfile - print "/* For Heimdal compatibility */" > outfile -@@ -255,9 +272,6 @@ END { - print " return;" > outfile - print " et = malloc(sizeof(struct et_list));" > outfile - print " if (et == 0) {" > outfile -- print " if (!link.table)" > outfile -- print " et = &link;" > outfile -- print " else" > outfile - print " return;" > outfile - print " }" > outfile - print " et->table = &et_" table_name "_error_table;" > outfile diff --git a/libcom_err-no-init_error_table.patch b/libcom_err-no-init_error_table.patch deleted file mode 100644 index 8c29c63..0000000 --- a/libcom_err-no-init_error_table.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- e2fsprogs-1.39/lib/et/com_err.h -+++ e2fsprogs-1.39/lib/et/com_err.h -@@ -41,7 +41,10 @@ - (const char *, long, const char *, va_list); - extern void (*reset_com_err_hook (void)) (const char *, long, - const char *, va_list); -+#if 0 - extern int init_error_table(const char * const *msgs, long base, int count); -+#endif -+#define init_error_table(...) PLEASE_DO_NOT_USE_init_error_table_FUNCTION - - extern errcode_t add_error_table(const struct error_table * et); - extern errcode_t remove_error_table(const struct error_table * et); ---- e2fsprogs-1.39/lib/et/init_et.c -+++ e2fsprogs-1.39/lib/et/init_et.c -@@ -16,6 +16,7 @@ - * express or implied warranty. - */ - -+#if 0 - #include - #include - #ifdef HAVE_STDLIB_H -@@ -50,3 +51,5 @@ - _et_dynamic_list = &new_et->etl; - return 0; - } -+#endif -+