← Back to team overview

ubuntu-x-swat team mailing list archive

[Bug 685835] [NEW] Deadlock in _XtWaitForSomething() and fork()

 

Public bug reported:

Binary package hint: xorg

Hi,

I just discovered that one can make X11 deadlock in the following way: have a multi-threaded
application.  One thread performs a fork().  Another one is waiting in XtAppProcessEvent().
This results in the following stack-trace:

#1  0x00007faf865dfe29 in _L_lock_6680 () from /lib/libc.so.6
#2  0x00007faf865dbc04 in free_atfork (mem=0x7faf68000020, 
    caller=<value optimised out>) at arena.c:251
#3  0x00007faf80aef0a1 in _XtWaitForSomething () from /usr/lib/libXt.so.6
#4  0x00007faf80aefefd in XtAppProcessEvent () from /usr/lib/libXt.so.6
<application calls>

Not sure whether this is an xorg or a glibc issue.  There are several reports on glibc
issues with free_tfork() related to signals.  This example does not involve signals,
only threads and fork().

Schematically, the deadlocked thread is doing this:

    - XtAppAddInput()
    - XtAppAddTimeOut()
    - XtAppProcessEvent()  << deadlock using stack above

        Regards --- Jan

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: xorg 1:7.5+6ubuntu3
ProcVersionSignature: Ubuntu 2.6.35-23.41-generic 2.6.35.7
Uname: Linux 2.6.35-23-generic x86_64
NonfreeKernelModules: fglrx
Architecture: amd64
Date: Mon Dec  6 11:16:31 2010
DkmsStatus:
 fglrx, 8.780, 2.6.35-22-generic, x86_64: installed 
 fglrx, 8.780, 2.6.35-23-generic, x86_64: installed 
 vboxhost, 3.2.10, 2.6.35-22-generic, x86_64: installed 
 vboxhost, 3.2.10, 2.6.35-23-generic, x86_64: installed 
 vboxhost, 3.2.10, 2.6.32-25-generic, x86_64: installed
InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release amd64 (20091027.1)
MachineType: Hewlett-Packard HP Compaq dc5850 Microtower
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.35-23-generic root=UUID=1f2fd538-1d8b-4d82-8b75-722b1da9f4d3 ro quiet splash
ProcEnviron:
 PATH=(custom, user)
 LANG=en_GB.UTF-8
 SHELL=/bin/bash
SourcePackage: xorg
dmi.bios.date: 10/28/2008
dmi.bios.vendor: Hewlett-Packard
dmi.bios.version: 786F6 v02.51
dmi.board.name: 3029h
dmi.board.vendor: Hewlett-Packard
dmi.chassis.asset.tag: hp323
dmi.chassis.type: 6
dmi.chassis.vendor: Hewlett-Packard
dmi.modalias: dmi:bvnHewlett-Packard:bvr786F6v02.51:bd10/28/2008:svnHewlett-Packard:pnHPCompaqdc5850Microtower:pvr:rvnHewlett-Packard:rn3029h:rvr:cvnHewlett-Packard:ct6:cvr:
dmi.product.name: HP Compaq dc5850 Microtower
dmi.sys.vendor: Hewlett-Packard
system:
 distro:             Ubuntu
 codename:           maverick
 architecture:       x86_64
 kernel:             2.6.35-23-generic

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


** Tags: amd64 apport-bug maverick

-- 
You received this bug notification because you are a member of Ubuntu-X,
which is subscribed to xorg in ubuntu.
https://bugs.launchpad.net/bugs/685835

Title:
  Deadlock in _XtWaitForSomething() and fork()



Follow ups

References