Bug 1759

Summary: XtVaGetValues core dump on x86_64
Product: xorg Reporter: Carl Nygard <cjnygard>
Component: Lib/XtAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED NOTABUG QA Contact:
Severity: critical    
Priority: high CC: eich, roland.mainz, sndirsch
Version: 6.7.0   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
code to reproduce the core dump none

Description Carl Nygard 2004-11-01 15:12:03 UTC
I'm having curious problems with XtVaGetValues (and also by extension
XtVaCreatePopupShell) on x86_64, it keeps core dumping.  Here's a stacktrace:

(gdb) where#0  0x00000037c3f48c43 in _XtCountVaList () from
/usr/X11R6/lib64/libXt.so.6#1  0x00000037c3f48746 in XtVaGetValues () from
/usr/X11R6/lib64/libXt.so.6#2  0x0000000000400dd4 in main (argc=1,
argv=0x7fbffff768) at motifbug.cxx:26
(gdb)

packages come from Fedora Core2:
[mwsadm@fims64 hdfloader]$ rpm -qa "xorg*"
xorg-x11-tools-6.7.0-2
xorg-x11-xauth-6.7.0-2
xorg-x11-75dpi-fonts-6.7.0-2
xorg-x11-Mesa-libGL-6.7.0-2
xorg-x11-font-utils-6.7.0-2
xorg-x11-base-fonts-6.7.0-2
xorg-x11-libs-6.7.0-2
xorg-x11-Mesa-libGL-6.7.0-2
xorg-x11-xfs-6.7.0-2
xorg-x11-6.7.0-2
xorg-x11-libs-data-6.7.0-2
xorg-x11-libs-6.7.0-2
xorg-x11-100dpi-fonts-6.7.0-2
xorg-x11-Mesa-libGLU-6.7.0-2
xorg-x11-twm-6.7.0-2
xorg-x11-devel-6.7.0-2
xorg-x11-Mesa-libGLU-6.7.0-2

Attached is the code to reproduce the bug in a simple pure-X/Motif test code,
compiled via:

g++ -g -o motifbug motifbug.cxx -L /usr/X11R6/lib64 -lXm -lXt

This generates an X warning.  Whatever.  Add -DDUMP to the cmd line and it will
coredump on the XtVaGetValues function.  What gives?  #ifdef'ing a function that
comes *after* the location of the core matters?  I know X is asynchronous but
that seems to indicate a compiler problem???

I don't rule out user error, like improper compiler flags, but the example is
really simple, so I don't see how.
Comment 1 Carl Nygard 2004-11-01 15:15:35 UTC
Created attachment 1206 [details]
code to reproduce the core dump

compile via:
g++ -g -o motifbug motifbug.cxx -L /usr/X11R6/lib64 -lXm -lXt

for core:
g++ -DDUMP -g -o motifbug motifbug.cxx -L /usr/X11R6/lib64 -lXm -lXt
Comment 2 Carl Nygard 2004-11-01 15:27:59 UTC
Lest one thinks this is related to g++, I C-ified the example and the core trace
was identical.

I've tried getting better debug, but the Fedora x86_64 debug package list
doesn't include any of the xorg packages.
Comment 3 Roland Mainz 2004-11-02 15:16:45 UTC
Egbert:
Can you reproduce the crash on SuSE 9.2/x86_64 ?
Comment 4 Carl Nygard 2005-01-01 15:55:46 UTC
Any progress on this bug?
Comment 5 Roland Mainz 2005-01-02 15:50:57 UTC
Carl Nygard wrote:
> Any progress on this bug?

Well, we need someone with Linux x86/64 who can reproduce the problem...
Comment 6 Carl Nygard 2005-01-04 16:25:17 UTC
Is there somewhere I can get debuginfo rpms for x86_64?  For FC3? (or even FC2)
Comment 7 Carl Nygard 2005-01-05 15:31:14 UTC
The code used 0 to terminate the varargs list, which doesn't fly well in x86_64
land.  switching to NULL or (void*)0 works fine.

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.