1 |
On Sun, 2017-12-31 at 09:47 +1100, Adam Carter wrote: |
2 |
> * Install gdb if it isn't already installed |
3 |
> > * Make sure a core file is presend in coredumpd, coredumpctl should |
4 |
> > show; if not, have it crash again so it's fresh and saved in there |
5 |
> > |
6 |
> > * coredumpctl gdb gedit |
7 |
> > |
8 |
> > * bt full |
9 |
> > |
10 |
> > Post output of that "bt full" |
11 |
> > |
12 |
> > |
13 |
> |
14 |
> (gdb) bt full |
15 |
> #0 0x00007f60cd333a74 in g_main_context_prepare () from |
16 |
> /usr/lib64/libglib-2.0.so.0 |
17 |
> No symbol table info available. |
18 |
> #1 0x00007f60cd33449b in ?? () from /usr/lib64/libglib-2.0.so.0 |
19 |
> No symbol table info available. |
20 |
> #2 0x00007f60cd334693 in g_main_context_iteration () from |
21 |
> /usr/lib64/libglib-2.0.so.0 |
22 |
> No symbol table info available. |
23 |
> #3 0x00007f60d047676a in g_application_run () from |
24 |
> /usr/lib64/libgio-2.0.so.0 |
25 |
> No symbol table info available. |
26 |
> #4 0x0000563890d41d59 in main () |
27 |
> No symbol table info available. |
28 |
> |
29 |
> FWIW I have -fomit-frame-pointer set - should i rebuild glib & gedit |
30 |
> with that or some other options changed? |
31 |
|
32 |
-fomit-frame-pointer is the default on x86_64/amd64 in most situations. |
33 |
-fno-omit-frame-pointer might help, but usually that's useful for |
34 |
sample based profiling (like sysprof), which can't spend time unwinding |
35 |
the traces with more complex ways during sample collection. |
36 |
Here you already actually have the full backtrace available, even most |
37 |
symbol names, so it could already unwind it. Best to have full debug |
38 |
symbols then with CFLAGS including e.g -ggdb and FEATURES having |
39 |
"splitdebug compressdebug". This can be done per-package, but if |
40 |
there's disk space available for /usr/lib64/debug (could also be a |
41 |
symlink to an always mounted data disk), it doesn't hurt to just always |
42 |
have it enabled for all. Well, it does hurt compilation time a bit, and |
43 |
a lot for big packages like chromium/webkit-gtk, for which this could |
44 |
then be disabled instead. Anyhow, up to you how much you enable. For |
45 |
this backtrace, dev-libs/glib is the one of interest. |
46 |
|
47 |
That said, this looks really weird place to crash, and I doubt there's |
48 |
threads going on with it unable to show the correct one. |
49 |
t a a b f would make sure instead of bt full (the former is short for |
50 |
thread apply all backtrace full, so the same as bt full, but will show |
51 |
all threads, not current only). |
52 |
I'm not sure debug information for the backtrace will help much, but |
53 |
debug symbols + some more gdb usage than just getting the trace might |
54 |
help. |
55 |
|
56 |
Mart |