[Qtwebengine] QT5.6.2 to 5.7.1 default behavior changes and qtWebengine ozone bridge

Alexandru Croitor alexandru.croitor at qt.io
Mon May 15 09:44:48 CEST 2017


Hi,

I'm not sure how well supported is Qt Creator for embedded device, so I would advise to try setting the breakpoints from command line gdb, as well as checking if the symbols are actually found by GDB.

WebEngine by default does not create / include debug symbols for Blink and V8, so if the call happens somewhere inside those components, the breakpoint will not be hit. Note that enabling those debug symbols will substantially increase link time as well RAM used. You can enable them
by re-running qmake with something like

qmake qt57_source/qtwebengine/qtwebengine.pro CONFIG+="webcore_debug v8base_debug"
Those flags are in qtwebengine/src/core/gyp_run.pro

Other debug symbols should in theory be there if you are doing a debug build.

On 12 May 2017, at 20:03, Ruei, Eric <e-ruei1 at ti.com<mailto:e-ruei1 at ti.com>> wrote:

Hi, Alex:

Thank you very much for your invaluable help!
I have finally resumed to debug the qtwebengine seccomp issue after a long break to other assignments.

Regarding the crash as shown below, it is caused by a restricted FUTEX request (FUTEX_UNLOCK_PI)  at function  RestrictFutex() @syscall_parameters_restrictions.cc

Render process exited with code 256 (abnormal exit)
/home/a0850410/yocto_builds/sdk400_am5/oe-layersetup/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/qtwebengine/5.7.1+gitAUTOINC+9cc97f0c63_b3c79e92f0-r0.arago0/git/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:futex() failure
Received signal 11 SEGV_MAPERR 000000000007
[end of stack trace]

I was trying to find out which module initiating the FUTEX call (FUTEX_UNLOCK_PI) and there was no luck.
I could not set a breakpoint at  or within RestrictFutex(),  CrashSIGSYSFutex() and SIGSYSFutexFailure(), i.e. the breakpoints do no work at QtCreator.
And the stack trace does not show anything. I wonder that I need to set some build flag or option to enable chromium  debugging.

Any thoughts and inputs will be highly appreciated!

Best regards,

Eric

From: Alexandru Croitor [mailto:alexandru.croitor at qt.io]
Sent: Thursday, March 23, 2017 11:35 AM
To: Ruei, Eric
Cc: qtwebengine at qt-project.org<mailto:qtwebengine at qt-project.org>
Subject: Re: [Qtwebengine] QT5.6.2 to 5.7.1 default behavior changes and qtWebengine ozone bridge

Hi,

I am not aware of the reason for the seccomp crash, but you can find some similar reports with some info at https://bugreports.qt.io/browse/QTBUG-57709 maybe that helps you investigate the issue further.

Regarding GLES, I am not very familiar with that code, but it is plausible it is incomplete. You could check if there are any code changes in Qt 5.8.x and in unreleased Qt 5.9.0.

Rergards,
Alex.


On 23 Mar 2017, at 16:14, Ruei, Eric <e-ruei1 at ti.com<mailto:e-ruei1 at ti.com>> wrote:

Hi, Alexandru:

Thank you so much!
The information that you provided is extremely helpful and it may take me forever to get without your help!

For question #3, we are using Linux kernel 4.9.13 and seccomp-bpf is enabled.
With the default setting, the following error occurs continuously and the Seccomp is set to 0 at /proc/<pid>/status.

Render process exited with code 256 (abnormal exit)
/home/a0850410/yocto_builds/LTS2017_0/oe-layersetup/build/arago-tmp-external-linaro-toolchain/work/armv7ahf-neon-linux-gnueabi/qtwebengine/5.7.1+gitAUTOINC+9cc97f0c63_b3c79e92f0-r0/git/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:futex() failure
Received signal 11 SEGV_MAPERR 000000000007
[end of stack trace]
…

The qtwebengine demo browser works if seccomp-bpf sandbox is disabled by --disable-seccomp-filter-sandbox.

Do you have any idea for question #4?

Best regards,

Eric

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/qtwebengine/attachments/20170515/649c9bd0/attachment.html>


More information about the QtWebEngine mailing list