1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
Crash on XCloseDisplay
**desc**
crash on tutor07(https://github.com/opengl-tutorials/ogl/blob/316cccc5f76f47f09c16089d98be284b689e057d/tutorial07_model_loading/tutorial07.cpp#L183)
This crash partially similar to #2173
Below is my crash stack:
```
* thread #1, name = 'FEXLoader', stop reason = signal SIGSEGV
frame #0: 0x0000aaaab515d5cc FEXLoader`je_free_default [inlined] atomic_load_p(a=0x00000000001dd408, mo=atomic_memory_order_relaxed) at atomic.h:62:1
frame #1: 0x0000aaaab515d518 FEXLoader`je_free_default [inlined] rtree_leaf_elm_bits_read(tsdn=0x0000ffffa319a830, rtree=0x0000aaaab566b440, elm=0x00000000001dd408, dependent=true) at rtree.h:175:20
frame #2: 0x0000aaaab515d500 FEXLoader`je_free_default [inlined] rtree_szind_slab_read(tsdn=0x0000ffffa319a830, rtree=0x0000aaaab566b440, rtree_ctx=0x0000ffffa319a860, key=94100513102016, dependent=true, r_szind=0x0000ffffe1720718, r_slab=0x0000ffffe172071c) at rtree.h:500:19
frame #3: 0x0000aaaab515cfac FEXLoader`je_free_default [inlined] ifree(tsd=0x0000ffffa319a830, ptr=0x000055957ba818c0, tcache=0x0000ffffa319aa20, slow_path=false) at jemalloc.c:2570:2
frame #4: 0x0000aaaab515cebc FEXLoader`je_free_default(ptr=0x000055957ba818c0) at jemalloc.c:2790:4
frame #5: 0x0000aaaab5167808 FEXLoader`je_free(ptr=0x000055957ba818c0) at jemalloc.c:2867:3
frame #6: 0x00007fffe15e018c libX11.so.6`XFree + 12
frame #7: 0x00007fffe15e01c8 libX11.so.6`_XFreeEventCookies + 40
frame #8: 0x00007fffe15cdee4 libX11.so.6`_XFreeDisplayStructure + 96
frame #9: 0x00007fffe15c0084 libX11.so.6`XCloseDisplay + 180
* frame #10: 0x00007fffe1731008 libX11-host.so`fexfn_unpack_libX11_XCloseDisplay(fexfn_packed_args_libX11_XCloseDisplay*) + 24
frame #11: 0x00007fffe3634f54
```
** reproduce command **
FEXLoader tutorial07_model_loading
**System information:**
- OS: Ubuntu 22.04.1 LTS
- CPU/SoC: AMD
- Video driver version: Device: AMD OLAND (LLVM 13.0.1, DRM 2.50, 5.15.0-54-generic) (0x6611)
- RootFS used: Ubuntu 22.04(x64)
- FEX version: FEX-Emu (FEX-2212-9-g9eaa45f)
- Thunks Enabled: Yes
** question **
how can we analysis this type problem ?
1. I want to (https://github.com/glfw/glfw) build a libglfw.so by self, to print more trace info, narrow down this problem.
2. From the crash trace stack, it seems relation to thunk guest-host memory , FEX have any methods to detect this problem? eg. add memory check in runtime , like as _FEXgdb_ attach to FEXLoader, then stop it, invoke some _mem_check_ command. or eg. like valgrind?
Do you have any suggestions for me?
|