After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 785401 - Cannot start. Get "Real-time signal 0"
Cannot start. Get "Real-time signal 0"
Status: RESOLVED NOTGNOME
Product: epiphany
Classification: Core
Component: General
3.22.x (obsolete)
Other Linux
: High critical
: ---
Assigned To: Epiphany Maintainers
Epiphany Maintainers
Depends on:
Blocks:
 
 
Reported: 2017-07-25 12:30 UTC by Dan Jacobson
Modified: 2017-08-08 14:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Error in `epiphany': corrupted double-linked list (14.49 KB, text/plain)
2017-07-25 13:17 UTC, Dan Jacobson
Details
# coredumpctl info (is this good enough or should I install the symbols package?) (5.64 KB, text/plain)
2017-07-26 02:07 UTC, Dan Jacobson
Details
OK I installed epiphany-browser-dbgsym . Tell me what other ones you would like me to install. (10.85 KB, text/plain)
2017-07-26 03:50 UTC, Dan Jacobson
Details

Description Dan Jacobson 2017-07-25 12:30:37 UTC
Starting today on amd64 I can't even start epiphany anymore. 4 our of five times I get
  Real-time signal 0
or Segmentation Fault.
If I do
$ strace epiphany
it runs fine. 
Google search about Real-time signal 0 doesn't help much.
Comment 1 Michael Catanzaro 2017-07-25 12:56:57 UTC
Thanks for taking the time to report this.
Without a stack trace from the crash it's very hard to determine what caused it.
Can you get us a stack trace? Please see https://wiki.gnome.org/Community/GettingInTouch/Bugzilla/GettingTraces for more information on how to do so. When pasting a stack trace in this bug report, please reset the status of this bug report from NEEDINFO to its previous status. Thanks in advance!
Comment 2 Dan Jacobson 2017-07-25 13:09:12 UTC
You know what? I don't think I will ever get a stack trace.
Before downloading the version with the debugging symbols,
I tried an experiment:
$ gdb epiphany
(gdb) r

Works fine every time.
The same with
$ strace epiphany

I.e., when running under a debugger it works fine.

It is only when starting from the shell, four out of five times it dies.
If it lives, it is fine.

So there is some kind of linux kernel race condition about starting it.

Also one would think: well, keep on trying until it starts. Then just
use it all day.

However I often do
$ epiphany some_other_URL
after the first one is running.
Alas, it usually dies before contacting the running epiphany.
Dmesg shows nothing.
Comment 3 Michael Catanzaro 2017-07-25 13:14:16 UTC
That's pretty unfortunate.

I don't know how to help with this without a stack trace. Something on your system is sending real-time signals, which presumably kill the process when received. Those aren't really used by... well, anything, at least not on desktop Linux. I've never heard of anything using them before, or anyone hitting anything like this.
Comment 4 Dan Jacobson 2017-07-25 13:17:38 UTC
Created attachment 356358 [details]
Error in `epiphany': corrupted double-linked list
Comment 5 Michael Catanzaro 2017-07-25 13:20:18 UTC
Try running it under valgrind.
Comment 6 Dan Jacobson 2017-07-25 13:40:45 UTC
Yup, runs fine under valgrind and other debuggers. Only odd thing I saw was
==7048==    definitely lost: 3 bytes in 1 blocks
==7048==    indirectly lost: 0 bytes in 0 blocks
==7048==      possibly lost: 4,688 bytes in 29 blocks

You know I think I need to make a wrapper, a shell alias that starts epiphany under some sort of protective debugger, to get it started reliably.

I tried nohup(1). Not good enough.

$ sh -c epiphany
Real-time signal 0

$ eval 'sh -c epiphany'
Real-time signal 0
Comment 7 Dan Jacobson 2017-07-25 13:42:48 UTC
$ eval 'sh -c "exec epiphany"'
Segmentation fault
$ eval 'sh -c "exec epiphany"'
Segmentation fault
$ eval 'sh -c "exec epiphany"'
*** Error in `epiphany': corrupted double-linked list (not small): 0x000000c84592c4e0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x70bcb)[0x7f1f54860bcb]
/lib/x86_64-linux-gnu/libc.so.6(+0x76f96)[0x7f1f54866f96]
/lib/x86_64-linux-gnu/libc.so.6(+0x7826c)[0x7f1f5486826c]
/usr/lib/x86_64-linux-gnu/libGL.so.1(+0xa0cc6)[0x7f1f5163acc6]
======= Memory map: ========
c843f9f000-c844069000 r-xp 00000000 08:07 333000                         /usr/bin/epiphany
c844268000-c84426f000 r--p 000c9000 08:07 333000                         /usr/bin/epiphany
c84426f000-c844270000 rw-p 000d0000 08:07 333000                         /usr/bin/epiphany
c844270000-c844271000 rw-p 00000000 00:00 0 
c84583b000-c845ca3000 rw-p 00000000 00:00 0                              [heap]
7f1f34000000-7f1f34021000 rw-p 00000000 00:00 0 
7f1f34021000-7f1f38000000 ---p 00000000 00:00 0 
7f1f3c000000-7f1f3c021000 rw-p 00000000 00:00 0 
7f1f3c021000-7f1f40000000 ---p 00000000 00:00 0 
7f1f416c9000-7f1f416cb000 r-xp 00000000 08:07 1298                       /lib/x86_64-linux-gnu/libutil-2.24.so...
Comment 8 Dan Jacobson 2017-07-25 13:47:58 UTC
I would think maybe my memory sticks are bad, but no other program has this problem.

# su - nobody -c 'HOME=/tmp/sss; epiphany'&
[1] 7218
No directory, logging in with HOME=/

** (epiphany:7222): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
-su: line 1:  7222 Real-time signal 0      epiphany
[1]+  Exit 162                su - nobody -c 'HOME=/tmp/sss; epiphany'
Comment 9 Michael Catanzaro 2017-07-25 13:49:37 UTC
OK, since the error disappears inside debuggers, there's not much we can do to debug. But you didn't hit this problem yesterday. Probably not bad RAM as no other programs are crashing. Did you change anything about your system? Did you run a system update?

Can you run the program 'glxgears' successfully?
Comment 10 Dan Jacobson 2017-07-25 14:26:00 UTC
glxgears works smoothly. OK I'll try an older kernel...
Comment 11 Dan Jacobson 2017-07-25 14:49:46 UTC
Nope. And
# downgrading libglib2.0-0:amd64 from 2.53.4-1 to 2.53.2-1
$ epiphany
Real-time signal 0
So it is something else new here on my up to date
Debian Release: buster/sid
  APT prefers experimental
  APT policy: (990, 'experimental'), (500, 'unstable')
Architecture: amd64 (x86_64)
system.

Well anyways, please now help me write a wrapper program (shell script)
to ensure a working epiphany.

strace epiphany > /dev/null 2>&1 &
works fine but I'm sure that it isn't as efficient as it could be.
Comment 12 Dan Jacobson 2017-07-25 22:54:26 UTC
$ strace dash
$ epiphany
"epiphany\n", 8192)             = 9
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7fcf123469d0) = 1693
wait4(-1, 
** (epiphany:1693): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
[{WIFSIGNALED(s) && WTERMSIG(s) == SIGRT_2}], 0, NULL) = 1693
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_KILLED, si_pid=1693, si_uid=65534, si_status=SIGRT_2, si_utime=62, si_stime=8} ---
rt_sigreturn({mask=[]})                 = 1693
write(2, "Real-time signal 0\n", 19Real-time signal 0
)    = 19
$ epiphany
"epiphany\n", 8192)             = 9
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7fcf123469d0) = 1700
wait4(-1, 
** (epiphany:1700): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
[{WIFSIGNALED(s) && WTERMSIG(s) == SIGSEGV}], 0, NULL) = 1700
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_KILLED, si_pid=1700, si_uid=65534, si_status=SIGSEGV, si_utime=35, si_stime=6} ---
rt_sigreturn({mask=[]})                 = 1700
write(2, "Segmentation fault\n", 19Segmentation fault
)    = 19
"epiphany\n", 8192)             = 9
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7fcf123469d0) = 1716
wait4(-1, 
** (epiphany:1716): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
*** Error in `epiphany': corrupted double-linked list (not small): 0x0000001d68899fa0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x70bcb)[0x7fb92f533bcb]
/lib/x86_64-linux-gnu/libc.so.6(+0x76f96)[0x7fb92f539f96]
/lib/x86_64-linux-gnu/libc.so.6(+0x7826c)[0x7fb92f53b26c]
/usr/lib/x86_64-linux-gnu/libGL.so.1(+0xa0cc6)[0x7fb92c30dcc6]
======= Memory map: ========
1d670e1000-1d671ab000 r-xp 00000000 08:07 333000                         /usr/bin/epiphany
1d673aa000-1d673b1000 r--p 000c9000 08:07 333000                         /usr/bin/epiphany
1d673b1000-1d673b2000 rw-p 000d0000 08:07 333000                         /usr/bin/epiphany...

# su - nobody -c 'unset DISPLAY; HOME=/tmp/fdf epiphany'
No directory, logging in with HOME=/
Unable to init server: Could not connect: Connection refused
Failed to parse arguments: Cannot open display: 
#

/usr/lib/x86_64-linux-gnu/webkit2gtk-4.0/MiniBrowser works fine
Comment 13 Dan Jacobson 2017-07-26 00:10:15 UTC
I have a script that opens five web pages
$ ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 34
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 34
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 34
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 11
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 11
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 34
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 34
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 11
ragii --all
08:07 ~$ xargs: epiphany: terminated by signal 34
Comment 14 Dan Jacobson 2017-07-26 00:15:47 UTC
And then sometimes it works.
So this is an obvious race condition.
Reminds me of
WEBKIT_DISABLE_COMPOSITING_MODE=1
(yes, doesn't affect this bug, problem remains if I unset it.)
With that the browser patiently wait for the page to load.
Maybe there is another variable I could set, to make ephy not so much in a hurry to start...
P.S., I can't clear the NEEDINFO flag, so I will keep sending you info, as apparently nobody in Linux has ever had this problem.
Comment 15 Michael Catanzaro 2017-07-26 00:45:20 UTC
The info so far is not very useful. We still need a backtrace. You don't need to execute epiphany within gdb, just enable coredumpctl and get the backtrace from there. Or fight with ulimit manually.
Comment 16 Dan Jacobson 2017-07-26 02:07:07 UTC
Created attachment 356390 [details]
# coredumpctl info (is this good enough or should I install the symbols package?)
Comment 17 Michael Catanzaro 2017-07-26 02:53:58 UTC
You definitely need to install debug symbols... we can't see what's going wrong with all the frames missing. And use 'coredumpctl gdb' rather than 'coredumctl info'.
Comment 18 Dan Jacobson 2017-07-26 03:50:56 UTC
Created attachment 356393 [details]
OK I installed epiphany-browser-dbgsym . Tell me what other ones you would like me to install.
Comment 19 André Klapper 2017-07-31 15:13:58 UTC
Stacktrace looks like this is an issue in libGL. Hence might not be GNOME?:

  • #0 malloc_consolidate
    at malloc.c line 4207
  • #1 _int_free
    at malloc.c line 4113
  • #2 ??
    from /usr/lib/x86_64-linux-gnu/libGL.so.1
  • #3 ??
    from /usr/lib/x86_64-linux-gnu/libGL.so.1
  • #4 ??
    from /usr/lib/x86_64-linux-gnu/libGL.so.1

Comment 20 Dan Jacobson 2017-08-01 14:30:28 UTC
OK now the problem has magically gone away. Maybe via some update.
Comment 21 Dan Jacobson 2017-08-08 14:50:34 UTC
(Now after a few hours of pleasantly using my computer, the bug is back.
I'll reassign https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=869746
to 'libgl1-nvidia-legacy-304xx-glx' as that is surely the problem.)