Open AndrisBB opened 5 years ago
Unfortunately the API for this only lets us know that the process was terminted due to a crash or due to running out of memory, but that's all. For crashes anyway we would need a core dump for investigation, or at least a back trace extracted from one.
@AndrisBB Is there any chance that you could provide a backtrace? If you are using systemd, there are good chances that coredumpctl list
will show an entry for the crashed WPEWebProcess
and you should be able to obtain a backtrace with coredumpctl info
. Tip: You may need a build with debug information of WPE WebKit to get a meaningful backtrace.
I have a trouble to obtain any information from the backtrace. I have attached the remote debugger to the WPEWebProcess, then when its crash I tried to get bt, but it gives error: _Thread 1 "WPEWebProcess" received signal SIGSEGV, Segmentation fault. 0x6e4ebfa4 in ?? () (gdb) bt
Backtrace stopped: previous frame identical to this frame (corrupt stack?)_
I get same result when I load backtrace file.
Could it be because of this warning? _Reading symbols from /opt/prickle/1.7.3/sysroots/armv7at2hf-neon-prickle-linux-gnueabi/lib/libudev.so.1...done. Reading symbols from /opt/prickle/1.7.3/sysroots/armv7at2hf-neon-prickle-linux-gnueabi/usr/lib/libmtdev.so.1...done. Reading symbols from /opt/prickle/1.7.3/sysroots/armv7at2hf-neon-prickle-linux-gnueabi/usr/lib/libevdev.so.2...done. Reading symbols from /opt/prickle/1.7.3/sysroots/armv7at2hf-neon-prickle-linux-gnueabi/lib/libnsscompat.so.2...done. Reading symbols from /opt/prickle/1.7.3/sysroots/armv7at2hf-neon-prickle-linux-gnueabi/usr/lib/wpe-webkit-1.0/injected-bundle/libWPEInjectedBundle.so...warning: Could not find DWO CU Source/WebKit/CMakeFiles/WPEInjectedBundle.dir/WebProcess/InjectedBundle/API/glib/WebKitInjectedBundleMain.cpp.dwo(0x3e15d2e5cd0c160) referenced by CU at offset 0x22 [in module /opt/prickle/1.7.3/sysroots/armv7at2hf-neon-prickle-linux-gnueabi/usr/lib/wpe-webkit-1.0/injected-bundle/libWPEInjectedBundle.so] done. Reading symbols from /opt/prickle/1.7.3/sysroots/armv7at2hf-neon-prickle-linux-gnueabi/usr/lib/libGLSLC.so...done.
I was following Yocto guide about remote debugging https://www.yoctoproject.org/docs/latest/mega-manual/mega-manual.html#platdev-gdb-remotedebug
I have narrowed down to problem to place in the Angular framework where crash is happening. In the Router module they are updating the href property of the element. In some situations this is causing the crash. I guess this is something internal to the Angular's virtual DOM.
At the moment I have Angular application that occasionally crash when running on the WPE, but do not crash on other browsers on the PC. As far as I can see is that Cog is subscribing to the 'web-process-terminated' signal and pust error page on the screen. Is there a way to query what caused to WebProcess to crash? If so can it be put on the error page.