Package: icedove Version: 31.0-1 Severity: serious --- Please enter the report below this line. --- After migrating my home directory to a 1.8TiB XFS partition, I could not access my emails anymore. Icedove would open, but all extensions from the profile folder were missing. The accounts were listed with the name crossed out in the folder pane - yet the INBOX of my POP3 account (and a single subfolder) would show up (including the mail contained therein)... Rsyncing the profile folder from my backup one time after another and trying various things kept me busy for most of the day... with an AUFS union set up merging the backup root partition (ro) and /tmp (rw), the same profile folder did work! Digging deeper I finally found the right clues to identify the problem cause: xfs uses 64-bit inodes by default for volumes >1TiB (and I think BTRFS does now, too).. Icedove chokes on those.
The failing 32bit-getdents() call in strace: > access("/home/empee584/.icedove/profile/extensions", F_OK) = 0 > stat64("/home/empee584/.icedove/profile/extensions", {st_mode=S_IFDIR|0770, > st_size=4096, ...}) = 0 > openat(AT_FDCWD, "/home/empee584/.icedove/profile/extensions", > O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 24 > getdents(24, 0xab44401c, 32768) = -1 EOVERFLOW (Value too large for defined > data type) > close(24) = 0 > gettimeofday({1407252551, 784289}, NULL) = 0 > gettimeofday({1407252551, 784852}, NULL) = 0 > write(1, "1407252551784\taddons.xpi\tWARN\tCa"..., 10321407252551784 > addons.xpi WARN Can't iterate directory /home/empe e584/.icedov > e/profile/extensions: [Exception... "Component returned failure code: > 0x80004005 (NS_ERROR_FAILURE) [nsIFile.directoryEntries]" nsres ult: > "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: > resource://gre/modules/addons/XPIProvider.jsm :: getDirectoryEntries :: line > 1355" d ata: no] Stack trace: > getDirectoryEntries()@resource://gre/modules/addons/XPIProvider.jsm:1355 < > DirInstallLocation__readAddons()@resource://gre/m > odules/addons/XPIProvider.jsm:6889 < > DirectoryInstallLocation()@resource://gre/modules/addons/XPIProvider.jsm:6828 > < addDirectoryInstallLocation() > @resource://gre/modules/addons/XPIProvider.jsm:1775 < > XPI_startup()@resource://gre/modules/addons/XPIProvider.jsm:1856 < > AMI_callProviders()@resou rce://gre/modules/AddonManager.jsm:869 < > AMI_startup()@resource://gre/modules/AddonManager.jsm:745 < > AMP_startup()@resource://gre/modules/AddonMan ager.jsm:2318 < > AMC_observe()@resource://gre/components/addonManager.js:55 < <file:unknown> > ) = 1032 > ... With the very same profile folder bind-mounted into ~/.icedove on an ext4 (using 32bit-inodes): > access("/home/empee584/.icedove/profile/extensions", F_OK) = 0 > stat64("/home/empee584/.icedove/profile/extensions", {st_mode=S_IFDIR|0770, > st_size=4096, ...}) = 0 > openat(AT_FDCWD, "/home/empee584/.icedove/profile/extensions", > O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 24 > getdents(24, /* 61 entries */, 32768) = 2832 > getdents(24, /* 0 entries */, 32768) = 0 > close(24) = 0 > stat64("/home/empee584/.icedove/profile/extensions/{57068FBE-1506-42ee-AB02-BD183E7999E4}", > {st_mode=S_IFDIR|0770, st_size=4096, ...}) = 0 > stat64("/home/empee584/.icedove/profile/extensions/{57068FBE-1506-42ee-AB02-BD183E7999E4}", > {st_mode=S_IFDIR|0770, st_size=4096, ...}) = 0 > stat64("/home/empee584/.icedove/profile/extensions/{4C9FE6FE-2C83-11DC-90B4-DC8456D89593}", > {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > stat64("/home/empee584/.icedove/profile/extensions/{4C9FE6FE-2C83-11DC-90B4-DC8456D89593}", > {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > stat64("/home/empee584/.icedove/profile/extensions/{CC3C233D-6668-41bc-AAEB-F3A1D1D594F5}", > {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > stat64("/home/empee584/.icedove/profile/extensions/{CC3C233D-6668-41bc-AAEB-F3A1D1D594F5}", > {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > ... chromium seemingly had the problem: > https://code.google.com/p/nativeclient/issues/detail?id=1253 64-bit icedove reportedly does work with xfs/inode64.. > http://oss.sgi.com/archives/xfs/2013-07/msg00152.html Running a 32bit distro with >1TeraByte partitions is probably rather uncommon so I couldn't find a bug reported for this upstream.. just something similar (?) fixed up 4 years ago.. > https://bugzilla.mozilla.org/show_bug.cgi?id=389087 > Bug 389087: nsILocalFileUnix affected by 32bit stat/statvfs/truncate, > therefore does not work with large files > # wget https://raw.githubusercontent.com/gnb/junkcode/master/summarise_stat.pl > # perl summarise_stat.pl /usr/lib/icedove/ > Summary by status > ----------------- > 476 97.3% are scripts (shell, perl, whatever) > 10 2.0% don't use any stat() family calls at all > 2 0.4% use 32-bit stat() family interfaces only [BROKEN] > 1 0.2% use both 32-bit and 64-bit stat() family interfaces [BROKEN] > 3 0.6% BROKEN > List of broken files > -------------------- > These use 32-bit stat() family interfaces only > /usr/lib/icedove//icedove > /usr/lib/icedove//icedove-bin > These use both 32-bit and 64-bit stat() family interfaces > /usr/lib/icedove//libxul.so Sorry, no idea where exactly the relevant file is, I tried to check out the source but it was beyond me. For now bind mounting my profile^^ #Best Regards!MPartap --- System information. --- Architecture: i386 Kernel: Linux 3.14-2-686-pae Debian Release: jessie/sid 99 unstable ftp.uni-stuttgart.de 99 stable http.kali.org 500 unstable qgis.org 500 unstable debian.netcologne.de 500 testing debian.yeasoft.net 500 testing debian.netcologne.de 500 stable dl.google.com 500 stable debs.unvanquished.net 500 stable debian.netcologne.de 500 squeeze packages.devstructure.com 500 sid neurodebian.ovgu.de 500 sid linux.dropbox.com 500 olivia packages.linuxmint.com 500 jessie ppa.quickbuild.pearsoncomputing.net 500 data neurodebian.ovgu.de 100 unstable deb-multimedia.org 100 experimental debian.netcologne.de 1 trusty ppa.launchpad.net 1 raring ppa.launchpad.net 1 raring mirror.netcologne.de 1 quantal mirror.netcologne.de 1 precise ppa.launchpad.net 1 precise mirror.netcologne.de 1 oneiric-getdeb mirrors.dotsrc.org 1 oneiric ppa.launchpad.net 1 natty-getdeb mirrors.dotsrc.org 1 karmic ppa.launchpad.net --- Package information. --- Depends (Version) | Installed ===============================================-+-=================== fontconfig | 2.11.0-5 psmisc | 22.21-2 debianutils (>= 1.16) | 4.4 libasound2 (>= 1.0.16) | 1.0.28-1 libatk1.0-0 (>= 1.12.4) | 2.12.0-1 libc6 (>= 2.15) | 2.19-7 libcairo2 (>= 1.10.2-2~) | 1.12.16-2 libdbus-1-3 (>= 1.0.2) | 1.8.6-1 libdbus-glib-1-2 (>= 0.78) | 0.102-1 libevent-2.0-5 (>= 2.0.10-stable) | 2.0.21-stable-1 libffi6 (>= 3.0.4) | 3.1-2 libfontconfig1 (>= 2.11) | 2.11.0-5 libfreetype6 (>= 2.2.1) | 2.5.2-1 libgcc1 (>= 1:4.1.1) | 1:4.9.1-4 libgdk-pixbuf2.0-0 (>= 2.22.0) | 2.30.7-1 libglib2.0-0 (>= 2.37.3) | 2.40.0-3 libgtk2.0-0 (>= 2.24.0) | 2.24.24-1 libhunspell-1.3-0 (>= 1.3.3) | 1.3.3-2 libnspr4 (>= 2:4.10.3) | 2:4.10.6-1 libnss3 (>= 2:3.16) | 2:3.16.3-1 libpango-1.0-0 (>= 1.14.0) | 1.36.3-1 libpangocairo-1.0-0 (>= 1.14.0) | 1.36.3-1 libpangoft2-1.0-0 (>= 1.14.0) | 1.36.3-1 libpixman-1-0 (>= 0.25.2) | 0.32.6-1 libsqlite3-0 (>= 3.7.7) | 3.8.5-2 libstartup-notification0 (>= 0.8) | 0.12-3 libstdc++6 (>= 4.9) | 4.9.1-4 libvpx1 (>= 1.3.0) | 1.3.0-2 libx11-6 | 2:1.6.2-2 libxext6 | 2:1.3.2-1 libxrender1 | 1:0.9.8-1 libxt6 | 1:1.1.4-1 zlib1g (>= 1:1.2.0) | 1:1.2.8.dfsg-1 Recommends (Version) | Installed ==================================-+-=========== myspell-en-us | 1:3.3.0-4 OR hunspell-dictionary | OR myspell-dictionary | Suggests (Version) | Installed ===============================-+-=========== fonts-lyx | 2.0.6-1 libgssapi-krb5-2 | 1.12.1+dfsg-6 -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org