Red Hat Bugzilla – Bug 62039
Multi head savage fails to start with 16 bit color
Last modified: 2007-04-18 12:41:14 EDT
Description of Problem:
We have a system with a multihead display card (Savage 4) that starts OK if
we select 24 bit color but fails to start when the depth is set to 16. See
attachments to follow for specific configuration of the system, configuration
files, and stack traceback of infinite loop.
Version-Release number of selected component (if applicable):
XFree86-4.2.0-6.47 (as well as other XFree86 components - same version)
Configure system with multiple savage display interfaces. See XF86Config-4 for
a configuration that fails. Shutdown, power off, power on and let system boot.
bar. Have also
attached Xserver logs for successful and failing boot ups.
Steps to Reproduce:
1. Configure system with multiple savage display interfaces.
2. Set display to 16 bit color
3. Shutdown, reboot. Killing the server (Ctrl-Alt-Backspace) also causes the
failure but didn't want to introduce other side effects.
Left display is blank, middle has three horizontal white bars, right has
one horizontal white bar. CPU utilization is 100% - X server. Stack backtrace
is attached separately.
System comes up OK, see login prompt. [works if 24 bit color is used]
- failing XF86Config-4 file
- successful XF86Config-4 file
- failing log from XFree86 server
- success log from XFree86 server
- stack backtrace (using gdb, attach to running process]
Created attachment 50664 [details]
Failing XF86Config-4 file.
Created attachment 50665 [details]
Successful XF86Config-4 file
Created attachment 50666 [details]
Failing XF86 log file
Created attachment 50667 [details]
Successful XFree86 log file
Stack traceback on infinite loop for reference...
GNU gdb Red Hat Linux (5.1-1)
Copyright 2001 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...(no debugging symbols found)...
(gdb) attach 1106
Attaching to program: /usr/X11R6/bin/X, process 1106
Reading symbols from /usr/lib/libz.so.1...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libpam.so.0...done.
Loaded symbols for /lib/libpam.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libpam_misc.so.0...done.
Loaded symbols for /lib/libpam_misc.so.0
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
0x084eaaf8 in ?? ()
#0 0x084eaaf8 in ?? ()
#1 0x080aba8a in xf86HandleColormaps ()
#2 0x080ab4bd in xf86HandleColormaps ()
#3 0x080ab457 in xf86HandleColormaps ()
#4 0x0807fa6a in DGAShutdown ()
#5 0x0806eac0 in ddxGiveUp ()
#6 0x080db4e0 in GiveUp ()
#7 0x080dca65 in FatalError ()
#8 0x080c57ab in main ()
#9 0x40089306 in __libc_start_main (main=0x80c5240 <main>, argc=3,
ubp_av=0xbffffdd4, init=0x806c820 <_init>,
fini=0x8182e60 <_fini>, rtld_fini=0x4000d2dc <_dl_fini>, stack_end=0xbffffdcc)
Did some more testing. Display fails to come up in 8 bit mode as well.
When rebooting, sequence seen is...
- console messages on left display until time to start X server
- all three displays blank for a short period
- all three displays gray for a short period
- left and center displays black, right display has white horizontal bar
We apparently need a fix to this (or another bug - will submit shortly) to
support capture / display of video on the multihead machine.
We don't have the hardware, Savage expertise, or documentation to debug or
troubleshoot this issue. The Savage driver maintainer Tim Roberts is
about the best way to try to get this fixed if possible. You can contact
him via the email@example.com mailing list.