Public bug reported:

To trigger the bug I need to do the following:
1. Open any referencer's menu entry. For example I choose Library->Open. A 
dialogue window  appears.
2. Try to interact with the dialogue window by pressing buttons.
Step 2 makes referencer to freeze.

Backtrace shows that the program now sits in __lll_lock_wait () which is
called by g_mutex_lock ():

#0  __lll_lock_wait ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
#1  0x00007ffff414b192 in _L_lock_1142 ()
   from /lib/x86_64-linux-gnu/libpthread.so.0
#2  0x00007ffff414b110 in __GI___pthread_mutex_lock (mutex=0x777380)
    at pthread_mutex_lock.c:104
#3  0x00007ffff54d13a1 in g_mutex_lock ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007ffff649dcba in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#5  0x00007ffff54913b6 in g_main_context_dispatch ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007ffff5491708 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7  0x00007ffff5491b0a in g_main_loop_run ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8  0x00007ffff685d277 in gtk_main ()

I am not a GTK programmer and cannot identify an exact source of these
deadlocks, but  I believe that they  are caused by some thread related
changes in newer versions of glib. This conclusion  is supported by the
fact that deadlocks are absent in referencer 1.1.6 in Debian squeeze.

While in my case  the bug is reproducible  in a rather straightforward manner, 
it might not be so in general. If the menu is working properly there is another 
method  to trigger the bug. This method inevitably leads to deadlocks for 
refrencer 1.1.6 in Debian wheezy. I am quite sure this also true for 1.2.1. 
Steps to reproduce
1. Have a large collection of papers.
2. Create a new library in referencer from this collection. The arxiv plugin 
must be on. While creating the library,  referencer call the arxiv plugin which 
uses glib to show info boxes. Because of large number of papers  large number 
of treads will be created. This should increase the  probability of deadlocks.

ProblemType: Bug
DistroRelease: Ubuntu 13.10
Package: referencer 1.2.1-1
ProcVersionSignature: Ubuntu 3.11.0-13.20-generic 3.11.6
Uname: Linux 3.11.0-13-generic x86_64
ApportVersion: 2.12.5-0ubuntu2.1
Architecture: amd64
Date: Sat Nov 30 20:42:30 2013
ExecutablePath: /usr/bin/referencer
MarkForUpload: True
ProcEnviron:
 SHELL=/bin/bash
 TERM=xterm
 PATH=(custom, user)
 LANG=ru_RU.UTF-8
 XDG_RUNTIME_DIR=<set>
SourcePackage: referencer
UpgradeStatus: No upgrade log present (probably fresh install)
XsessionErrors:
 (gnome-settings-daemon:2300): GLib-GObject-WARNING **: g_object_notify: object 
class `GkbdStatus' has no property named `name'
 x-session-manager[2237]: WARNING: Could not launch application 
'pulseaudio.desktop': Unable to start application: Не удалось выполнить 
процесс-потомок «start-pulseaudio-x11» (Нет такого файла или каталога)

** Affects: referencer (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug saucy

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1256567

Title:
  gtk deadlocks in referencer

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/referencer/+bug/1256567/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to