e2freefrag does not work and returns suspicious usage information. Tried traditional volumes as well as volumes on LVM2. Tried device name and mount point as parameter. plex ~ # e2freefrag /dev/hda3 e2freefrag: bad option '▒' usage: e2freefrag [-c chunksize in kb] [-h] device_name plex ~ # e2freefrag /boot e2freefrag: bad option '▒' usage: e2freefrag [-c chunksize in kb] [-h] device_name plex ~ # e2freefrag /dev/rootvg/rootvol e2freefrag: bad option '▒' usage: e2freefrag [-c chunksize in kb] [-h] device_name plex ~ # e2freefrag / e2freefrag: bad option '▒' usage: e2freefrag [-c chunksize in kb] [-h] device_name Reproducible: Always Steps to Reproduce: 1. invoke e2freefrag to determine current fragmentation of an ext3 filesystem Actual Results: e2freefrag: bad option '▒' usage: e2freefrag [-c chunksize in kb] [-h] device_name Expected Results: filesystem fragmentation information as stated in manpage plex ~ # emerge --info Portage 2.1.6.13 (default/linux/powerpc/ppc32/10.0, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.31-gentoo-r6 ppc) ================================================================= System uname: Linux-2.6.31-gentoo-r6-ppc-7447A,_altivec_supported-with-gentoo-1.12.13 Timestamp of tree: Sat, 02 Jan 2010 09:15:01 +0000 app-shells/bash: 4.0_p35 dev-lang/python: 2.6.4 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.63-r1 sys-devel/automake: 1.6.3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="ppc" CBUILD="powerpc-unknown-linux-gnu" CFLAGS="-O2 -mcpu=G4 -mtune=G4 -maltivec -mabi=altivec -fno-strict-aliasing -pipe" CHOST="powerpc-unknown-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -mcpu=G4 -mtune=G4 -maltivec -mabi=altivec -fno-strict-aliasing -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gentoo.mneisen.org/ http://de-mirror.org/distro/gentoo/ ftp://de-mirror.org/distro/gentoo/ " LDFLAGS="-Wl,-O1" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="aac acl altivec apm bash-completion berkdb bzip2 cli cracklib crypt curl cxx daemon dri dvd dvdread encode exif expat fbcon fbcondecor ffmpeg flac fortran gdbm gpm iconv javascript jpeg logging matroska mng modules mp3 mudflap mysql ncurses network nls nptl nptlonly ogg openmp pam pcre perl png ppc pppd python readline reflection remote rtsp session softquota spl ssl stream sysfs syslog taglib tcpd truetype unicode upnp vlc vorbis winbind xmlrpc xorg xvid zlib" ALSA_CARDS="aoa aoa-fabric-layout aoa-onyx aoa-soundbus aoa-soundbus-i2s aoa-tas aoa-toonie powermac usb-audio via82xx" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint mach64 mga nv r128 radeon savage tdfx trident voodoo" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
ppc defaults to unsigned chars which causes the getopt test to be (255 != -1) and then it outputs that. getopt returns an "int", not a "char" or "unsigned char".
Created attachment 215225 [details, diff] posted this patch upstream seems like there's three files that have this problem
Anything new from upstream? I've applied the patch against the latest stable version of e2fsprogs-1.41.12 and it's working. plex e2fsprogs # e2freefrag /dev/mapper/system-rootvol Device: /dev/mapper/system-rootvol Blocksize: 4096 bytes Total blocks: 37728256 Free blocks: 2063475 (5.5%) Min. free extent: 4 KB Max. free extent: 129016 KB Avg. free extent: 196 KB HISTOGRAM OF FREE EXTENT SIZES: Extent Size Range : Free extents Free Blocks Percent 4K... 8K- : 4915 4915 0.24% 8K... 16K- : 7353 18523 0.90% 16K... 32K- : 15198 78509 3.80% 32K... 64K- : 3791 40911 1.98% 64K... 128K- : 2885 64508 3.13% 128K... 256K- : 2797 127032 6.16% 256K... 512K- : 2299 207534 10.06% 512K... 1024K- : 1680 299746 14.53% 1M... 2M- : 831 289049 14.01% 2M... 4M- : 249 173369 8.40% 4M... 8M- : 61 75669 3.67% 8M... 16M- : 15 49981 2.42% 16M... 32M- : 9 59501 2.88% 32M... 64M- : 10 123252 5.97% 64M... 128M- : 16 450976 21.86% Regards, Sebastian
Sorry for the delay, I've applied it into e2fsprogs's git tree in the maint branch.
fix is part of upstream 1.41.14 release