This turned out to be a tricky one. It is definitely an eCryptfs bug. The upstream fix that I thought would solve this issue ended up not being the right fix. Instead, it turned out to be the following two commits:
bd4f0fe8bb7c73c738e1e11bc90d6e2cf9c6e20e fed8859b3ab94274c986cbdf7d27130e0545f02c However, I didn't write those patches as bug fixes. I was simply cleaning out some crufty looking code. It turned out to be buggy code, too. Creating a file, extending that file, the file's pages being reclaimed, finally followed by reading the file is what triggers this. In the case of this bug report, the system being under memory pressure is what forced the file's pages out of the page cache. The easiest way to reproduce the bug is with the following shell commands: $ touch foo && truncate -s 4096 foo && sync && echo 1 | sudo tee /proc/sys/vm/drop_caches && hexdump -C foo hexdump should show a file filled with zeroes, but it doesn't. Data corruption is a possibility if the file is written to before the eCryptfs directory is unmounted. It looks like all kernels before 2.6.39 are affected, possibly all the way back to the beginning of eCryptfs being merged upstream. Patch, with all the technical eCryptfs details in the commit message, to follow... -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to libreoffice in Ubuntu. https://bugs.launchpad.net/bugs/745836 Title: encrypted swap corrupts application stack/heap [was: soffice.bin SIGSEGV cppu::throwException()] Status in LibreOffice Productivity Suite: Won't Fix Status in “ecryptfs-utils” package in Ubuntu: Invalid Status in “libreoffice” package in Ubuntu: Invalid Status in “linux” package in Ubuntu: Fix Released Status in “openoffice.org” package in Ubuntu: Won't Fix Status in “ecryptfs-utils” source package in Maverick: Invalid Status in “libreoffice” source package in Maverick: Invalid Status in “linux” source package in Maverick: Confirmed Status in “openoffice.org” source package in Maverick: Won't Fix Status in “ecryptfs-utils” source package in Natty: Invalid Status in “libreoffice” source package in Natty: Invalid Status in “linux” source package in Natty: Confirmed Status in “openoffice.org” source package in Natty: Won't Fix Status in “ecryptfs-utils” source package in Oneiric: Invalid Status in “libreoffice” source package in Oneiric: Invalid Status in “linux” source package in Oneiric: Fix Released Status in “openoffice.org” source package in Oneiric: Won't Fix Bug description: Binary package hint: libreoffice 1) lsb_release -rd Description: Ubuntu 11.04 Release: 11.04 2) apt-cache policy libreoffice-calc libreoffice-calc: Installed: 1:3.3.3-1ubuntu2 Candidate: 1:3.3.3-1ubuntu2 Version table: *** 1:3.3.3-1ubuntu2 0 100 /var/lib/dpkg/status 1:3.3.2-1ubuntu5 0 500 http://us.archive.ubuntu.com/ubuntu/ natty-updates/main i386 Packages 1:3.3.2-1ubuntu4 0 500 http://us.archive.ubuntu.com/ubuntu/ natty/main i386 Packages apt-cache policy libreoffice-writer libreoffice-writer: Installed: 1:3.3.3-1ubuntu2 Candidate: 1:3.3.3-1ubuntu2 Version table: *** 1:3.3.3-1ubuntu2 0 100 /var/lib/dpkg/status 1:3.3.2-1ubuntu5 0 500 http://us.archive.ubuntu.com/ubuntu/ natty-updates/main i386 Packages 1:3.3.2-1ubuntu4 0 500 http://us.archive.ubuntu.com/ubuntu/ natty/main i386 Packages 3) What is expected to happen in a KDE Natty in a KDE session with the KDE integration active or GNOME is a Writer or Calc file untouched for a long period of time (ex. 1 hour+) is when one tries to edit it, the application does not crash. 4) What happens instead is it crashes. This is highly correlated to both EcryptfsInUse and resource constrained (Memory & CPU >> 50%) environments. Occurs with: + Intel drivers, Compiz not enabled, Writer open only bug 745836 + binary ATI drivers, Compiz enabled, Calc open only bug 799047 ProblemType: Crash DistroRelease: Ubuntu 11.04 Package: libreoffice-core 1:3.3.2-1ubuntu2 ProcVersionSignature: Ubuntu 2.6.38-7.39-generic 2.6.38 Uname: Linux 2.6.38-7-generic i686 Architecture: i386 Date: Wed Mar 30 12:34:39 2011 Disassembly: => 0x100000: Cannot access memory at address 0x100000 EcryptfsInUse: Yes ExecutablePath: /usr/lib/libreoffice/program/soffice.bin ProcCmdline: /usr/lib/libreoffice/program/soffice.bin -writer -splash-pipe=5 ProcEnviron: LANG=en_US.UTF-8 SHELL=/bin/bash SegvAnalysis: Segfault happened at: 0x100000: Cannot access memory at address 0x100000 PC (0x00100000) not located in a known VMA region (needed executable region)! SegvReason: executing unknown VMA Signal: 11SourcePackage: libreoffice StacktraceTop: ?? () cppu::throwException(com::sun::star::uno::Any const&) () from /usr/lib/libreoffice/program/../basis-link/program/../ure-link/lib/libuno_cppuhelpergcc3.so.3 ucbhelper::cancelCommandExecution(com::sun::star::ucb::IOErrorCode, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Reference<com::sun::star::ucb::XCommandEnvironment> const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::ucb::XCommandProcessor> const&) () from /usr/lib/libreoffice/program/../basis-link/program/libucbhelper4gcc3.so ?? () from /usr/lib/libreoffice/program/../basis-link/program/libucpfile1.so ?? () from /usr/lib/libreoffice/program/../basis-link/program/libucpfile1.so Title: soffice.bin crashed with SIGSEGV in cppu::throwException()UpgradeStatus: Upgraded to natty on 2011-03-29 (0 days ago) UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare To manage notifications about this bug go to: https://bugs.launchpad.net/df-libreoffice/+bug/745836/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : [email protected] Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp

