Bug 100404 - Segfault in OsLookupColor+0x139 during attempt to build a 2 display Xdmx multihead
Summary: Segfault in OsLookupColor+0x139 during attempt to build a 2 display Xdmx mult...
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/DDX/dmx (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: high critical
Assignee: dmx-bugs
QA Contact: Xorg Project Team
Depends on:
Reported: 2017-03-26 18:44 UTC by Florian Mayer
Modified: 2018-12-13 18:26 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

Full output of the startx command (60.31 KB, text/plain)
2017-03-26 18:44 UTC, Florian Mayer
no flags Details

Description Florian Mayer 2017-03-26 18:44:02 UTC
Created attachment 130470 [details]
Full output of the startx command

I'm getting the following segfault when trying to create a multihead configuration over my local network using Xdmx (detailed problem description below)

(EE) Backtrace:
(EE) 0: /usr/sbin/Xdmx (OsLookupColor+0x139) [0x5586f9]
(EE) 1: /usr/lib/libpthread.so.0 (__restore_rt+0x0) [0x7f162ef91fdf]
(EE) 2: /usr/sbin/Xdmx (TimerForce+0x10) [0x552180]
(EE) 3: /usr/sbin/Xdmx (RemoveInputDeviceTraces+0x5211) [0x433bc1]
(EE) 4: /usr/sbin/Xdmx (_start+0x4513) [0x4251e3]
(EE) 5: /usr/sbin/Xdmx (RemoveInputDeviceTraces+0x41aa) [0x431ada]
(EE) 6: /usr/sbin/Xdmx (RemoveInputDeviceTraces+0x460b) [0x4321bb]
(EE) 7: /usr/sbin/Xdmx (AddScreen+0xd7) [0x51de37]
(EE) 8: /usr/sbin/Xdmx (InitOutput+0x406) [0x428966]
(EE) 9: /usr/sbin/Xdmx (InitFonts+0x216) [0x5219d6]
(EE) 10: /usr/lib/libc.so.6 (__libc_start_main+0xf1) [0x7f162ebfc511]
(EE) 11: /usr/sbin/Xdmx (_start+0x2a) [0x41c8ca]
(EE) 12: ? (?+0x2a) [0x2a]


(II) dmx: Generation:         1
(II) dmx: DMX version:        1.2.20070424 (DMX Project)
(II) dmx: DMX Build OS:       Linux 4.9.11-1-ARCH x86_64 ()
(II) dmx: DMX Build Compiler: gcc 6.3.1
(II) dmx: DMX Execution OS:   Linux 4.10.5-1-ARCH #1 SMP PREEMPT Wed Mar 22 14:42:03 CET 2017
(II) dmx: DMX Execution Host: kurerm
(II) dmx: MAXSCREENS:         16
(II) dmx: Using configuration from command line
(II) dmx: Added :0 at 0 0
(II) dmx: Added right of :0
(II) dmx[o0/:0]: No Xdmx server running on backend
(II) dmx[o0/:0]: Name of display: :0
(II) dmx[o0/:0]: Version number:  11.0
(II) dmx[o0/:0]: Vendor string:   The X.Org Foundation
(II) dmx[o0/:0]: Vendor release:  11903000
(II) dmx[o0/:0]: Dimensions:      1440x900 pixels
(II) dmx[o0/:0]: 7 depths on screen 0:  24,1,4,8,15,16,32
(II) dmx[o0/:0]: Depth of root window:  24 planes (24)
(II) dmx[o0/:0]: Number of colormaps:   1 min, 1 max
(II) dmx[o0/:0]: Options: backing-store when mapped, save-unders no
(II) dmx[o0/:0]: Window Manager running: yes
(**) dmx[o0/:0]: Window manager running -- colormaps not supported


- On machine S
  - $ xinit `which twm` -- `which X` -listen tcp
  - open xterm
  - make sure port 6000 is open ($ nmap localhost)
  - $ xhost +

On machine M
  - login to usual X session (using lightdm in my case)
  - open terminal
  - make sure X server on S is reachable (xterm -display ip_of_S:0)
  - $ startx `which twm` -- `which Xdmx` -display :0 -display

The same steps are valid for reproduction between two arch linux computers.


I tried this under two different hardware setups.
1) Two VMs
2) One VM and one physical computer

1) I downloaded http://www.osboxes.org/arch-linux/ and created a base vm where I installed all necessary Xorg components (the packages xorg-server xorg-server-utils, xorg-utils etc.). When I successfully tested a basic twm session I cloned the VM and edited both so that each one posessed its own hostname. Both were configured to use DHCP(v4) in my network.
Then I started both VMs and made sure they had different IPs. And finally I did exactly the steps that I described above. Of course, leading to the same result.

2) see steps to reproduce


If I do 
$ Xorg :0 -configure
while no instance of the X server is running, I'll get a similar backtrace caused by a similar segfault with OsLookupColor+0x132 being on top of the callstack.
Here the message's content:
X.Org X Server 1.19.3
Release Date: 2017-03-15
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.9.11-1-ARCH i686 
Current Operating System: Linux testarsch1 4.10.5-1-ARCH #1 SMP PREEMPT Wed Mar 22 15:02:04 CET 2017 i686
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=225a86ef-06d5-49fa-9a6b-9308d5ddc384 rw quiet
Build Date: 16 March 2017  02:50:50PM
Current version of pixman: 0.34.0
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Sun Mar 26 20:40:10 2017
(EE) Backtrace:
(EE) 0: /usr/lib/xorg-server/Xorg (OsLookupColor+0x132) [0x81e7582]
(EE) 1: ? (?+0x132) [0xb77cfe21]
(EE) 2: /usr/lib/xorg-server/Xorg (xf86PlatformMatchDriver+0x2f8) [0x80da968]
(EE) 3: /usr/lib/xorg-server/Xorg (xf86BusProbe+0x13) [0x80b1b03]
(EE) 4: /usr/lib/xorg-server/Xorg (InitOutput+0x7cf) [0x80c0d4f]
(EE) 5: /usr/lib/xorg-server/Xorg (InitFonts+0x299) [0x807ce89]
(EE) 6: /usr/lib/xorg-server/Xorg (miPolyFillRect+0x2c9) [0x80669a9]
(EE) 7: /usr/lib/libc.so.6 (__libc_start_main+0xf6) [0xb7289366]
(EE) 8: /usr/lib/xorg-server/Xorg (_start+0x21) [0x8066759]
(EE) Segmentation fault at address 0x28
Fatal server error:
(EE) Caught signal 11 (Segmentation fault). Server aborting
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE) Server terminated with error (1). Closing log file.
Comment 1 GitLab Migration User 2018-12-13 18:26:57 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/xserver/issues/114.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.