On Feb 23, 2012, at 6:48 PM, Sami Liedes wrote: > Package: e2fsprogs > Version: 1.42.1-1 > Severity: normal > > When investigating why e2resizing a 100G filesystem to 75G takes > several hours of *CPU* time on a Core i7 computer (in the "Scanning > inode table" phase -- you might get a bug report about that later if > turning optimizations on doesn't help very much), I ran into the > following: > > The e2fsprogs-dbg package doesn't actually seem to include any debug > information, *except* for e2fsck.static, which I'm at loss to explain, > since I don't see any -g switches passed to gcc in my build logs for > any gcc invokation when building e2fsprogs. Moreover, almost > everything in the package is compiled without optimizations.
Yes, the bug was caused by the use of >& which isn't supported by dash. I'll upload a fix for that shortly. My apologies for not notching this before the 1.41.1-1 release. In the meantime you can workaround this by forcing the use of "bash" as your build shell instead of the default of dash. -- Ted > (By the way, the e2fsck.static debug info file is in wrong place, > /usr/lib/debug/e2fsck.static instead of > /usr/lib/debug/sbin/e2fsck.static, which causes it to not be found by > various tools...) > > After figuring out how to un-hide the relevant information cleverly > hidden from build logs by modifying debian/rules to pass > --enable-verbose-makecmds to configure, a few things jump out from the > build logs. You can get the entire build log from [1]; here's just > some excerpts with line numbers. To summarize: > > * I think nothing is being built with -g > > * I think that only the BF version, whatever that is (bootfloppies?), > is being built with -Os; all others are being built without any > optimization flags at all > > * The debug info file for e2fsck.static is installed in a wrong > directory > > [1] http://users.tkk.fi/sliedes/e2fsprogs_1.42.1-1_amd64.build > > Sami > > > ------------------------------------------------------------ > 20 dpkg-source: info: building e2fsprogs in e2fsprogs_1.42.1-1.dsc > 21 debian/rules build > 22 /bin/sh: 1: Syntax error: Bad fd number > 23 /bin/sh: 1: Syntax error: Bad fd number > 24 /bin/sh: 1: Syntax error: Bad fd number > ------------------------------------------------------------ > > That's scary... > > ------------------------------------------------------------ > 29 cd /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/debian/BUILD-STD && > AWK=/usr/bin/awk \ > 30 /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/configure > --disable-e2initrd-helper --enable-elf-shlibs --enable-quota > --infodir=/usr/share/info --enable-verbose-makecmds --disable-fsck > --disable-libblkid --disable-libuuid --disable-uuidd --enable-symlink-install > --with-multiarch=x86_64-linux-gnu \ > 31 CFLAGS=" -D__NO_STRING_INLINES" CPPFLAGS="" LDFLAGS="" > ------------------------------------------------------------ > > Note the curious CFLAGS passed. No -O, no -g. > > ------------------------------------------------------------ > 1104 /bin/sh: 1: Syntax error: Bad fd number > 1105 /bin/sh: 1: Syntax error: Bad fd number > 1106 /bin/sh: 1: Syntax error: Bad fd number > [...] > 1110 cd /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/debian/BUILD-BF && > AWK=/usr/bin/awk \ > 1111 /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/configure > --disable-e2initrd-helper --enable-elf-shlibs --enable-quota > --infodir=/usr/share/info --enable-verbose-makecmds --disable-fsck > --disable-libblkid --disable-libuuid --disable-uuidd --disable-nls > --disable-imager --disable-testio-debug --disable-uuidd --disable-tls > --disable-debugfs \ > 1112 CFLAGS=" -D__NO_STRING_INLINES -Os > -fomit-frame-pointer" CPPFLAGS="" LDFLAGS="" > ------------------------------------------------------------ > > Scary syntax errors again. This time CFLAGS contains -Os, but no -g. > > ------------------------------------------------------------ > 1983 /bin/sh: 1: Syntax error: Bad fd number > 1984 /bin/sh: 1: Syntax error: Bad fd number > [...] > 1988 if type diet > /dev/null 2>&1 ; then \ > 1989 cd > /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/debian/BUILD-STATIC && > AWK=/usr/bin/awk \ > 1990 /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/configure > --disable-nls --disable-imager --disable-uuidd --disable-tls > --enable-verbose-makecmds \ > 1991 --with-diet-libc CFLAGS=" -D__NO_STRING_INLINES"; \ > 1992 else \ > 1993 cd > /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/debian/BUILD-STATIC && > AWK=/usr/bin/awk \ > 1994 > /home/sliedes/scratch/rec/e/e2fsprogs-1.42.1/configure --disable-nls > --disable-imager --disable-uuidd --disable-tls --enable-verbose-makecmds \ > 1995 CFLAGS=" -D__NO_STRING_INLINES"; \ > 1996 fi > ------------------------------------------------------------ > > > -- System Information: > Debian Release: wheezy/sid > APT prefers unstable > APT policy: (500, 'unstable') > Architecture: amd64 (x86_64) > > Kernel: Linux 3.2.4 (SMP w/8 CPU cores) > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) > Shell: /bin/sh linked to /bin/dash > > Versions of packages e2fsprogs depends on: > ii e2fslibs 1.42.1-1 > ii libblkid1 2.20.1-1.2 > ii libc6 2.13-26 > ii libcomerr2 1.42.1-1 > ii libss2 1.42.1-1 > ii libuuid1 2.20.1-1.2 > ii util-linux 2.20.1-1.2 > > e2fsprogs recommends no packages. > > Versions of packages e2fsprogs suggests: > ii e2fsck-static 1.42.1-1 > ii gpart <none> > ii parted 2.3-8 > > -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org