2025-07-20 05:35 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0001048Spring engineLinuxpublic2008-10-06 20:12
Reporterwatahu 
Assigned Tozerver 
PrioritynormalSeveritycrashReproducibilityalways
StatusresolvedResolutionfixed 
Product Version0.76b1+svn 
Target VersionFixed in Version0.76b1+svn 
Summary0001048: crash with SIGSEGV (0x084210fe in get_threadnum ())
Descriptionr6439, ubuntu

spring crashes after starting whit SIGSEGV (0x084210fe in get_threadnum ())
Additional Information[New Thread 0xb59ed6e0 (LWP 10952)]
[New Thread 0xb5866b90 (LWP 10955)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb59ed6e0 (LWP 10952)]
0x084210fe in get_threadnum ()
(gdb) bt full
#0 0x084210fe in get_threadnum ()
No locals.
#1 0x08426db3 in gmlClearStencil ()
No locals.
#2 0x084256dd in SpringApp::SetSDLVideoMode ()
No locals.
0000003 0x0842581c in SpringApp::InitWindow ()
No locals.
0000004 0x084259ae in SpringApp::Initialize ()
No locals.
0000005 0x084265e8 in SpringApp::Run ()
No locals.
#6 0x08420ec4 in Run ()
No locals.
#7 0x08420f20 in main ()
No locals.
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes

~0002597

zerver (reporter)

Does it work better now?

GML for Linux is supposed to use a library called speedy_tls.
There was a bug, so the library was not actually being used.
But it should be now...

I downloaded this free library from the web, so I have no idea if it works or not.
I have no Linux machine ATM so I cannot debug this. If someone has Linux skills, feel free to help.

~0002614

watahu (reporter)

Same problem on HEAD, (i tested 6442 and 6448, the last working was 6391)

But i will test it on a other ubuntu machine in the next days, if it is a problem with the lib on this system.

~0002620

zerver (reporter)

According to the library docs, it must be compiled with flag -mno-tls-direct-seg-refs.
http://www.kevinjhoffman.com/speedy-tls/
I have now added this flag to SCons, so you could try reconfigure+rebuild and see if it helps.

~0002621

imbaczek (reporter)

shouldn't the flags be added only on non-windows OSes?

~0002622

Auswaschbar (reporter)

And isn't it only gml which needs to be compield with this flag?

~0002623

zerver (reporter)

I'm using a similar technique for windows too - fast TLS by directly accessing the FS/GS registers. So I believe it is safest to specify this flag no matter what, so that GCC does not use these registers for some internal TLS stuff.

The flag is only set when compiling with gml=yes. All files being compiled will need the flag though, to make sure that nothing else interferes.

~0002698

zerver (reporter)

See 0001063
+Notes

-Issue History
Date Modified Username Field Change
2008-09-19 21:05 watahu New Issue
2008-09-20 01:25 zerver Note Added: 0002597
2008-09-23 20:16 watahu Note Added: 0002614
2008-09-25 17:45 zerver Note Added: 0002620
2008-09-25 22:06 imbaczek Note Added: 0002621
2008-09-25 23:56 Auswaschbar Note Added: 0002622
2008-09-27 01:30 zerver Note Added: 0002623
2008-10-06 20:12 zerver Status new => resolved
2008-10-06 20:12 zerver Fixed in Version => 0.76b1+svn
2008-10-06 20:12 zerver Resolution open => fixed
2008-10-06 20:12 zerver Assigned To => zerver
2008-10-06 20:12 zerver Note Added: 0002698
+Issue History