Bug 1918 - Xprt crashes on amd64 (x86-64)
Summary: Xprt crashes on amd64 (x86-64)
Status: RESOLVED FIXED
Alias: None
Product: xprint
Classification: Unclassified
Component: Server: Other (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: high normal
Assignee: Roland Mainz
QA Contact:
URL: http://bugs.debian.org/cgi-bin/bugrep...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-24 15:41 UTC by Drew Parsons
Modified: 2005-03-10 14:18 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Xalloc declarations wrong (995 bytes, patch)
2004-11-25 06:14 UTC, Kåre Hviid
no flags Details | Splinter Review

Description Drew Parsons 2004-11-24 15:41:11 UTC
Debian has an unreleased port underway to amd64 (x86-64).

One of our users reports that Xprt crashes when compiled and run in 64-bit mode,
see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=278510

Could the bug be related to the compiler warnings?, such as:
cfb8segC.c: I funktion `cfb32SegmentSS1RectCopy':
cfb8segC.c:476: varning: cast from pointer to integer of different size


gdb says:

(gdb) r
Starting program: /usr/bin/Xprt 

Program received signal SIGSEGV, Segmentation fault.
0x0000002a95869f11 in free () from /lib/libc.so.6
(gdb) bt
#0  0x0000002a95869f11 in free () from /lib/libc.so.6
#1  0x0000000000406645 in AlterSaveSetForClient ()
#2  0x00000000004a11ea in MediumDiscreteSizeListParse ()
#3  0x000000000042c53f in WaitForSomething ()
#4  0x000000000041ff64 in Dispatch ()
#5  0x000000000040e8ac in main ()




A section of the strace looks like:

open("/usr/X11R6/lib/X11/fonts/100dpi/fonts.alias", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3302, ...}) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=3302, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a955a4000
read(3, "!! fonts.alias -- automatically "..., 4096) = 3302
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x2a955a4000, 4096)              = 0
brk(0)                                  = 0xbd1000
brk(0xbfa000)                           = 0xbfa000
brk(0)                                  = 0xbfa000
brk(0)                                  = 0xbfa000
brk(0xbea000)                           = 0xbea000
brk(0)                                  = 0xbea000
open("/usr/X11R6/lib/X11/fonts/misc/6x13-ISO8859-1.pcf.gz", O_RDONLY) = 3
read(3, "\37\213\10\0f\233ZA\0\3\355\234\177x\24\307y\307\277\2"..., 8192) = 4366
read(3, "", 8192)                       = 0
close(3)                                = 0
open("/usr/X11R6/lib/X11/fonts/misc/cursor.pcf.gz", O_RDONLY) = 3
read(3, "\37\213\10\0o\233ZA\0\3\355\233\177pT\327u\307\317JB\22"..., 8192) = 5094
read(3, "", 8192)                       = 0
close(3)                                = 0
mmap(NULL, 233472, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a955a4000
munmap(0x2a955a4000, 233472)            = 0
mmap(NULL, 233472, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a955a4000
munmap(0x2a955a4000, 233472)            = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Comment 1 Kåre Hviid 2004-11-25 06:14:40 UTC
Created attachment 1371 [details] [review]
Xalloc declarations wrong

This fast fix allows us to get slightly longer, but Xprt now crashes at another
stage - any ideas?  I'm running in a gcc 3.4 environment, btw.

Program received signal SIGSEGV, Segmentation fault.
0x0000000000407b79 in LookupClient (rid=5161623, client=0x7fbffff6f0) at
dixutils.c:316
316		return clients[clientIndex];
(gdb) bt
#0  0x0000000000407b79 in LookupClient (rid=5161623, client=0x7fbffff6f0) at
dixutils.c:316
#1  0x0000000000407e9a in BlockHandler (pTimeout=0x7fbffff578,
pReadmask=0xb50dc0) at dixutils.c:431
#2  0x0000000000444d87 in WaitForSomething (pClientsReady=0x7fbffff5b0) at
WaitFor.c:304
#3  0x0000000000430f0a in Dispatch () at dispatch.c:253
#4  0x000000000041379f in main (argc=10, argv=0x7fbffffb18) at main.c:364
Comment 2 Kåre Hviid 2004-11-25 06:27:10 UTC
Please ignore my "Xalloc" patch - it looks like the segfault occurs at different
places, depending on the compiler used.  (I'm using gcc-3.4.3.)
Comment 3 Anders Boström 2004-12-09 01:12:59 UTC
The new experimental debian-version, 0.1.0.alpha1-1, works under
amd64 with mozilla 1.7.3 , so the amd64-problem seems to be fixed in
the 010+ cvs-tree!
Comment 4 Roland Mainz 2005-03-11 09:18:36 UTC
(In reply to comment #3)
> The new experimental debian-version, 0.1.0.alpha1-1, works under
> amd64 with mozilla 1.7.3 , so the amd64-problem seems to be fixed in
> the 010+ cvs-tree!

I got the same confirmation from Suse/AMD64 so I am marking this issue as FIXED.


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.