Bug#827274: segfaults when loading message list after switching mail folders

2016-09-26 Thread Micha Lenk

Control: found -1 1:45.2.0-1~deb8u1
Control: forwarded -1 https://bugzilla.mozilla.org/show_bug.cgi?id=1198710

I keep getting these crashes. It happens either when I switch IMAP mail 
folders or when I switch messages in the message list:


(gdb) bt
#0  0x749fc590 in vtable for nsDisplayThemedBackground () from 
/usr/lib/icedove/libxul.so
#1  0x71ce40cb in nsDisplayList::DeleteAll (this=0x7fffbda8) 
at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsDisplayList.cpp:1816
#2  0x71d39ff4 in nsLayoutUtils::PaintFrame 
(aRenderingContext=0x7fffcabb0978, aRenderingContext@entry=0x0, 
aFrame=0x7fffcbb68c00, aDirtyRegion=..., aBackstop=0, 
aBackstop@entry=4294967295, aFlags=4294950352)
at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsLayoutUtils.cpp:3477
#3  0x71d3eea3 in PresShell::Paint (this=0x7fffcc07a800, 
aViewToPaint=aViewToPaint@entry=0x7fffcbb58a80, aDirtyRegion=..., 
aFlags=aFlags@entry=1) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsPresShell.cpp:6105
#4  0x71b61177 in nsViewManager::ProcessPendingUpdatesPaint 
(this=0x7fffcd861a40, aWidget=aWidget@entry=0x76be73f0) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/view/nsViewManager.cpp:467
#5  0x71b6134b in nsViewManager::ProcessPendingUpdatesForView 
(this=this@entry=0x7fffcd861a40, aView=, 
aFlushDirtyRegion=aFlushDirtyRegion@entry=true) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/view/nsViewManager.cpp:398
#6  0x71b61417 in nsViewManager::ProcessPendingUpdates 
(this=this@entry=0x7fffcd861a40) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/view/nsViewManager.cpp:1103
#7  0x71cb9fc8 in nsRefreshDriver::Tick (this=0x7fffcc078c00, 
aNowEpoch=aNowEpoch@entry=1474881640193136, aNowTime=...) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsRefreshDriver.cpp:1857
#8  0x71cba2a8 in mozilla::RefreshDriverTimer::TickDriver 
(driver=, jsnow=jsnow@entry=1474881640193136, now=..., 
now@entry=...) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsRefreshDriver.cpp:264
#9  0x71cba3d5 in 
mozilla::RefreshDriverTimer::TickRefreshDrivers 
(aJsNow=aJsNow@entry=1474881640193136, aNow=aNow@entry=..., 
aDrivers=..., this=0x7fffd63644c0) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsRefreshDriver.cpp:236
#10 0x71cba47d in mozilla::RefreshDriverTimer::Tick 
(this=0x7fffd63644c0, jsnow=1474881640193136, now=...) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsRefreshDriver.cpp:255
#11 0x71cba598 in RunRefreshDrivers (aTimeStamp=..., 
this=0x7fffd63644c0) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsRefreshDriver.cpp:566
#12 
mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver 
(this=, aVsyncTimestamp=...) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/layout/base/nsRefreshDriver.cpp:486
#13 0x71cb4be2 in 
apply 
(m=, o=, this=)

at ../../dist/include/nsThreadUtils.h:676
#14 nsRunnableMethodImpl(mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp), 
true, mozilla::TimeStamp>::Run (this=) at 
../../dist/include/nsThreadUtils.h:870
#15 0x70937f58 in nsThread::ProcessNextEvent 
(this=0x76b657a0, aMayWait=, aResult=0x7fffcb37) 
at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/xpcom/threads/nsThread.cpp:972
#16 0x70952689 in NS_ProcessNextEvent (aThread=, 
aMayWait=aMayWait@entry=false) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/xpcom/glue/nsThreadUtils.cpp:297
#17 0x70b32b27 in mozilla::ipc::MessagePump::Run 
(this=0x76bcd940, aDelegate=0x7fffe73166a0) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/ipc/glue/MessagePump.cpp:95
#18 0x70b23071 in RunHandler (this=0x7fffe73166a0) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/ipc/chromium/src/base/message_loop.cc:227
#19 MessageLoop::Run (this=0x7fffe73166a0) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/ipc/chromium/src/base/message_loop.cc:201
#20 0x71b73498 in nsBaseAppShell::Run (this=0x7fffcabb0978) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/widget/nsBaseAppShell.cpp:156
#21 0x7214c4f7 in nsAppStartup::Run (this=0x7fffdc81bf10) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/toolkit/components/startup/nsAppStartup.cpp:281
#22 0x7218128a in XREMain::XRE_mainRun 
(this=this@entry=0x7fffcdd8) at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/toolkit/xre/nsAppRunner.cpp:4285
#23 0x7218153e in XREMain::XRE_main 
(this=this@entry=0x7fffcdd8, argc=argc@entry=2, 
argv=argv@entry=0x7fffe2d8, aAppData=aAppData@entry=0x7fffcfd8) 
at 
/build/icedove-XX30r8/icedove-45.2.0/mozilla/toolkit/xre/nsAppRunner.cpp:4382
#24 0x72181759 in XRE_main (argc=2, 

Bug#827274: segfaults when loading message list after switching mail folders

2016-08-24 Thread Stefan Weil

On 07/25/16 20:33, Stefan Weil wrote:

Hi Carsten,

one more debug protocol with a similar backtrace of the crashing thread.


Here is a new debug protocol from icedove 1:45.2.0-2+b1.
Icedove was run in safe mode without any extensions.

Could it be that the crashing code is operating with data which is invalid
because it was freed by another thread?

Stefan

MOZILLA_FIVE_HOME=/usr/lib/icedove
  LD_LIBRARY_PATH=/usr/lib/icedove:/usr/lib/icedove/plugins:/usr/lib/icedove
DISPLAY=:0
DYLD_LIBRARY_PATH=/usr/lib/icedove:/usr/lib/icedove
 LIBRARY_PATH=
   SHLIB_PATH=/usr/lib/icedove:/usr/lib/icedove
  LIBPATH=/usr/lib/icedove:/usr/lib/icedove
   ADDON_PATH=
  MOZ_PROGRAM=/usr/lib/icedove/icedove-bin
  MOZ_TOOLKIT=
moz_debug=1
 moz_debugger=
moz_debugger_args=
/usr/bin/gdb  --args /usr/lib/icedove/icedove-bin --safe-mode
GNU gdb (Debian 7.7.1+dfsg-5) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
.
Find the GDB manual and other documentation resources online at:
.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/lib/icedove/icedove-bin...Reading symbols from /usr/lib/debug//usr/lib/icedove/icedove-bin...done.
done.
(gdb) r
Starting program: /usr/lib/icedove/icedove-bin --safe-mode
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/f5/e784597cb952fdb8fcdc1d4af6d0eb5e4008b5.debug]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/8d/6981338722a7f300c02e051585efb5ba654238.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/cf/bcbb40fd4f33668f799ae7923df82ef2e70d5f.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/4c/b8c17eebbc02f51c7e050633c6cf1ca74001d7.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/6d/1c9345e70313e47b14d725907bfa1e2164a6d0.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/a3/2a0f7aa29eab969b3effc06d8454dc9e6642ab.debug]
[New Thread 0x7fffe5d25700 (LWP 18462)]
[Thread 0x7fffe5d25700 (LWP 18462) exited]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/31/aa3ab4da85bdcc50f51c9b404080f737640c71.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/8c/67ff8263bfab481a435ec2432945f4c0682753.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/4f/49cad5dd8395c9e10226cb24deb3ae062cb424.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/5d/b3b63259b843e85efe7bb89143cf63753e8e87.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/86/bf75c083479eb4cbaad1e29618cffe6f417a09.debug]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module /usr/lib/debug/.build-id/04/40f4e93d601796d899abaa6de47f0197ee99c7.debug]
[New Thread 0x7fffe5d25700 (LWP 18464)]
[New Thread 0x7fffdecff700 (LWP 18465)]
[New Thread 0x77fed700 (LWP 18466)]
[New Thread 0x7fffde4fe700 (LWP 18467)]
[New Thread 0x7fffdd9ff700 (LWP 18468)]
[New Thread 0x7fffdd7fe700 (LWP 18469)]
[New Thread 0x7fffdd5fd700 (LWP 18470)]
[New Thread 0x7fffdd3fc700 (LWP 18471)]
[New Thread 0x7fffdd1fb700 (LWP 18472)]
[New Thread 0x7fffdcffa700 (LWP 18473)]
[New Thread 0x7fffdcdf9700 (LWP 18474)]
[New Thread 0x7fffdcbf8700 (LWP 18475)]
[New Thread 0x7fffdb8ff700 (LWP 18476)]
[New Thread 0x7fffdadff700 (LWP 18477)]
[New Thread 0x7fffda5fe700 (LWP 18478)]
[New Thread 0x7fffdee53700 (LWP 18479)]
[New Thread 0x7fffd99ff700 (LWP 18480)]
[New Thread 0x7fffd8669700 (LWP 18481)]
[New Thread 0x7fffd7e68700 (LWP 18482)]
[New Thread 0x7fffd58ff700 (LWP 18483)]
[New Thread 0x7fffd4350700 (LWP 18484)]
[New Thread 0x7fffd3b4f700 (LWP 18485)]
Dwarf Error: wrong version in compilation unit header (is 0, should be 2, 3, or 4) [in module 

Bug#827274: segfaults when loading message list after switching mail folders

2016-07-25 Thread Carsten Schoenert
Hello Stefan,

tanks for the other gdb log.

Am 25.07.2016 um 20:33 schrieb Stefan Weil:
[SNIP]
> By the way: the strange log file names are caused by the algorithm
> which creates that names. $(apt-cache show icedove) does not show the
> installed icedove versions, but all versions found in the apt cache.
> This can be the same version, but the cache can also contain newer
> versions (even more than one which will confuse the log file name
> completely).

well, I don’t think the log names are strange, they contain all the
information we need to keep the reports differ.
But you are right on the version that can be wrong selected, I changed
the wiki entry slightly to use dpkg-query.

-- 
Regards
Carsten Schoenert



Bug#827274: segfaults when loading message list after switching mail folders

2016-06-14 Thread Carsten Schoenert
Hello Micha,

On Tue, Jun 14, 2016 at 04:58:12PM +0200, Micha Lenk wrote:
 
> Well, I am not able to reproduce the issue reliably.

that's exact our problem, I run into Icedove crashs too, but they are
really rare. Maybe 1 - 2 a month, and there are months thre nothing
happen.

> So, what I did is a
> post-mortem analysis of the generated coredump. So I guess I can't
> change the LANG env, right?

Yes, only manually in the log file, and that's error prone. :-)
 
> > Also if possible consider using "set substitute-path ..." inside the gdb
> > session to a valide path. By this all can see the relvant source code
> > there Icedove is crashing.
> > 
> > https://sourceware.org/gdb/onlinedocs/gdb/Source-Path.html
> 
> This is the icedove version installed in a stable release via APT, so I
> have no clue what path to set here. I guess the Debian buildds know the
> used paths. The used source code should be available in the Debian
> archive, shouldn't it?

Well, that's something for advanced gdb using, so no worry.

The gdb trys to find the source like it was around while building. For the
version 1:45.1.0~deb8u1 the buildd was using

  /build/icedove-tNL3mB/icedove-45.1.0/

Of course you dont have such a folder, so gdb cant find the source for
the crashed function. You need to tell gdb a substion path (if you have
downloaded and extracted the source for Icedove locally).
For example, if have loaded the source from the package site 
https://packages.debian.org/source/stable/icedove on the bottom ...
icedove_45.1.0.orig.tar.xz

  
http://security.debian.org/debian-security/pool/updates/main/i/icedove/icedove_45.1.0.orig.tar.xz

and extracted the archive into /home/user/icedove-source-45.1.0 than the
substion comand would be:

[start the debugger]
set substitute-path /build/icedove-tNL3mB/icedove-45.1.0/ 
/home/user/icedove-source-45.1.0
run
[the visible output]

Regards
Carsten



Bug#827274: segfaults when loading message list after switching mail folders

2016-06-14 Thread Carsten Schoenert
Hello Micha,

those logs are much better as we cann see all the threads that are
running. I'm a little bit puzzled about the name of the log file and the
version on the other side that's visible in the log ...

On Tue, Jun 14, 2016 at 05:19:12PM +0200, Micha Lenk wrote:
[SNIP] 
> Program received signal SIGSEGV, Segmentation fault.
> 0x74a2f550 in vtable for nsDisplayXULImage () from 
> /usr/lib/icedove/libxul.so
> (gdb) thread apply all bt

[SNIP]

> Thread 1 (Thread 0x77fd1740 (LWP 3856)):
> #0  0x74a2f550 in vtable for nsDisplayXULImage () from 
> /usr/lib/icedove/libxul.so
> #1  0x71cff6a5 in nsDisplayList::DeleteAll (this=0x7fffc308) at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsDisplayList.cpp:1816

That's originaly this function in line 1816

$ head -n 1819 mozilla/layout/base/nsDisplayList.cpp | tail -n8

void nsDisplayList::DeleteAll() {
  nsDisplayItem* item;
  while ((item = RemoveBottom()) != nullptr) {   <
item->~nsDisplayItem();
  }
}

It looks like a Nullpointer exception but that needs a deeper code
inspection and my assumption can be wrong.

> #2  0x71d555ce in nsLayoutUtils::PaintFrame 
> (aRenderingContext=0x7fffc99de578, aRenderingContext@entry=0x0, 
> aFrame=0x7fffd2337ff0, aDirtyRegion=..., 
> aBackstop=0, aBackstop@entry=4294440951, aFlags=4294951728) at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsLayoutUtils.cpp:3477
> #3  0x71d5a47d in PresShell::Paint (this=0x7fffd2347c00, 
> aViewToPaint=aViewToPaint@entry=0x7fffe269e100, aDirtyRegion=..., 
> aFlags=aFlags@entry=1)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsPresShell.cpp:6105
> #4  0x71b7c884 in nsViewManager::ProcessPendingUpdatesPaint 
> (this=0x7fffd2334380, aWidget=aWidget@entry=0x76bedab0)
> at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/view/nsViewManager.cpp:467
> #5  0x71b7ca33 in nsViewManager::ProcessPendingUpdatesForView 
> (this=, aView=, 
> aFlushDirtyRegion=aFlushDirtyRegion@entry=true)
> at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/view/nsViewManager.cpp:398
> #6  0x71b7cae3 in nsViewManager::ProcessPendingUpdates 
> (this=this@entry=0x7fffd2334380)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/view/nsViewManager.cpp:1101
> #7  0x71cd55a4 in nsRefreshDriver::Tick (this=0x7fffd2347800, 
> aNowEpoch=aNowEpoch@entry=1465917171867919, aNowTime=...)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:1857
> #8  0x71cd5884 in mozilla::RefreshDriverTimer::TickDriver 
> (driver=, jsnow=jsnow@entry=1465917171867919, now=..., 
> now@entry=...)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:264
> #9  0x71cd59b1 in mozilla::RefreshDriverTimer::TickRefreshDrivers 
> (aJsNow=aJsNow@entry=1465917171867919, aNow=aNow@entry=..., aDrivers=..., 
> this=0x7fffd9a1f420) at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:236
> #10 0x71cd5a59 in mozilla::RefreshDriverTimer::Tick 
> (this=0x7fffd9a1f420, jsnow=1465917171867919, now=...)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:255
> #11 0x71cd5b74 in RunRefreshDrivers (aTimeStamp=..., 
> this=0x7fffd9a1f420) at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:566
> #12 
> mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver
>  (this=, aVsyncTimestamp=...)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:486
> #13 0x71cd01be in 
> apply (mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp)>
>  (m=, o=, this=) at 
> ../../dist/include/nsThreadUtils.h:676
> #14 nsRunnableMethodImpl (mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp),
>  true, mozilla::TimeStamp>::Run (
> this=) at ../../dist/include/nsThreadUtils.h:870
> #15 0x709542b0 in nsThread::ProcessNextEvent (this=0x76b65600, 
> aMayWait=, aResult=0x7fffd077)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/xpcom/threads/nsThread.cpp:972
> #16 0x7096e9e1 in NS_ProcessNextEvent (aThread=, 
> aMayWait=aMayWait@entry=false)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/xpcom/glue/nsThreadUtils.cpp:297
> #17 0x70b4e791 in mozilla::ipc::MessagePump::Run 
> (this=0x76bfc040, aDelegate=0x76bf61c0)
> at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/ipc/glue/MessagePump.cpp:95
> #18 0x70b3ecdb in RunHandler (this=0x76bf61c0) at 
> /build/icedove-tNL3mB/icedove-45.1.0/mozilla/ipc/chromium/src/base/message_loop.cc:227
> #19 MessageLoop::Run (this=0x76bf61c0) at 
> 

Bug#827274: segfaults when loading message list after switching mail folders

2016-06-14 Thread Micha Lenk
Yet another coredump succeeded (see attached log file). This time I
remembered to let GDB generate a core dump file too. Please let me know
if you need further information.

Best regards,
Micha
MOZILLA_FIVE_HOME=/usr/lib/icedove
  LD_LIBRARY_PATH=/usr/lib/icedove:/usr/lib/icedove/plugins:/usr/lib/icedove
DISPLAY=:0.0
DYLD_LIBRARY_PATH=/usr/lib/icedove:/usr/lib/icedove
 LIBRARY_PATH=
   SHLIB_PATH=/usr/lib/icedove:/usr/lib/icedove
  LIBPATH=/usr/lib/icedove:/usr/lib/icedove
   ADDON_PATH=
  MOZ_PROGRAM=/usr/lib/icedove/icedove-bin
  MOZ_TOOLKIT=
moz_debug=1
 moz_debugger=
moz_debugger_args=
/usr/bin/gdb  --args /usr/lib/icedove/icedove-bin
GNU gdb (Debian 7.7.1+dfsg-5) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
.
Find the GDB manual and other documentation resources online at:
.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/lib/icedove/icedove-bin...Reading symbols from /usr/lib/debug//usr/lib/icedove/icedove-bin...done.
done.
(gdb) run
Starting program: /usr/lib/icedove/icedove-bin 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe7f23700 (LWP 3857)]
[Thread 0x7fffe7f23700 (LWP 3857) exited]
[New Thread 0x7fffe7f23700 (LWP 3859)]
[New Thread 0x7fffe6479700 (LWP 3860)]
[New Thread 0x77fee700 (LWP 3861)]
[New Thread 0x7fffe5c78700 (LWP 3862)]
[New Thread 0x7fffe50ff700 (LWP 3863)]
[New Thread 0x7fffe4efe700 (LWP 3864)]
[New Thread 0x7fffe4cfd700 (LWP 3865)]
[New Thread 0x7fffe4afc700 (LWP 3866)]
[New Thread 0x7fffe48fb700 (LWP 3867)]
[New Thread 0x7fffe46fa700 (LWP 3868)]
[New Thread 0x7fffe44f9700 (LWP 3869)]
[New Thread 0x7fffe42f8700 (LWP 3870)]
[New Thread 0x7fffe2fff700 (LWP 3871)]
[New Thread 0x7fffe2416700 (LWP 3872)]
[New Thread 0x7fffe1c15700 (LWP 3873)]
[New Thread 0x77f7d700 (LWP 3874)]
[New Thread 0x7fffe0aff700 (LWP 3875)]
[New Thread 0x7fffdf791700 (LWP 3876)]
[New Thread 0x7fffdef90700 (LWP 3877)]
[New Thread 0x7fffdb9ff700 (LWP 3878)]
[calBackendLoader] Using libical backend at /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libical-manifest
[New Thread 0x7fffda3ff700 (LWP 3879)]
[New Thread 0x7fffd8bd7700 (LWP 3880)]
enigmail.js: Registered components
[New Thread 0x7fffd77ff700 (LWP 3881)]
[New Thread 0x7fffd6ffe700 (LWP 3882)]
[New Thread 0x7fffd67fd700 (LWP 3883)]
[New Thread 0x7fffd5ffc700 (LWP 3884)]
[New Thread 0x7fffd57fb700 (LWP 3885)]
[New Thread 0x7fffd4ffa700 (LWP 3886)]
[New Thread 0x7fffd47f9700 (LWP 3887)]
[New Thread 0x7fffd35ff700 (LWP 3888)]
[New Thread 0x7fffd2dfe700 (LWP 3889)]
[New Thread 0x7fffd1dff700 (LWP 3890)]
mimeVerify.jsm: module initialized
[New Thread 0x7fffd07ff700 (LWP 3891)]
[New Thread 0x7fffcfbff700 (LWP 3892)]
[New Thread 0x7fffcf0ff700 (LWP 3893)]
[New Thread 0x7fffce6ff700 (LWP 3894)]
[Thread 0x7fffdb9ff700 (LWP 3878) exited]
[Thread 0x7fffd07ff700 (LWP 3891) exited]
[Thread 0x7fffcfbff700 (LWP 3892) exited]
[Thread 0x7fffcf0ff700 (LWP 3893) exited]
[New Thread 0x7fffcd3ff700 (LWP 3895)]
[New Thread 0x7fffcf0ff700 (LWP 3896)]
[New Thread 0x7fffcfbff700 (LWP 3897)]
[New Thread 0x7fffd07ff700 (LWP 3898)]
[New Thread 0x7fffdb9ff700 (LWP 3899)]
[New Thread 0x7fffcb9e9700 (LWP 3900)]
[New Thread 0x7fffcb1e8700 (LWP 3901)]
[New Thread 0x7fffc27ff700 (LWP 3902)]
[New Thread 0x7fffbabff700 (LWP 3903)]
[New Thread 0x7fffb69ff700 (LWP 3904)]
[Thread 0x7fffb69ff700 (LWP 3904) exited]
[New Thread 0x7fffb69ff700 (LWP 3905)]
[Thread 0x7fffb69ff700 (LWP 3905) exited]
[New Thread 0x7fffb69ff700 (LWP 3906)]
[New Thread 0x7fffd7948700 (LWP 3907)]
[New Thread 0x7fffb4afd700 (LWP 3909)]
[New Thread 0x7fffb48fc700 (LWP 3910)]
[New Thread 0x7fffb36ff700 (LWP 3911)]
[New Thread 0x7fffb2efe700 (LWP 3912)]
[Thread 0x7fffb36ff700 (LWP 3911) exited]
[Thread 0x7fffb2efe700 (LWP 3912) exited]

Program received signal SIGSEGV, Segmentation fault.
0x74a2f550 in vtable for nsDisplayXULImage () from /usr/lib/icedove/libxul.so
(gdb) thread apply all bt

Thread 53 (Thread 0x7fffb48fc700 (LWP 3910)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x764b1860 in PR_WaitCondVar (cvar=0x7fffc956cb00, timeout=4294967295)
at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/nsprpub/pr/src/pthreads/ptsynch.c:396
#2  0x7094d6c5 in mozilla::CondVar::Wait (aInterval=aInterval@entry=4294967295, 

Bug#827274: segfaults when loading message list after switching mail folders

2016-06-14 Thread Micha Lenk
Hi Carsten,

the crash just succeeded again following the instructions given in the
Debian Wiki. Attached you find the generated log file.

Best regards,
Micha
MOZILLA_FIVE_HOME=/usr/lib/icedove
  LD_LIBRARY_PATH=/usr/lib/icedove:/usr/lib/icedove/plugins:/usr/lib/icedove
DISPLAY=:0.0
DYLD_LIBRARY_PATH=/usr/lib/icedove:/usr/lib/icedove
 LIBRARY_PATH=
   SHLIB_PATH=/usr/lib/icedove:/usr/lib/icedove
  LIBPATH=/usr/lib/icedove:/usr/lib/icedove
   ADDON_PATH=
  MOZ_PROGRAM=/usr/lib/icedove/icedove-bin
  MOZ_TOOLKIT=
moz_debug=1
 moz_debugger=
moz_debugger_args=
/usr/bin/gdb  --args /usr/lib/icedove/icedove-bin
GNU gdb (Debian 7.7.1+dfsg-5) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
.
Find the GDB manual and other documentation resources online at:
.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/lib/icedove/icedove-bin...Reading symbols from /usr/lib/debug//usr/lib/icedove/icedove-bin...done.
done.
(gdb) run
Starting program: /usr/lib/icedove/icedove-bin 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe7f23700 (LWP 3578)]
[Thread 0x7fffe7f23700 (LWP 3578) exited]
[New Thread 0x7fffe7f23700 (LWP 3580)]
[New Thread 0x7fffe6479700 (LWP 3581)]
[New Thread 0x77fee700 (LWP 3582)]
[New Thread 0x7fffe5c78700 (LWP 3583)]
[New Thread 0x7fffe50ff700 (LWP 3584)]
[New Thread 0x7fffe4efe700 (LWP 3585)]
[New Thread 0x7fffe4cfd700 (LWP 3586)]
[New Thread 0x7fffe4afc700 (LWP 3587)]
[New Thread 0x7fffe48fb700 (LWP 3588)]
[New Thread 0x7fffe46fa700 (LWP 3589)]
[New Thread 0x7fffe44f9700 (LWP 3590)]
[New Thread 0x7fffe42f8700 (LWP 3591)]
[New Thread 0x7fffe2fff700 (LWP 3592)]
[New Thread 0x7fffe25ff700 (LWP 3593)]
[New Thread 0x7fffe1dfe700 (LWP 3594)]
[New Thread 0x76d37700 (LWP 3595)]
[New Thread 0x7fffe0cff700 (LWP 3596)]
[New Thread 0x7fffdf991700 (LWP 3597)]
[New Thread 0x7fffdf190700 (LWP 3598)]
[New Thread 0x7fffdbbff700 (LWP 3599)]
[calBackendLoader] Using libical backend at /usr/lib/icedove/extensions/{e2fda1a4-762b-4020-b5ad-a41df1933103}/components/libical-manifest
[New Thread 0x7fffda5ff700 (LWP 3600)]
[New Thread 0x7fffd8dd7700 (LWP 3601)]
enigmail.js: Registered components
[New Thread 0x7fffd79ff700 (LWP 3602)]
[New Thread 0x7fffd71fe700 (LWP 3603)]
[New Thread 0x7fffd69fd700 (LWP 3604)]
[New Thread 0x7fffd61fc700 (LWP 3605)]
[New Thread 0x7fffd59fb700 (LWP 3606)]
[New Thread 0x7fffd51fa700 (LWP 3607)]
[New Thread 0x7fffd49f9700 (LWP 3608)]
[New Thread 0x7fffd37ff700 (LWP 3609)]
[New Thread 0x7fffd2ffe700 (LWP 3610)]
[New Thread 0x7fffd27fd700 (LWP 3611)]
[New Thread 0x7fffd1ffc700 (LWP 3612)]
[New Thread 0x7fffd17fb700 (LWP 3613)]
[Thread 0x7fffdbbff700 (LWP 3599) exited]
[New Thread 0x7fffd0cff700 (LWP 3614)]
[Thread 0x7fffd27fd700 (LWP 3611) exited]
[Thread 0x7fffd1ffc700 (LWP 3612) exited]
[New Thread 0x7fffd04fe700 (LWP 3615)]
[Thread 0x7fffd17fb700 (LWP 3613) exited]
[New Thread 0x7fffd17fb700 (LWP 3616)]
mimeVerify.jsm: module initialized
[New Thread 0x7fffd1ffc700 (LWP 3617)]
[New Thread 0x7fffd27fd700 (LWP 3618)]
[Thread 0x7fffd0cff700 (LWP 3614) exited]
[Thread 0x7fffd27fd700 (LWP 3618) exited]
[New Thread 0x7fffd27fd700 (LWP 3619)]
[Thread 0x7fffd27fd700 (LWP 3619) exited]
[New Thread 0x7fffd27fd700 (LWP 3620)]
[Thread 0x7fffd1ffc700 (LWP 3617) exited]
[New Thread 0x7fffd1ffc700 (LWP 3621)]
[New Thread 0x7fffd0cff700 (LWP 3622)]
[Thread 0x7fffd27fd700 (LWP 3620) exited]
[Thread 0x7fffd1ffc700 (LWP 3621) exited]
[New Thread 0x7fffd1ffc700 (LWP 3623)]
[Thread 0x7fffd0cff700 (LWP 3622) exited]
[New Thread 0x7fffd0cff700 (LWP 3624)]
[Thread 0x7fffd1ffc700 (LWP 3623) exited]
[New Thread 0x7fffd1ffc700 (LWP 3625)]
[New Thread 0x7fffd27fd700 (LWP 3626)]
[New Thread 0x7fffdbbff700 (LWP 3627)]
[New Thread 0x7fffcb2f2700 (LWP 3628)]
[New Thread 0x7fffca6e8700 (LWP 3629)]
[New Thread 0x7fffc9ee7700 (LWP 3630)]
[New Thread 0x7fffc20ce700 (LWP 3631)]
[New Thread 0x7fffc11ff700 (LWP 3632)]
[New Thread 0x7fffb64ff700 (LWP 3633)]
[Thread 0x7fffb64ff700 (LWP 3633) exited]
[New Thread 0x7fffb64ff700 (LWP 3634)]
[New Thread 0x7fffb4dff700 (LWP 3635)]
[New Thread 0x7fffb45fe700 (LWP 3636)]
[New Thread 0x7fffb3dfd700 (LWP 3637)]
[New Thread 0x7fffb35fc700 (LWP 3638)]
[New Thread 0x7fffe4067700 (LWP 3639)]
[New Thread 0x7fffb86ff700 (LWP 3641)]
[New Thread 0x7fffb81ff700 (LWP 3642)]

Program received signal SIGSEGV, Segmentation fault.

Bug#827274: segfaults when loading message list after switching mail folders

2016-06-14 Thread Micha Lenk
Hi Carsten,

Am 14.06.2016 um 16:44 schrieb Carsten Schoenert:
> On Tue, Jun 14, 2016 at 04:25:06PM +0200, Micha Lenk wrote:
>> Package: icedove
>> Version: 1:45.1.0-1~deb8u1
>> Severity: important
>>
>> Hi there,
>>
>> I got a segfault while switching mail folders.
> [SNIP] 
>> Please let me know if I can contribute some more details about the crash.
> 
> please follow the instruction from
> https://wiki.debian.org/Icedove#Debugging completely.
>
> The log you have send is unfortunately useless because the other threads
> are not visible. Please unset the LANG so we got a english output, not
> all the readers here are native german. That's all done by the example on
> thw wiki site.

Well, I am not able to reproduce the issue reliably. So, what I did is a
post-mortem analysis of the generated coredump. So I guess I can't
change the LANG env, right?

Of course I can re-run gdb to generate a backtrace for all threads.
Would that help?

> Also if possible consider using "set substitute-path ..." inside the gdb
> session to a valide path. By this all can see the relvant source code
> there Icedove is crashing.
> 
> https://sourceware.org/gdb/onlinedocs/gdb/Source-Path.html

This is the icedove version installed in a stable release via APT, so I
have no clue what path to set here. I guess the Debian buildds know the
used paths. The used source code should be available in the Debian
archive, shouldn't it?

Best regards,
Micha



Bug#827274: segfaults when loading message list after switching mail folders

2016-06-14 Thread Carsten Schoenert
Hello Micha,

On Tue, Jun 14, 2016 at 04:25:06PM +0200, Micha Lenk wrote:
> Package: icedove
> Version: 1:45.1.0-1~deb8u1
> Severity: important
> 
> Hi there,
> 
> I got a segfault while switching mail folders.
[SNIP] 
> Please let me know if I can contribute some more details about the crash.

please follow the instruction from
https://wiki.debian.org/Icedove#Debugging completely.

The log you have send is unfortunately useless because the other threads
are not visible. Please unset the LANG so we got a english output, not
all the readers here are native german. That's all done by the example on
thw wiki site.

Also if possible consider using "set substitute-path ..." inside the gdb
session to a valide path. By this all can see the relvant source code
there Icedove is crashing.

https://sourceware.org/gdb/onlinedocs/gdb/Source-Path.html

Regards
Carsten



Bug#827274: segfaults when loading message list after switching mail folders

2016-06-14 Thread Micha Lenk
Package: icedove
Version: 1:45.1.0-1~deb8u1
Severity: important

Hi there,

I got a segfault while switching mail folders.

Reading symbols from /usr/bin/icedove...Reading symbols from 
/usr/lib/debug//usr/lib/icedove/icedove...done.
done.
[New LWP 2540]
[New LWP 2544]
[New LWP 2543]
[New LWP 2556]
[New LWP 2561]
[New LWP 2569]
[New LWP 2545]
[New LWP 2547]
[New LWP 2564]
[New LWP 2594]
[New LWP 2560]
[New LWP 2548]
[New LWP 2570]
[New LWP 2598]
[New LWP 2549]
[New LWP 2577]
[New LWP 2563]
[New LWP 2603]
[New LWP 2550]
[New LWP 2566]
[New LWP 2620]
[New LWP 2651]
[New LWP 2551]
[New LWP 2568]
[New LWP 2565]
[New LWP 2552]
[New LWP 2578]
[New LWP 2553]
[New LWP 2588]
[New LWP 2589]
[New LWP 2590]
[New LWP 2622]
[New LWP 2571]
[New LWP 2649]
[New LWP 2554]
[New LWP 2546]
[New LWP 2623]
[New LWP 2555]
[New LWP 2621]
[New LWP 2599]
[New LWP 2557]
[New LWP 2596]
[New LWP 2558]
[New LWP 2592]
[New LWP 2559]
[New LWP 2573]
[New LWP 2572]
[New LWP 2567]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `icedove'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x7fda3ac2279b in raise (sig=11) at 
../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37
37  ../nptl/sysdeps/unix/sysv/linux/pt-raise.c: Datei oder Verzeichnis 
nicht gefunden.
(gdb) bt
#0  0x7fda3ac2279b in raise (sig=11) at 
../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37
#1  0x7fda35295959 in nsProfileLock::FatalSignalHandler (signo=11, 
info=0x7ffd62d8ab70, context=0x7ffd62d8aa40)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/toolkit/profile/nsProfileLock.cpp:185
#2  0x7fda35b72586 in AsmJSFaultHandler (signum=, 
info=, context=0x7ffd62d8aa40)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/js/src/asmjs/AsmJSSignalHandlers.cpp:1161
#3  
#4  0x7fd9fd9df178 in ?? ()
#5  0x7fda34dff6a5 in nsDisplayList::DeleteAll 
(this=this@entry=0x7fd9fd9df220) at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsDisplayList.cpp:1816
#6  0x7fda34e109f2 in nsDisplayWrapList::~nsDisplayWrapList 
(this=0x7fd9fd9df1d8, __in_chrg=)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsDisplayList.cpp:3773
#7  0x7fda34dff6a5 in nsDisplayList::DeleteAll (this=0x7ffd62d8b118) at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsDisplayList.cpp:1816
#8  0x7fda34e555ce in nsLayoutUtils::PaintFrame 
(aRenderingContext=0x7fd9fd9df180, aRenderingContext@entry=0x0, 
aFrame=0x7fda16380ff0, aDirtyRegion=..., 
aBackstop=0, aBackstop@entry=4294440951, aFlags=1658368320) at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsLayoutUtils.cpp:3477
#9  0x7fda34e5a47d in PresShell::Paint (this=0x7fda163c1000, 
aViewToPaint=aViewToPaint@entry=0x7fda1637b900, aDirtyRegion=..., 
aFlags=aFlags@entry=1)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsPresShell.cpp:6105
#10 0x7fda34c7c884 in nsViewManager::ProcessPendingUpdatesPaint 
(this=0x7fda1637f6c0, aWidget=aWidget@entry=0x7fda39cf6ab0)
at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/view/nsViewManager.cpp:467
#11 0x7fda34c7ca33 in nsViewManager::ProcessPendingUpdatesForView 
(this=, aView=, 
aFlushDirtyRegion=aFlushDirtyRegion@entry=true)
at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/view/nsViewManager.cpp:398
#12 0x7fda34c7cae3 in nsViewManager::ProcessPendingUpdates 
(this=this@entry=0x7fda1637f6c0)
at /build/icedove-tNL3mB/icedove-45.1.0/mozilla/view/nsViewManager.cpp:1101
#13 0x7fda34dd55a4 in nsRefreshDriver::Tick (this=0x7fda163c0c00, 
aNowEpoch=aNowEpoch@entry=1465913598009296, aNowTime=...)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:1857
#14 0x7fda34dd5884 in mozilla::RefreshDriverTimer::TickDriver 
(driver=, jsnow=jsnow@entry=1465913598009296, now=..., 
now@entry=...)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:264
#15 0x7fda34dd59b1 in mozilla::RefreshDriverTimer::TickRefreshDrivers 
(aJsNow=aJsNow@entry=1465913598009296, aNow=aNow@entry=..., aDrivers=..., 
this=0x7fda1a586100) at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:236
#16 0x7fda34dd5a59 in mozilla::RefreshDriverTimer::Tick 
(this=0x7fda1a586100, jsnow=1465913598009296, now=...)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:255
#17 0x7fda34dd5b74 in RunRefreshDrivers (aTimeStamp=..., 
this=0x7fda1a586100) at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:566
#18 
mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver 
(this=, aVsyncTimestamp=...)
at 
/build/icedove-tNL3mB/icedove-45.1.0/mozilla/layout/base/nsRefreshDriver.cpp:486
#19 0x7fda34dd01be in 
apply