Bug 88914 - The Talos Principle crash on alt-tab switching
Summary: The Talos Principle crash on alt-tab switching
Status: RESOLVED NOTOURBUG
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Ian Romanick
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-02-02 08:14 UTC by Md Imam Hossain
Modified: 2017-09-11 08:37 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Md Imam Hossain 2015-02-02 08:14:23 UTC
The Talos Principle

http://store.steampowered.com/app/257510/

when run on Intel Bay Trail, gives the following terminal output:

WRN:  CPU Power saving is enabled and performance governor is not used.
INF:  Encoded user ID = 5e0fcd6f:273234ea
INF:  
INF:  * Desktop settings...
INF:  Color depth: 32-bit
INF:  Desktop resolution: 1366 x 768
INF:  [OpenGL] Detected GLSL 1.30
WRN:  [OpenGL] "GL_ARB_get_program_binary" extension is present but not used because no binary formats are exposed.
WRN:  [OpenGL] Unable to determine VRAM size... assuming 512 MB.
INF:  
INF:  Gfx API: OpenGL
INF:  Resolution: 800 x 600
INF:  Vendor: Intel (0x8086)
INF:  Driver: Intel Open Source Technology Center (0x0F31)
INF:  Renderer: Mesa DRI Intel(R) Bay Trail x86/MMX/SSE2
INF:  Version: 3.0 Mesa 10.5.0-devel (git-6094619 2015-01-31 utopic-oibaf-ppa)
INF:  Video memory size: 512 MB
INF:  Available for textures: 512 MB
INF:  Shader model version: 3.1
INF:  Active GPU(s): 1
INF:  Allowed memory size used for streaming: 256.0 MB
INF:  Unable to check for correct version of display driver!
WRN:  Unknown number of speakers, defaulting to stereo output
ERR:  Error occured during thread priority setting. (Error: 13 - Permission denied)
INF:  
INF:  Sfx API: OpenAL
INF:  Software mixer: enabled
INF:  Current device: OpenAL Soft (OpenAL Soft)
INF:  Available devices:
INF:   0: OpenAL Soft (OpenAL Soft)
INF:  Mixer frequency: 44100 Hz
INF:  Mixer voices: 0
INF:  Max sound sources: 15
INF:  Max total volume: 3
INF:  Speaker config: (unknown)
INF:  Environment FX: enabled
INF:  Current environment: Padded cell
INF:  
INF:  HTTP request failed.
INF:  AutoDetect: Hardware values unchanged, nothing to do.
INF:  [OpenGL] Detected GLSL 1.30
WRN:  [OpenGL] "GL_ARB_get_program_binary" extension is present but not used because no binary formats are exposed.
WRN:  [OpenGL] Unable to determine VRAM size... assuming 512 MB.
INF:  
INF:  Gfx API: OpenGL
INF:  Resolution: 800 x 600
INF:  Vendor: Intel (0x8086)
INF:  Driver: Intel Open Source Technology Center (0x0F31)
INF:  Renderer: Mesa DRI Intel(R) Bay Trail x86/MMX/SSE2
INF:  Version: 3.0 Mesa 10.5.0-devel (git-6094619 2015-01-31 utopic-oibaf-ppa)
INF:  Video memory size: 512 MB
INF:  Available for textures: 512 MB
INF:  Shader model version: 3.1
INF:  Active GPU(s): 1
INF:  Allowed memory size used for streaming: 256.0 MB
INF:  Crash! (Segmentation fault)
Segmentation fault (core dumped)

I can run the game but sometimes get Segfault like above terminal output. From the terminal output you can see the game can not determine video ram size,

WRN:  [OpenGL] Unable to determine VRAM size... assuming 512 MB.

System:

Intel(R) Celeron(R) CPU  N2840  @ 2.16GHz
RAM: 4GB

Kubuntu 14.10
Linux kernel 3.18.5-031805-lowlatency
Mesa git-6094619 2015-01-31 utopic-oibaf-ppa

X.Org X Server 1.16.0

tested GPU

Intel Bay Trail, device id: 0f31
Comment 1 Tapani Pälli 2015-02-02 09:16:35 UTC
If possible, please attach a gdb backtrace output from the crash.
Comment 2 Md Imam Hossain 2015-02-02 12:40:29 UTC
I am afraid, the game does not get segfault all the time. I have run the game several times so far with only one segfault while launching when I switch the game using Alt+Tab. Which command combination should I use for gdb backtrace? I might will give it another try
Comment 3 Tapani Pälli 2015-02-03 08:05:36 UTC
(In reply to Md Imam Hossain from comment #2)
> I am afraid, the game does not get segfault all the time. I have run the
> game several times so far with only one segfault while launching when I
> switch the game using Alt+Tab. Which command combination should I use for
> gdb backtrace? I might will give it another try

I usually launch a separate terminal window and then attach to the running game with gdb.

gdb -p <game process id>
'c' to continue

then go back to game and try to make it crash. When crashing switch back to the terminal window and check the backtrace with 'bt full'.
Comment 4 Md Imam Hossain 2015-02-03 08:44:56 UTC
(gdb) bt full                                                                   
#0  0xf5397460 in ?? ()                                                         
No symbol table info available.                                                 
#1  0xf558547b in _XEnq () from /usr/lib/i386-linux-gnu/libX11.so.6             
No symbol table info available.                                                 
#2  0xf55823ae in ?? () from /usr/lib/i386-linux-gnu/libX11.so.6                
No symbol table info available.                                                 
#3  0xf5583256 in _XReply () from /usr/lib/i386-linux-gnu/libX11.so.6           
No symbol table info available.                                                 
#4  0xf54f934c in ?? () from /usr/lib/i386-linux-gnu/libXrandr.so.2
No symbol table info available.
#5  0x09581788 in ?? ()
No symbol table info available.
#6  0x09586562 in ?? ()
No symbol table info available.
#7  0x0963d8cb in ?? ()
No symbol table info available.
#8  0x090ae4c1 in ?? ()
No symbol table info available.
#9  0x084f8b60 in ?? ()
No symbol table info available.
#10 0x084f90a3 in ?? ()
No symbol table info available.
#11 0x084f9fd3 in ?? ()
No symbol table info available.
#12 0x0902c402 in ?? ()
No symbol table info available.
#13 0x0948d6a9 in ?? ()
No symbol table info available.
#14 0x0948daf8 in ?? ()
No symbol table info available.
#15 0x080500eb in ?? ()
No symbol table info available.
#16 0xf7d17a83 in __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
No symbol table info available.
#17 0x084e7165 in ?? ()
No symbol table info available.

The game seems to crash only when I use Alt+Tab and the game tries to restore game resolution. Which may be different issue than this bug.
Comment 5 Md Imam Hossain 2015-02-03 08:45:38 UTC
(gdb) c
Continuing.
INF:  Crash! (Segmentation fault)

Program received signal SIGSEGV, Segmentation fault.
0xf7bff92e in ?? () from /lib/i386-linux-gnu/libgcc_s.so.1
Comment 6 Md Imam Hossain 2015-02-03 08:45:54 UTC
(gdb) c
Continuing.
[Thread 0xf2efbb40 (LWP 3698) exited]
[Thread 0xf7accb40 (LWP 3685) exited]
[Thread 0xe1e0cb40 (LWP 3724) exited]
[Thread 0xed1f1b40 (LWP 3701) exited]
[Thread 0xee3deb40 (LWP 3700) exited]
[Thread 0xee4ffb40 (LWP 3699) exited]
[Thread 0xf61a9b40 (LWP 3688) exited]
[Thread 0xf6acab40 (LWP 3687) exited]
[Thread 0xf72cbb40 (LWP 3686) exited]
[Thread 0xec990b40 (LWP 3702) exited]

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
Comment 7 Ian Romanick 2015-02-11 22:26:01 UTC
The game just doesn't know how to determine the available memory on Intel drivers.  That has nothing to do with the crash.

The backtrace in comment #4 is not in the application or in the OpenGL driver.  It's down in libX11 from libXrandr.  I don't think this has anything to do with the 3D driver.  It's most likely either a bug of some sort in the game, the window manager, or the 2D driver.

Chris, do you have any thoughts?
Comment 8 Eero Tamminen 2017-09-11 08:21:05 UTC
(In reply to Ian Romanick from comment #7)
> The game just doesn't know how to determine the available memory on Intel
> drivers.  That has nothing to do with the crash.
> 
> The backtrace in comment #4 is not in the application or in the OpenGL
> driver.  It's down in libX11 from libXrandr.  I don't think this has
> anything to do with the 3D driver.  It's most likely either a bug of some
> sort in the game, the window manager, or the 2D driver.
> 
> Chris, do you have any thoughts?

-> NOTOURBUG?
Comment 9 Chris Wilson 2017-09-11 08:37:53 UTC
Peculiar memory corruption is all that I can think of to explain crashing inside _XEnq; that Display was sufficiently intact to get that far before exploding is odd... Unless they are using the Display from multiple threads and haven't called XInitThreads. That's more likely than a carefully timed and precise stray write.


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.