Bug 101881

Summary: [regression] 32bit steam games segfault when launched with DRI_PRIME=1
Product: Mesa Reporter: Mike Lothian <mike>
Component: Drivers/Gallium/radeonsiAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED NOTOURBUG QA Contact: Default DRI bug account <dri-devel>
Severity: normal    
Priority: medium CC: mike
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Mike Lothian 2017-07-23 00:00:35 UTC
So far:

LLVM Master & Mesa Master fail
LLVM Master & Mesa 17.1.5 (won't compile)
LLVM 4.0.1  & Mesa Master works (gallium hud renders strangely - no plot)
LLVM 4.0.1  & Mesa 17.1.5 works

This is a Tonga M395X, nothing shows up in dmesg or the logs
Comment 1 Mike Lothian 2017-07-23 00:07:03 UTC
I tried adding a borderlands 2 core dump but it was too big popped it on Google Drive: https://drive.google.com/a/fireburn.co.uk/file/d/0BySKFkadlRnpTEhWbVp2SV9jNHc/view?usp=sharing

Games I've seen issues with Borderlands 2, BioShock Infinite, Civilization 6, Tomb Raider

I can try bisecting LLVM, but it takes forever to compile, is there anything else I can do in the mean time?

I don't think this is related to Bug 101876, reverting 5124bf982393114862f44ee62fa361027faa7c29 makes no difference
Comment 2 Mike Lothian 2017-07-23 10:59:05 UTC
Sorry Civ 6 works fine

Interestingly the Talos Principle works fine in 64bit for OpenGL and Vulkan but fails to start in 32bit for either of them


Under Vulkan:


WARNING: radv is not a conformant vulkan implementation, testing use only.
mesa: for the -simplifycfg-sink-common option: may only occur zero or one times!
WRN:  CPU Power saving is enabled and performance governor is not used.
INF:  Encoded user ID = 39aefb47:1ca480c0
INF:  
INF:  * Desktop settings...
INF:  Color depth: 32-bit
INF:  Desktop resolution: 3840 x 2160
INF:  [Vulkan] Detected devices:
INF:    #0 (0x0BAD2488): Intel(R) HD Graphics 530 (Skylake GT2) (integrated)
INF:    #1 (0x0BB6B258): AMD RADV TONGA (discrete)
INF:  Using device #1 (0x0BB6B258)...
INF:  Crash! (Segmentation fault)
DBG:  
DBG:  //=====================================================
DBG:  Report generated at: unsupported unsupported
DBG:  Version: $Version: Talos_PC_distro; Talos_Executables-Linux-Final; 301136 2017-04-18 15:11:57 @builderl01; Linux-x86-Static-Final-Default$
DBG:  Build type: Linux-x86-Static-Final-Default
DBG:  Dump type: Crash
DBG:  
DBG:  Received signal 11 (Segmentation fault).
DBG:  
DBG:  Dumping registers:
DBG:  EAX:000000FF
DBG:  EBX:000000FF
DBG:  ECX:00000020
DBG:  EDX:FF943D14
DBG:  ESI:FFFFFF00
DBG:  EDI:00000000
DBG:  CS:EIP:0023:EE369077
DBG:  SS:ESP:002B:FF943870  EBP:FF943938
DBG:  
DBG:  Dumping stack back trace:
DBG:  EE369077 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000C7077
DBG:  EE369077 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000C7077
DBG:  EE36B14F 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000C914F
DBG:  EE370BB0 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000CEBB0
DBG:  EE36D38D 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000CB38D
DBG:  EE37012B 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000CE12B
DBG:  EE361390 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000BF390
DBG:  EE3621FC 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000C01FC
DBG:  EE2C81B7 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000261B7
DBG:  EE2C97A3 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:000277A3
DBG:  EE2C9AD8 00000001 $adr: "/usr/lib/llvm/5/lib32/../lib32/libLLVMInstCombine.so.6" 0001:00027AD8
DBG:  EF2F96F9 00000001 $adr: "/usr/lib/llvm/5/lib32/libLLVMCore.so.6" 0001:001626F9
DBG:  EF2F9830 00000001 $adr: "/usr/lib/llvm/5/lib32/libLLVMCore.so.6" 0001:00162830
DBG:  EF2F9B2F 00000001 $adr: "/usr/lib/llvm/5/lib32/libLLVMCore.so.6" 0001:00162B2F
DBG:  EF267AEC 00000001 $adr: "/usr/lib/llvm/5/lib32/libLLVMCore.so.6" 0001:000D0AEC
DBG:  E7EA94A0 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:000724A0
DBG:  E7EB5220 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:0007E220
DBG:  E7EB6344 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:0007F344
DBG:  E7E8123B 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:0004A23B
DBG:  E7E8199F 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:0004A99F
DBG:  E7E8267B 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:0004B67B
DBG:  E7E83FC0 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:0004CFC0
DBG:  E7E752AC 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:0003E2AC
DBG:  E7E77C5A 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:00040C5A
DBG:  E7E59C5B 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:00022C5B
DBG:  E7E4EB63 00000001 $adr: "/usr/lib32/libvulkan_radeon.so" 0001:00017B63
DBG:  E8A9FF79 00000001 $adr: "/usr/lib32/libvulkan.so.1" 0001:0000CF79
DBG:  E8B08FAE 00000001 $adr: "/home/fireburn/.local/share/Steam/ubuntu12_32/steamoverlayvulkanlayer.so" 0001:00004FAE
DBG:  E8AA6B4D 00000001 $adr: "/usr/lib32/libvulkan.so.1" 0001:00013B4D
DBG:  E8AA8CD5 00000001 $adr: "/usr/lib32/libvulkan.so.1" 0001:00015CD5
DBG:  0978ED83 00000001 $adr: "/home/fireburn/.local/share/Steam/steamapps/common/The Talos Principle/Bin/Talos" 0001:01746D83
DBG:  09793A63 00000001 $adr: "/home/fireburn/.local/share/Steam/steamapps/common/The Talos Principle/Bin/Talos" 0001:0174BA63
DBG:  093859B0 00000001 $adr: "/home/fireburn/.local/share/Steam/steamapps/common/The Talos Principle/Bin/Talos" 0001:0Game removed: AppID 257510 "The Talos Principle", ProcID 17311 
No cached sticky mapping in ActivateActionSet.Generating new string page texture 201: 256x256, total string texture memory is 5.42 MB
Generating new string page texture 347: 256x256, total string texture memory is 5.69 MB
Installing breakpad exception handler for appid(steam)/version(1500335472)



Under OpenGL:

Game update: AppID 257510 "The Talos Principle", ProcID 17502, IP 0.0.0.0:0
>>> Adding process 17502 for game ID 257510
GameAction [AppID 257510, ActionID 6] : LaunchApp changed task to WaitingGameWindow with ""
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
GameAction [AppID 257510, ActionID 6] : LaunchApp changed task to Completed with ""
>>> Adding process 17503 for game ID 257510
Steam: An X Error occurred
X Error of failed request:  BadWindow (invalid Window parameter)
Major opcode of failed request:  40 (X_TranslateCoords)
Resource id in failed request:  0x5820775
Serial number of failed request:  10951
xerror_handler: X failed, continuing
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 17505 for game ID 257510
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 17508 != 17505, skipping destruction (fork without exec?)
pid 17511 != 17505, skipping destruction (fork without exec?)
pid 17514 != 17505, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 17513 != 17505, skipping destruction (fork without exec?)
pid 17517 != 17505, skipping destruction (fork without exec?)
>>> Adding process 17506 for game ID 257510
>>> Adding process 17507 for game ID 257510
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 17516 != 17505, skipping destruction (fork without exec?)
pid 17520 != 17505, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 17519 != 17505, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 17509 for game ID 257510
>>> Adding process 17510 for game ID 257510
cat: /etc/debian_version: No such file or directory
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/fireburn/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 17512 for game ID 257510
>>> Adding process 17515 for game ID 257510
Game update: AppID 257510 "The Talos Principle", ProcID 17503, IP 0.0.0.0:0
Setting breakpad minidump AppID = 257510
Steam_SetMinidumpSteamID:  Caching Steam ID:  76561197968895261 [API loaded no]
>>> Adding process 17518 for game ID 257510
>>> Adding process 17521 for game ID 257510
>>> Adding process 17522 for game ID 257510
>>> Adding process 17523 for game ID 257510
>>> Adding process 17524 for game ID 257510
>>> Adding process 17525 for game ID 257510
Installing breakpad exception handler for appid(gameoverlayui)/version(20170717231013)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Game removed: AppID 257510 "The Talos Principle", ProcID 17503 
No cached sticky mapping in ActivateActionSet.[0723/115655.038292:ERROR:web_plugin_impl.cc(38)] Widevine registration is not supported after context initialization
Comment 3 Mike Lothian 2017-07-23 13:08:26 UTC
I've switched on debugging and the issue has gone away, will check to see if this is been fixed upstream, or if having debugging sidesteps the issue
Comment 4 Mike Lothian 2017-07-23 22:58:12 UTC
So this only seems to happen if I compile LLVM with GCC 7.1, I don't see the issue if it's compiled with Clang. The problem also goes away when I compile with debugging on
Comment 5 Rafael Ristovski 2017-07-29 14:17:38 UTC
I can confirm a very similar issue on my SI Cape Verde (HD8850M GCN1.0) using the amdgpu driver with mesa. It happens even if I compile mesa's `xdemos` with -m32 in which case most of the binaries produce a segfault pointing to drmGetVersion().

Can you confirm the same thing on your end?
Steps to reproduce:

1) Compile xdemos with -m32
2) Load `glthreads` in gdb
3) Switch DRI on inside gdb via 'set environment DRI_prime=1'
4) After you run the program ('r'), and it segfaults, try and see what 'bt' produces.

For me its the following:

#0  0xf7a9c001 in ?? () from /lib32/libc.so.6
#1  0xf7a9bceb in strdup () from /lib32/libc.so.6
#2  0xf7735c55 in drmGetVersion () from /usr/lib32/libdrm.so.2
#3  0xf71a1acc in amdgpu_winsys_create () from /usr/lib32/dri/radeonsi_dri.so
#4  0xf69152d8 in ?? () from /usr/lib32/dri/radeonsi_dri.so
#5  0xf6de8238 in ?? () from /usr/lib32/dri/radeonsi_dri.so
#6  0xf6de2eb3 in ?? () from /usr/lib32/dri/radeonsi_dri.so
#7  0xf7e0f0c5 in ?? () from /usr/lib32/libGL.so.1
#8  0xf7de040c in ?? () from /usr/lib32/libGL.so.1
#9  0xf7dde789 in glXChooseVisual () from /usr/lib32/libGL.so.1
#10 0x0804a483 in create_window ()
#11 0x0804abe9 in main ()

Note 64bit binaries work flawlessly.
Using gcc 8 alpha here.
Comment 6 Rafael Ristovski 2017-07-29 14:21:53 UTC
Also, the llvm issue indeed goes away when adding debug support.
I think this might be related to a race condition caused by recent versions of gcc.
Comment 7 Michel Dänzer 2017-07-31 01:55:49 UTC
(In reply to Rafael Ristovski from comment #5)
> #0  0xf7a9c001 in ?? () from /lib32/libc.so.6
> #1  0xf7a9bceb in strdup () from /lib32/libc.so.6
> #2  0xf7735c55 in drmGetVersion () from /usr/lib32/libdrm.so.2

This looks like a known regression in the kernel's core DRM code, fixed in newer kernels.
Comment 8 Mike Lothian 2017-07-31 07:28:24 UTC
I'm running the latest agd5f's 4.14-wip branch, is that not new enough?
Comment 9 Michel Dänzer 2017-07-31 07:39:41 UTC
(In reply to Mike Lothian from comment #8)
> I'm running the latest agd5f's 4.14-wip branch, is that not new enough?

That branch might not have the fix for the 32-bit drmGetVersion regression yet, and I don't think that alone explains your issues anyway.
Comment 10 Mike Lothian 2017-07-31 08:13:28 UTC
Which branch would you recommend?
Comment 11 Mike Lothian 2017-08-04 06:57:44 UTC
So I think I've tracked this down

LLVM GCC 6.3.0 & Mesa GCC 6.3.0 Works
LLVM GCC 6.3.0 & Mesa GCC 7.1.0 Broken
LLVM GCC 7.1.0 & Mesa GCC 6.3.0 Works
LLVM GCC 7.1.0 & Mesa GCC 7.1.0 Broken

I'm not sure why compiling Mesa with GCC 7.1.0 breaks 32bit rendering on just radeonsi

GCC 7.2.0 is released in a week or so, I'll retest then
Comment 12 Mike Lothian 2017-08-04 07:02:21 UTC
Hmm and I'm now seeing this in my dmesg when trying to launch Borderlands 2

[26293.375658] si_shader:1[28310]: segfault at 5 ip 00000000f2964d87 sp 00000000f0cc3700 error 4 in libLLVMInstCombine.so.6.0.0svn[f28a2000+f5000]
[26299.533379] ------------[ cut here ]------------
[26299.533394] WARNING: CPU: 6 PID: 24348 at dm_suspend+0x49/0x50
[26299.533397] Modules linked in:
[26299.533404] CPU: 6 PID: 24348 Comm: kworker/6:0 Tainted: G        W       4.13.0-rc2-dc+ #1
[26299.533407] Hardware name: Alienware Alienware 15 R2/0H6J09, BIOS 1.3.10 12/12/2016
[26299.533413] Workqueue: pm pm_runtime_work
[26299.533417] task: ffff88086fb08000 task.stack: ffffc9000b174000
[26299.533423] RIP: 0010:dm_suspend+0x49/0x50
[26299.533426] RSP: 0018:ffffc9000b177cb0 EFLAGS: 00010282
[26299.533429] RAX: 0000000000000000 RBX: ffff88089cad0000 RCX: 0000000000000000
[26299.533432] RDX: 0000000000000001 RSI: 0000000000000246 RDI: ffff88089cad9168
[26299.533435] RBP: 0000000000000003 R08: 000000000001d8e0 R09: ffffea0016638000
[26299.533437] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88089cad0000
[26299.533439] R13: ffffffff8200b700 R14: 0000000000000000 R15: ffff88089c91ab30
[26299.533443] FS:  0000000000000000(0000) GS:ffff8808c1d80000(0000) knlGS:0000000000000000
[26299.533446] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[26299.533449] CR2: 00007f2d92d83000 CR3: 000000000220a000 CR4: 00000000001406e0
[26299.533451] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[26299.533454] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[26299.533456] Call Trace:
[26299.533463]  ? amdgpu_suspend+0x5a/0x140
[26299.533467]  ? amdgpu_device_suspend+0x1eb/0x3a0
[26299.533472]  ? enqueue_hrtimer+0x32/0x80
[26299.533478]  ? vga_switcheroo_runtime_resume+0x50/0x50
[26299.533484]  ? amdgpu_pmops_runtime_suspend+0x4d/0xc0
[26299.533490]  ? pci_pm_runtime_suspend+0x57/0x130
[26299.533496]  ? vga_switcheroo_runtime_resume+0x50/0x50
[26299.533502]  ? vga_switcheroo_runtime_suspend+0x19/0x90
[26299.533506]  ? __rpm_callback+0xb5/0x1e0
[26299.533511]  ? vga_switcheroo_runtime_resume+0x50/0x50
[26299.533515]  ? rpm_callback+0x1a/0x70
[26299.533521]  ? vga_switcheroo_runtime_resume+0x50/0x50
[26299.533524]  ? rpm_suspend+0x117/0x5f0
[26299.533529]  ? pm_runtime_work+0x58/0x80
[26299.533534]  ? process_one_work+0x1d5/0x3d0
[26299.533539]  ? worker_thread+0x42/0x3c0
[26299.533544]  ? cancel_delayed_work_sync+0x10/0x10
[26299.533548]  ? kthread+0x113/0x130
[26299.533551]  ? kthread_create_on_node+0x40/0x40
[26299.533557]  ? do_group_exit+0x35/0xa0
[26299.533563]  ? ret_from_fork+0x22/0x30
[26299.533565] Code: 91 00 00 00 75 25 48 8b 7b 08 e8 33 47 f1 ff 48 8b bb 78 7a 00 00 48 89 83 e0 91 00 00 be 08 00 00 00 e8 6b 74 04 00 31 c0 5b c3 <0f> ff eb d7 0f 1f 00 41 56 41 55 31 f6 41 54 55 53 48 8b 6f 08 
[26299.533618] ---[ end trace bb8c8d1a48bb06ff ]---

I'll try and figure out if that's LLVM or amd-staging-drm-next
Comment 13 Michel Dänzer 2017-08-04 07:20:31 UTC
(In reply to Mike Lothian from comment #12)
> I'll try and figure out if that's LLVM or amd-staging-drm-next

It's the kernel, a separate issue from the one this report is about.
Comment 14 Mike Lothian 2017-08-04 07:53:33 UTC
Borderlands 2 launches fine with both LLVM & Mesa are compiled with GCC 6.3.0
Comment 15 Mike Lothian 2017-08-08 01:04:34 UTC
I've tried compiling llvm & mesa with GCC 7.2 RC and now segfaults before the 32bit glxgears even starts, the 64bit continues to work

[26315.109875] si_shader:2[12348]: segfault at 5 ip 00000000f47f48d7 sp 00000000f23019c0 error 4 in libLLVMInstCombine.so.6.0.0svn[f472b000+fb000]
[26324.090845] si_shader:1[17010]: segfault at 5 ip 00000000f48688d7 sp 00000000f2b769c0 error 4 in libLLVMInstCombine.so.6.0.0svn[f479f000+fb000]
[26329.075853] si_shader:2[20080]: segfault at 5 ip 00000000f47bd8d7 sp 00000000f22ca9c0 error 4 in libLLVMInstCombine.so.6.0.0svn[f46f4000+fb000]
[26825.313615] si_shader:1[25200]: segfault at 5 ip 00000000f47af8d7 sp 00000000f2abd9a0 error 4 in libLLVMInstCombine.so.6.0.0svn[f46e6000+fb000]
[26832.463197] si_shader:2[25218]: segfault at 5 ip 00000000f48378d7 sp 00000000f23449a0 error 4 in libLLVMInstCombine.so.6.0.0svn[f476e000+fb000]
Comment 16 Gregor Münch 2017-08-08 08:42:27 UTC
Since you compile with -march=native and using Skylake, you might also hit:
https://bugs.freedesktop.org/show_bug.cgi?id=101484

Just a guess though.
Comment 17 Mike Lothian 2017-08-08 09:49:09 UTC
What arch would you recommend testing with?
Comment 18 Mike Lothian 2017-08-08 12:37:43 UTC
So with llvm only compiled with debugging switched on I get these stack traces when trying to launch glxgears (32bit)

fireburn@axion ~ $ DISPLAY=:0 DRI_PRIME=1 glxgears-x86
*** Error in `glxgears-x86': malloc(): memory corruption: 0xeef062a0 ***
======= Backtrace: =========
/lib32/libc.so.6(+0x6deb8)[0xf7a09eb8]
/lib32/libc.so.6(+0x75e94)[0xf7a11e94]
/lib32/libc.so.6(+0x7886a)[0xf7a1486a]
/lib32/libc.so.6(__libc_malloc+0x73)[0xf7a16043]
/usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/32/libstdc++.so.6(_Znwj+0x27)[0xf78260e7]
/usr/lib/llvm/6/lib32/libLLVMTarget.so.6(LLVMAddTargetLibraryInfo+0x34)[0xf5ed5b04]
/usr/lib32/dri/radeonsi_dri.so(+0x5025f7)[0xf70d25f7]
/usr/lib32/dri/radeonsi_dri.so(+0x4f8550)[0xf70c8550]
/usr/lib32/dri/radeonsi_dri.so(+0x511a62)[0xf70e1a62]
/usr/lib32/dri/radeonsi_dri.so(+0x30d4e0)[0xf6edd4e0]
/lib32/libpthread.so.0(+0x6572)[0xf767a572]
/lib32/libc.so.6(clone+0x66)[0xf7a93e66]
======= Memory map: ========
08048000-0804c000 r-xp 00000000 103:02 2125930                           /usr/bin/glxgears-x86
0804c000-0804d000 r--p 00003000 103:02 2125930                           /usr/bin/glxgears-x86
0804d000-0804e000 rw-p 00004000 103:02 2125930                           /usr/bin/glxgears-x86
09062000-0918f000 rw-p 00000000 00:00 0                                  [heap]
eef00000-eef21000 rw-p 00000000 00:00 0
eef21000-ef000000 ---p 00000000 00:00 0
ef000000-ef021000 rw-p 00000000 00:00 0
ef021000-ef100000 ---p 00000000 00:00 0
ef100000-ef200000 rw-s 100612000 00:06 1629                              /dev/dri/renderD128
ef200000-ef221000 rw-p 00000000 00:00 0
ef221000-ef300000 ---p 00000000 00:00 0
ef393000-ef3b4000 rw-p 00000000 00:00 0
ef3b4000-ef3b5000 ---p 00000000 00:00 0
ef3b5000-efbb5000 rw-p 00000000 00:00 0
efbb5000-efbd5000 rw-s 1004a3000 00:06 1629                              /dev/dri/renderD128
efbd5000-efbf5000 rw-s 100483000 00:06 1629                              /dev/dri/renderD128
efbf5000-efc15000 rw-s 100463000 00:06 1629                              /dev/dri/renderD128
efc15000-efc35000 rw-s 100443000 00:06 1629                              /dev/dri/renderD128
efc35000-efc36000 ---p 00000000 00:00 0
efc36000-f0436000 rw-p 00000000 00:00 0
f0436000-f0437000 ---p 00000000 00:00 0
f0437000-f0c37000 rw-p 00000000 00:00 0
f0c37000-f0c38000 ---p 00000000 00:00 0
f0c38000-f1438000 rw-p 00000000 00:00 0
f1438000-f1439000 ---p 00000000 00:00 0
f1439000-f1c39000 rw-p 00000000 00:00 0
f1c39000-f1c3a000 ---p 00000000 00:00 0
f1c3a000-f243a000 rw-p 00000000 00:00 0
f243a000-f243e000 r-xp 00000000 103:02 2027611                           /usr/lib32/libtxc_dxtn.so
f243e000-f243f000 r--p 00003000 103:02 2027611                           /usr/lib32/libtxc_dxtn.so
f243f000-f2440000 rw-p 00004000 103:02 2027611                           /usr/lib32/libtxc_dxtn.so
f2440000-f2441000 ---p 00000000 00:00 0
f2441000-f2c41000 rw-p 00000000 00:00 0
f2c41000-f2d82000 rw-s 00000000 103:03 32243724                          /home/fireburn/.cache/mesa/index
f2d82000-f2d8d000 r-xp 00000000 103:02 1572971                           /lib32/libnss_files-2.25.so
f2d8d000-f2d8e000 r--p 0000a000 103:02 1572971                           /lib32/libnss_files-2.25.so
f2d8e000-f2d8f000 rw-p 0000b000 103:02 1572971                           /lib32/libnss_files-2.25.so
f2d8f000-f2d9b000 r-xp 00000000 103:02 1573408                           /lib32/libnss_nis-2.25.so
f2d9b000-f2d9c000 r--p 0000b000 103:02 1573408                           /lib32/libnss_nis-2.25.so
f2d9c000-f2d9d000 rw-p 0000c000 103:02 1573408                           /lib32/libnss_nis-2.25.so
f2d9d000-f2db4000 r-xp 00000000 103:02 1573338                           /lib32/libnsl-2.25.so
f2db4000-f2db5000 r--p 00016000 103:02 1573338                           /lib32/libnsl-2.25.so
f2db5000-f2db6000 rw-p 00017000 103:02 1573338                           /lib32/libnsl-2.25.so
f2db6000-f2db8000 rw-p 00000000 00:00 0
f2db8000-f2dc0000 r-xp 00000000 103:02 1573337                           /lib32/libnss_compat-2.25.so
f2dc0000-f2dc1000 r--p 00007000 103:02 1573337                           /lib32/libnss_compat-2.25.so
f2dc1000-f2dc2000 rw-p 00008000 103:02 1573337                           /lib32/libnss_compat-2.25.so
f2dc2000-f2dc3000 ---p 00000000 00:00 0
f2dc3000-f35c3000 rw-p 00000000 00:00 0
f35c3000-f3629000 r-xp 00000000 103:02 2027917                           /usr/lib64/llvm/6/lib32/libLLVMAsmParser.so.6.0.0svn
f3629000-f362a000 r--p 00065000 103:02 2027917                           /usr/lib64/llvm/6/lib32/libLLVMAsmParser.so.6.0.0svn
f362a000-f362b000 rw-p 00066000 103:02 2027917                           /usr/lib64/llvm/6/lib32/libLLVMAsmParser.so.6.0.0svn
f362b000-f36cc000 r-xp 00000000 103:02 2013356                           /usr/lib64/llvm/6/lib32/libLLVMDebugInfoCodeView.so.6.0.0svn
f36cc000-f36ce000 r--p 000a0000 103:02 2013356                           /usr/lib64/llvm/6/lib32/libLLVMDebugInfoCodeView.so.6.0.0svn
f36ce000-f36cf000 rw-p 000a2000 103:02 2013356                           /usr/lib64/llvm/6/lib32/libLLVMDebugInfoCodeView.so.6.0.0svn
f36cf000-f36d3000 rw-p 00000000 00:00 0
f36d3000-f3720000 r-xp 00000000 103:02 2018652                           /usr/lib64/llvm/6/lib32/libLLVMMCParser.so.6.0.0svn
f3720000-f3721000 r--p 0004c000 103:02 2018652                           /usr/lib64/llvm/6/lib32/libLLVMMCParser.so.6.0.0svn
f3721000-f3722000 rw-p 0004d000 103:02 2018652                           /usr/lib64/llvm/6/lib32/libLLVMMCParser.so.6.0.0svn
f3722000-f3737000 r-xp 00000000 103:02 1991446                           /usr/lib64/llvm/6/lib32/libLLVMBinaryFormat.so.6.0.0svn
f3737000-f3738000 r--p 00014000 103:02 1991446                           /usr/lib64/llvm/6/lib32/libLLVMBinaryFormat.so.6.0.0svn
f3738000-f3739000 rw-p 00015000 103:02 1991446                           /usr/lib64/llvm/6/lib32/libLLVMBinaryFormat.so.6.0.0svn
f3739000-f378b000 r-xp 00000000 103:02 2013436                           /usr/lib64/llvm/6/lib32/libLLVMProfileData.so.6.0.0svn
f378b000-f378c000 r--p 00051000 103:02 2013436                           /usr/lib64/llvm/6/lib32/libLLVMProfileData.so.6.0.0svn
f378c000-f378d000 rw-p 00052000 103:02 2013436                           /usr/lib64/llvm/6/lib32/libLLVMProfileData.so.6.0.0svn
f378d000-f37c3000 r-xp 00000000 103:02 2011938                           /usr/lib64/llvm/6/lib32/libLLVMLinker.so.6.0.0svn
f37c3000-f37c4000 r--p 00035000 103:02 2011938                           /usr/lib64/llvm/6/lib32/libLLVMLinker.so.6.0.0svn
f37c4000-f37c5000 rw-p 00036000 103:02 2011938                           /usr/lib64/llvm/6/lib32/libLLVMLinker.so.6.0.0svn
f37c5000-f38db000 r-xp 00000000 103:02 1991543                           /usr/lib64/llvm/6/lib32/libLLVMInstrumentation.so.6.0.0svn
f38db000-f38dc000 r--p 00115000 103:02 1991543                           /usr/lib64/llvm/6/lib32/libLLVMInstrumentation.so.6.0.0svn
f38dc000-f38dd000 rw-p 00116000 103:02 1991543                           /usr/lib64/llvm/6/lib32/libLLVMInstrumentation.so.6.0.0svn
f38dd000-f38e1000 rw-p 00000000 00:00 0
f38e1000-f3a00000 r-xp 00000000 103:02 1991545                           /usr/lib64/llvm/6/lib32/libLLVMInstCombine.so.6.0.0svn
f3a00000-f3a01000 r--p 0011e000 103:02 1991545                           /usr/lib64/llvm/6/lib32/libLLVMInstCombine.so.6.0.0svn
f3a01000-f3a02000 rw-p 0011f000 103:02 1991545                           /usr/lib64/llvm/6/lib32/libLLVMInstCombine.so.6.0.0svn
f3a02000-f3a0a000 r-xp 00000000 103:02 1991326                           /usr/lib64/llvm/6/lib32/libLLVMIRReader.so.6.0.0svn
f3a0a000-f3a0b000 r--p 00007000 103:02 1991326                           /usr/lib64/llvm/6/lib32/libLLVMIRReader.so.6.0.0svn
f3a0b000-f3a0c000 rw-p 00008000 103:02 1991326                           /usr/lib64/llvm/6/lib32/libLLVMIRReader.so.6.0.0svn
f3a0c000-f3a74000 r-xp 00000000 103:02 1991534                           /usr/lib64/llvm/6/lib32/libLLVMBitWriter.so.6.0.0svn
f3a74000-f3a75000 ---p 00068000 103:02 1991534                           /usr/lib64/llvm/6/lib32/libLLVMBitWriter.so.6.0.0svn
f3a75000-f3a76000 r--p 00068000 103:02 1991534                           /usr/lib64/llvm/6/lib32/libLLVMBitWriter.so.6.0.0svn
f3a76000-f3a77000 rw-p 00069000 103:02 1991534                           /usr/lib64/llvm/6/lib32/libLLVMBitWriter.so.6.0.0svn
f3a77000-f3af9000 r-xp 00000000 103:02 1991532                           /usr/lib64/llvm/6/lib32/libLLVMBitReader.so.6.0.0svn
f3af9000-f3afa000 ---p 00082000 103:02 1991532                           /usr/lib64/llvm/6/lib32/libLLVMBitReader.so.6.0.0svn
f3afa000-f3afb000 r--p 00082000 103:02 1991532                           /usr/lib64/llvm/6/lib32/libLLVMBitReader.so.6.0.0svn
f3afb000-f3afc000 rw-p 00083000 103:02 1991532                           /usr/lib64/llvm/6/lib32/libLLVMBitReader.so.6.0.0svn
f3afc000-f3be5000 r-xp 00000000 103:02 1991552                           /usr/lib64/llvm/6/lib32/libLLVMVectorize.so.6.0.0svn
f3be5000-f3be6000 r--p 000e8000 103:02 1991552                           /usr/lib64/llvm/6/lib32/libLLVMVectorize.so.6.0.0svn
f3be6000-f3be7000 rw-p 000e9000 103:02 1991552                           /usr/lib64/llvm/6/lib32/libLLVMVectorize.so.6.0.0svn
f3be7000-f3be8000 rw-p 00000000 00:00 0
f3be8000-f3e88000 r-xp 00000000 103:02 1991540                           /usr/lib64/llvm/6/lib32/libLLVMTransformUtils.so.6.0.0svn
f3e88000-f3e89000 ---p 002a0000 103:02 1991540                           /usr/lib64/llvm/6/lib32/libLLVMTransformUtils.so.6.0.0svn
f3e89000-f3e8a000 r--p 002a0000 103:02 1991540                           /usr/lib64/llvm/6/lib32/libLLVMTransformUtils.so.6.0.0svn
f3e8a000-f3e8c000 rw-p 002a1000 103:02 1991540                           /usr/lib64/llvm/6/lib32/libLLVMTransformUtils.so.6.0.0svn
f3e8c000-f3e8d000 rw-p 00000000 00:00 0
f3e8d000-f3eb2000 r-xp 00000000 103:02 2027552                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUUtils.so.6.0.0svn
f3eb2000-f3eb3000 r--p 00024000 103:02 2027552                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUUtils.so.6.0.0svn
f3eb3000-f3eb4000 rw-p 00025000 103:02 2027552                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUUtils.so.6.0.0svn
f3eb4000-f3ef0000 r-xp 00000000 103:02 2027549                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUAsmPrinter.so.6.0.0svn
f3ef0000-f3ef1000 ---p 0003c000 103:02 2027549                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUAsmPrinter.so.6.0.0svn
f3ef1000-f3ef2000 r--p 0003c000 103:02 2027549                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUAsmPrinter.so.6.0.0svn
f3ef2000-f3ef3000 rw-p 0003d000 103:02 2027549                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUAsmPrinter.so.6.0.0svn
f3ef3000-f3fd5000 r-xp 00000000 103:02 2026393                           /usr/lib64/llvm/6/lib32/libLLVMObject.so.6.0.0svn
f3fd5000-f3fd6000 ---p 000e2000 103:02 2026393                           /usr/lib64/llvm/6/lib32/libLLVMObject.so.6.0.0svn
f3fd6000-f3fd7000 r--p 000e2000 103:02 2026393                           /usr/lib64/llvm/6/lib32/libLLVMObject.so.6.0.0svn
f3fd7000-f3fd8000 rw-p 000e3000 103:02 2026393                           /usr/lib64/llvm/6/lib32/libLLVMObject.so.6.0.0svn
f3fd8000-f3fe9000 r-xp 00000000 103:02 2027754                           /usr/lib64/llvm/6/lib32/libLLVMX86Utils.so.6.0.0svn
f3fe9000-f3fea000 r--p 00010000 103:02 2027754                           /usr/lib64/llvm/6/lib32/libLLVMX86Utils.so.6.0.0svn
f3fea000-f3feb000 rw-p 00011000 103:02 2027754                           /usr/lib64/llvm/6/lib32/libLLVMX86Utils.so.6.0.0svn
f3feb000-f4042000 r-xp 00000000 103:02 2013419                           /usr/lib64/llvm/6/lib32/libLLVMX86AsmPrinter.so.6.0.0svn
f4042000-f4043000 r--p 00056000 103:02 2013419                           /usr/lib64/llvm/6/lib32/libLLVMX86AsmPrinter.so.6.0.0svn
f4043000-f4044000 rw-p 00057000 103:02 2013419                           /usr/lib64/llvm/6/lib32/libLLVMX86AsmPrinter.so.6.0.0svn
f4044000-f43a4000 r-xp 00000000 103:02 1991349                           /usr/lib64/llvm/6/lib32/libLLVMSelectionDAG.so.6.0.0svn
f43a4000-f43a5000 ---p 00360000 103:02 1991349                           /usr/lib64/llvm/6/lib32/libLLVMSelectionDAG.so.6.0.0svn
f43a5000-f43a6000 r--p 00360000 103:02 1991349                           /usr/lib64/llvm/6/lib32/libLLVMSelectionDAG.so.6.0.0svn
f43a6000-f43a8000 rw-p 00361000 103:02 1991349                           /usr/lib64/llvm/6/lib32/libLLVMSelectionDAG.so.6.0.0svn
f43a8000-f43a9000 rw-p 00000000 00:00 0
f43a9000-f442e000 r-xp 00000000 103:02 1991412                           /usr/lib64/llvm/6/lib32/libLLVMGlobalISel.so.6.0.0svn
f442e000-f442f000 r--p 00084000 103:02 1991412                           /usr/lib64/llvm/6/lib32/libLLVMGlobalISel.so.6.0.0svn
f442f000-f4430000 rw-p 00085000 103:02 1991412                           /usr/lib64/llvm/6/lib32/libLLVMGlobalISel.so.6.0.0svn
f4430000-f4b10000 r-xp 00000000 103:02 1991344                           /usr/lib64/llvm/6/lib32/libLLVMCodeGen.so.6.0.0svn
f4b10000-f4b11000 ---p 006e0000 103:02 1991344                           /usr/lib64/llvm/6/lib32/libLLVMCodeGen.so.6.0.0svn
f4b11000-f4b17000 r--p 006e0000 103:02 1991344                           /usr/lib64/llvm/6/lib32/libLLVMCodeGen.so.6.0.0svn
f4b17000-f4b1b000 rw-p 006e6000 103:02 1991344                           /usr/lib64/llvm/6/lib32/libLLVMCodeGen.so.6.0.0svn
f4b1b000-f4b22000 rw-p 00000000 00:00 0
f4b22000-f4c34000 r-xp 00000000 103:02 1991364                           /usr/lib64/llvm/6/lib32/libLLVMAsmPrinter.so.6.0.0svn
f4c34000-f4c35000 ---p 00112000 103:02 1991364                           /usr/lib64/llvm/6/lib32/libLLVMAsmPrinter.so.6.0.0svn
f4c35000-f4c36000 r--p 00112000 103:02 1991364                           /usr/lib64/llvm/6/lib32/libLLVMAsmPrinter.so.6.0.0svn
f4c36000-f4c37000 rw-p 00113000 103:02 1991364                           /usr/lib64/llvm/6/lib32/libLLVMAsmPrinter.so.6.0.0svn
f4c37000-f4c38000 rw-p 00000000 00:00 0
f4c38000-f4dab000 r-xp 00000000 103:02 1991245                           /usr/lib64/llvm/6/lib32/libLLVMSupport.so.6.0.0svn
f4dab000-f4dae000 r--p 00172000 103:02 1991245                           /usr/lib64/llvm/6/lib32/libLLVMSupport.so.6.0.0svn
f4dae000-f4db1000 rw-p 00175000 103:02 1991245                           /usr/lib64/llvm/6/lib32/libLLVMSupport.so.6.0.0svn
f4db1000-f4db3000 rw-p 00000000 00:00 0
f4db3000-f51b3000 r-xp 00000000 103:02 1991302                           /usr/lib64/llvm/6/lib32/libLLVMCore.so.6.0.0svn
f51b3000-f51bb000 r--p 003ff000 103:02 1991302                           /usr/lib64/llvm/6/lib32/libLLVMCore.so.6.0.0svn
f51bb000-f51bd000 rw-p 00407000 103:02 1991302                           /usr/lib64/llvm/6/lib32/libLLVMCore.so.6.0.0svn
f51bd000-f51be000 rw-p 00000000 00:00 0
f51be000-f52a9000 r-xp 00000000 103:02 2013085                           /usr/lib64/llvm/6/lib32/libLLVMMC.so.6.0.0svn
f52a9000-f52aa000 ---p 000eb000 103:02 2013085                           /usr/lib64/llvm/6/lib32/libLLVMMC.so.6.0.0svn
f52aa000-f52ac000 r--p 000eb000 103:02 2013085                           /usr/lib64/llvm/6/lib32/libLLVMMC.so.6.0.0svn
f52ac000-f52ad000 rw-p 000ed000 103:02 2013085                           /usr/lib64/llvm/6/lib32/libLLVMMC.so.6.0.0svn
f52ad000-f52ae000 r-xp 00000000 103:02 2013406                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUInfo.so.6.0.0svn
f52ae000-f52af000 r--p 00000000 103:02 2013406                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUInfo.so.6.0.0svn
f52af000-f52b0000 rw-p 00001000 103:02 2013406                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUInfo.so.6.0.0svn
f52b0000-f5394000 r-xp 00000000 103:02 2027551                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUDesc.so.6.0.0svn
f5394000-f5395000 ---p 000e4000 103:02 2027551                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUDesc.so.6.0.0svn
f5395000-f53f9000 r--p 000e4000 103:02 2027551                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUDesc.so.6.0.0svn
f53f9000-f53fa000 rw-p 00148000 103:02 2027551                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUDesc.so.6.0.0svn
f53fa000-f53fc000 rw-p 00000000 00:00 0
f53fc000-f5494000 r-xp 00000000 103:02 2027548                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUAsmParser.so.6.0.0svn
f5494000-f5495000 r--p 00097000 103:02 2027548                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUAsmParser.so.6.0.0svn
f5495000-f5496000 rw-p 00098000 103:02 2027548                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUAsmParser.so.6.0.0svn
f5496000-f5a1c000 r-xp 00000000 103:02 2012508                           /usr/lib64/llvm/6/lib32/libLLVMAnalysis.so.6.0.0svn
f5a1c000-f5a20000 r--p 00585000 103:02 2012508                           /usr/lib64/llvm/6/lib32/libLLVMAnalysis.so.6.0.0svn
f5a20000-f5a23000 rw-p 00589000 103:02 2012508                           /usr/lib64/llvm/6/lib32/libLLVMAnalysis.so.6.0.0svn
f5a23000-f5a27000 rw-p 00000000 00:00 0
f5a27000-f5ec8000 r-xp 00000000 103:02 1991547                           /usr/lib64/llvm/6/lib32/libLLVMScalarOpts.so.6.0.0svn
f5ec8000-f5ecb000 r--p 004a0000 103:02 1991547                           /usr/lib64/llvm/6/lib32/libLLVMScalarOpts.so.6.0.0svn
f5ecb000-f5ece000 rw-p 004a3000 103:02 1991547                           /usr/lib64/llvm/6/lib32/libLLVMScalarOpts.so.6.0.0svn
f5ece000-f5ed1000 rw-p 00000000 00:00 0
f5ed1000-f5ee0000 r-xp 00000000 103:02 2027546                           /usr/lib64/llvm/6/lib32/libLLVMTarget.so.6.0.0svn
f5ee0000-f5ee1000 ---p 0000f000 103:02 2027546                           /usr/lib64/llvm/6/lib32/libLLVMTarget.so.6.0.0svn
f5ee1000-f5ee2000 r--p 0000f000 103:02 2027546                           /usr/lib64/llvm/6/lib32/libLLVMTarget.so.6.0.0svn
f5ee2000-f5ee3000 rw-p 00010000 103:02 2027546                           /usr/lib64/llvm/6/lib32/libLLVMTarget.so.6.0.0svn
f5ee3000-f608b000 r-xp 00000000 103:02 1991550                           /usr/lib64/llvm/6/lib32/libLLVMipo.so.6.0.0svn
f608b000-f608d000 r--p 001a7000 103:02 1991550                           /usr/lib64/llvm/6/lib32/libLLVMipo.so.6.0.0svn
f608d000-f608f000 rw-p 001a9000 103:02 1991550                           /usr/lib64/llvm/6/lib32/libLLVMipo.so.6.0.0svn
f608f000-f6091000 rw-p 00000000 00:00 0
f6091000-f635f000 r-xp 00000000 103:02 2027547                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUCodeGen.so.6.0.0svn
f635f000-f6360000 ---p 002ce000 103:02 2027547                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUCodeGen.so.6.0.0svn
f6360000-f6367000 r--p 002ce000 103:02 2027547                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUCodeGen.so.6.0.0svn
f6367000-f6369000 rw-p 002d5000 103:02 2027547                           /usr/lib64/llvm/6/lib32/libLLVMAMDGPUCodeGen.so.6.0.0svn
f6369000-f636a000 rw-p 00000000 00:00 0
f636a000-f6371000 r-xp 00000000 103:02 2018677                           /usr/lib64/llvm/6/lib32/libLLVMMCDisassembler.so.6.0.0svn
f6371000-f6372000 r--p 00006000 103:02 2018677                           /usr/lib64/llvm/6/lib32/libLLVMMCDisassembler.so.6.0.0svn
f6372000-f6373000 rw-p 00007000 103:02 2018677                           /usr/lib64/llvm/6/lib32/libLLVMMCDisassembler.so.6.0.0svn
f6373000-f63fd000 r-xp 00000000 103:02 2013392                           /usr/lib64/llvm/6/lib32/libLLVMRuntimeDyld.so.6.0.0svn
f63fd000-f63ff000 r--p 00089000 103:02 2013392                           /usr/lib64/llvm/6/lib32/libLLVMRuntimeDyld.so.6.0.0svn
f63ff000-f6400000 rw-p 0008b000 103:02 2013392                           /usr/lib64/llvm/6/lib32/libLLVMRuntimeDyld.so.6.0.0svn
f6400000-f642a000 r-xp 00000000 103:02 2013383                           /usr/lib64/llvm/6/lib32/libLLVMExecutionEngine.so.6.0.0svn
f642a000-f642b000 r--p 00029000 103:02 2013383                           /usr/lib64/llvm/6/lib32/libLLVMExecutionEngine.so.6.0.0svn
f642b000-f642c000 rw-p 0002a000 103:02 2013383                           /usr/lib64/llvm/6/lib32/libLLVMExecutionEngine.so.6.0.0svn
f642c000-f6440000 r-xp 00000000 103:02 2013388                           /usr/lib64/llvm/6/lib32/libLLVMMCJIT.so.6.0.0svn
f6440000-f6441000 r--p 00013000 103:02 2013388                           /usr/lib64/llvm/6/lib32/libLLVMMCJIT.so.6.0.0svn
f6441000-f6442000 rw-p 00014000 103:02 2013388                           /usr/lib64/llvm/6/lib32/libLLVMMCJIT.so.6.0.0svn
f6442000-f6443000 r-xp 00000000 103:02 2027557                           /usr/lib64/llvm/6/lib32/libLLVMX86Info.so.6.0.0svn
f6443000-f6444000 r--p 00000000 103:02 2027557                           /usr/lib64/llvm/6/lib32/libLLVMX86Info.so.6.0.0svn
f6444000-f6445000 rw-p 00001000 103:02 2027557                           /usr/lib64/llvm/6/lib32/libLLVMX86Info.so.6.0.0svn
f6445000-f6518000 r-xp 00000000 103:02 2027556                           /usr/lib64/llvm/6/lib32/libLLVMX86Desc.so.6.0.0svn
f6518000-f6519000 ---p 000d3000 103:02 2027556                           /usr/lib64/llvm/6/lib32/libLLVMX86Desc.so.6.0.0svn
f6519000-f6626000 r--p 000d3000 103:02 2027556                           /usr/lib64/llvm/6/lib32/libLLVMX86Desc.so.6.0.0svn
f6626000-f6628000 rw-p 001e0000 103:02 2027556                           /usr/lib64/llvm/6/lib32/libLLVMX86Desc.so.6.0.0svn
f6628000-f6629000 rw-p 00000000 00:00 0
f6629000-f6a13000 r-xp 00000000 103:02 2027553                           /usr/lib64/llvm/6/lib32/libLLVMX86CodeGen.so.6.0.0svn
f6a13000-f6a14000 ---p 003ea000 103:02 2027553                           /usr/lib64/llvm/6/lib32/libLLVMX86CodeGen.so.6.0.0svn
f6a14000-f6a19000 r--p 003ea000 103:02 2027553                           /usr/lib64/llvm/6/lib32/libLLVMX86CodeGen.so.6.0.0svn
f6a19000-f6a1b000 rw-p 003ef000 103:02 2027553                           /usr/lib64/llvm/6/lib32/libLLVMX86CodeGen.so.6.0.0svn
f6a1b000-f6a1c000 rw-p 00000000 00:00 0
f6a1c000-f6b80000 r-xp 00000000 103:02 2013418                           /usr/lib64/llvm/6/lib32/libLLVMX86Disassembler.so.6.0.0svn
f6b80000-f6b81000 r--p 00163000 103:02 2013418                           /usr/lib64/llvm/6/lib32/libLLVMX86Disassembler.so.6.0.0svn
f6b81000-f6b82000 rw-p 00164000 103:02 2013418                           /usr/lib64/llvm/6/lib32/libLLVMX86Disassembler.so.6.0.0svn
f6b82000-f6b9c000 r-xp 00000000 103:02 2027898                           /usr/lib32/libelf-0.170.so
f6b9c000-f6b9d000 r--p 00019000 103:02 2027898                           /usr/lib32/libelf-0.170.so
f6b9d000-f6b9e000 rw-p 0001a000 103:02 2027898                           /usr/lib32/libelf-0.170.so
f6b9e000-f6ba8000 r-xp 00000000 103:02 1973263                           /usr/lib32/libdrm_amdgpu.so.1.0.0
f6ba8000-f6ba9000 r--p 00009000 103:02 1973263                           /usr/lib32/libdrm_amdgpu.so.1.0.0
f6ba9000-f6baa000 rw-p 0000a000 103:02 1973263                           /usr/lib32/libdrm_amdgpu.so.1.0.0
f6baa000-f6bb6000 r-xp 00000000 103:02 1974270                           /usr/lib32/libdrm_radeon.so.1.0.1
f6bb6000-f6bb7000 r--p 0000b000 103:02 1974270                           /usr/lib32/libdrm_radeon.so.1.0.1
f6bb7000-f6bb8000 rw-p 0000c000 103:02 1974270                           /usr/lib32/libdrm_radeon.so.1.0.1
f6bb8000-f6bce000 r-xp 00000000 103:02 2008369                           /usr/lib32/libz.so.1.2.11
f6bce000-f6bcf000 r--p 00015000 103:02 2008369                           /usr/lib32/libz.so.1.2.11
f6bcf000-f6bd0000 rw-p 00016000 103:02 2008369                           /usr/lib32/libz.so.1.2.11
f6bd0000-f7433000 r-xp 00000000 103:02 2020409                           /usr/lib32/mesa/radeonsi_dri.so
f7433000-f7434000 ---p 00863000 103:02 2020409                           /usr/lib32/mesa/radeonsi_dri.so
f7434000-f7468000 r--p 00863000 103:02 2020409                           /usr/lib32/mesa/radeonsi_dri.so
f7468000-f746b000 rw-p 00897000 103:02 2020409                           /usr/lib32/mesa/radeonsi_dri.so
f746b000-f7663000 rw-p 00000000 00:00 0
f7663000-f7668000 r-xp 00000000 103:02 1988919                           /usr/lib32/libXdmcp.so.6.0.0
f7668000-f7669000 r--p 00004000 103:02 1988919                           /usr/lib32/libXdmcp.so.6.0.0
f7669000-f766a000 rw-p 00005000 103:02 1988919                           /usr/lib32/libXdmcp.so.6.0.0
f766a000-f766c000 r-xp 00000000 103:02 1970099                           /usr/lib32/libXau.so.6.0.0
f766c000-f766d000 ---p 00002000 103:02 1970099                           /usr/lib32/libXau.so.6.0.0
f766d000-f766e000 r--p 00002000 103:02 1970099                           /usr/lib32/libXau.so.6.0.0
f766e000-f766f000 rw-p 00003000 103:02 1970099                           /usr/lib32/libXau.so.6.0.0
f766f000-f7672000 r-xp 00000000 103:02 1572928                           /lib32/libdl-2.25.so
f7672000-f7673000 r--p 00002000 103:02 1572928                           /lib32/libdl-2.25.so
f7673000-f7674000 rw-p 00003000 103:02 1572928                           /lib32/libdl-2.25.so
f7674000-f768f000 r-xp 00000000 103:02 1573406                           /lib32/libpthread-2.25.so
f768f000-f7690000 r--p 0001a000 103:02 1573406                           /lib32/libpthread-2.25.so
f7690000-f7691000 rw-p 0001b000 103:02 1573406                           /lib32/libpthread-2.25.so
f7691000-f7693000 rw-p 00000000 00:00 0
f7693000-f76a5000 r-xp 00000000 103:02 1968541                           /usr/lib32/libdrm.so.2.4.0
f76a5000-f76a6000 r--p 00011000 103:02 1968541                           /usr/lib32/libdrm.so.2.4.0
f76a6000-f76a7000 rw-p 00012000 103:02 1968541                           /usr/lib32/libdrm.so.2.4.0
f76a7000-f76ac000 r-xp 00000000 103:02 1970313                           /usr/lib32/libXxf86vm.so.1.0.0
f76ac000-f76ad000 r--p 00004000 103:02 1970313                           /usr/lib32/libXxf86vm.so.1.0.0
f76ad000-f76ae000 rw-p 00005000 103:02 1970313                           /usr/lib32/libXxf86vm.so.1.0.0
f76ae000-f76b2000 r-xp 00000000 103:02 1968844                           /usr/lib32/libxcb-dri2.so.0.0.0
f76b2000-f76b3000 r--p 00003000 103:02 1968844                           /usr/lib32/libxcb-dri2.so.0.0.0
f76b3000-f76b4000 rw-p 00004000 103:02 1968844                           /usr/lib32/libxcb-dri2.so.0.0.0
f76b4000-f76b6000 rw-p 00000000 00:00 0
f76b6000-f76d0000 r-xp 00000000 103:02 1968615                           /usr/lib32/libxcb-glx.so.0.0.0
f76d0000-f76d1000 ---p 0001a000 103:02 1968615                           /usr/lib32/libxcb-glx.so.0.0.0
f76d1000-f76d2000 r--p 0001a000 103:02 1968615                           /usr/lib32/libxcb-glx.so.0.0.0
f76d2000-f76d3000 rw-p 0001b000 103:02 1968615                           /usr/lib32/libxcb-glx.so.0.0.0
f76d3000-f76fd000 r-xp 00000000 103:02 1971238                           /usr/lib32/libxcb.so.1.1.0
f76fd000-f76fe000 r--p 00029000 103:02 1971238                           /usr/lib32/libxcb.so.1.1.0
f76fe000-f76ff000 rw-p 0002a000 103:02 1971238                           /usr/lib32/libxcb.so.1.1.0
Aborted (core dumped)



fireburn@axion ~ $ DISPLAY=:0 DRI_PRIME=1 glxgears-x86
*** Error in `glxgears-x86': malloc(): memory corruption: 0xeef062a0 ***
======= Backtrace: =========
/lib32/libc.so.6(+0x6deb8)[0xf7a5deb8]
/lib32/libc.so.6(+0x75e94)[0xf7a65e94]
/lib32/libc.so.6(+0x7886a)[0xf7a6886a]
/lib32/libc.so.6(__libc_malloc+0x73)[0xf7a6a043]
/usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/32/libstdc++.so.6(_Znwj+0x27)[0xf787a0e7]
/usr/lib/llvm/6/lib32/libLLVMTarget.so.6(LLVMAddTargetLibraryInfo+0x34)[0xf5f29b04]
/usr/lib32/dri/radeonsi_dri.so*** Error in `glxgears-x86': malloc(): memory corruption: 0xeed06998 ***
(======= Backtrace: =========
+0x/lib32/libc.so.6(+0x6deb8)[0xf7a5deb8]
/lib32/libc.so.6(+0x75e94)[0xf7a65e94]
/lib32/libc.so.6(+0x7886a)[0xf7a6886a]
/lib32/libc.so.6/usr/lib32/dri/radeonsi_dri.so(+0x4f8550)[0xf711c550]
/usr/lib32/dri/radeonsi_dri.so(+0x511a62)[0xf7135a62]
/usr/lib32/dri/radeonsi_dri.so(+0x30d4e0)[0xf6f314e0]
/lib32/libpthread.so.0(+0x6572)[0xf76ce572]
(/lib32/libc.so.6__libc_malloc+0x73)[0xf7a6a043]
(clone/usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/32/libstdc++.so.6(_Znwj+0x27)[0xf787a0e7]
/usr/lib/llvm/6/lib32/libLLVMTarget.so.6(LLVMAddTargetLibraryInfo+0x34)[0xf5f29b04]
/usr/lib32/dri/radeonsi_dri.so(+0x5025f7)[0xf71265f7]
/usr/lib32/dri/radeonsi_dri.so(+0x4f8550)[0xf711c550]
/usr/lib32/dri/radeonsi_dri.so(+0x511a62)[0xf7135a62]
/usr/lib32/dri/radeonsi_dri.so(+0x30d4e0)[0xf6f314e0]
/lib32/libpthread.so.0(+0x6572)[0xf76ce572]
/lib32/libc.so.6(clone+0x66)[0xf7ae7e66]
======= Memory map: ========
+0x66Aborted (core dumped)


Once I compiled Mesa with debugging too everything goes back to working

CFLAGS="-O2 -march=native -ggdb"
CXXFLAGS="${CFLAGS}"
LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fuse-ld=bfd"
FEATURES="${FEATURES} nostrip"
USE="debug valgrind"
Comment 19 Mike Lothian 2017-08-08 15:08:55 UTC
So I tried dropping the -march=native and now it all works no matter what version of GCC I use. So it looks like GCC 7+ is miscompiling 32bit apps with -march=native 

I then added in -mbmi which broke things again and I finally tested with -march=native -mno-bmi which worked
Comment 20 Gregor Münch 2017-08-09 07:01:51 UTC
So you agree that this is the same issue like: https://bugs.freedesktop.org/show_bug.cgi?id=101484

Marking duplicate?
Comment 21 Mike Lothian 2017-08-09 09:13:26 UTC
Yes I believe this is a duplicate, I was only seeing issues with 32bit apps however

I opened https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81763 with the GCC folk and they're asking for a reduced test case - I've no idea how to do that
Comment 22 Mike Lothian 2017-08-09 15:48:08 UTC
I'm not totally sure this is the same bug, #101484 seems to suggest that reverting 2b8b9a56efc24cc0f27469bf1532c288cdca2076 fixes the issue (it doesn't for me) and they don't get segfaults, I don't have issues with GCC 6.3 whereas they're seeing it on and older GCC 5 (I think)
Comment 23 Mike Lothian 2017-12-13 01:46:46 UTC
This was GCC related I think

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.