Details
Description
Currently time elated functions are broken, which leads to issues like videos not playing.
The error message
[1:1:0215/132308.677912:ERROR:libc_interceptor.cc(208)] Your system is broken: dlsym doesn't work! This has been reported to be caused by Nvidia's libGL. You should expect time related functions to misbehave. https://bugs.chromium.org/p/chromium/issues/detail?id=16800
appears on startup.
No nvidia driver is installed. Instead, this is caused by the following issue:
QtWebEngineProcess calls dlsym(RTLD_NEXT, "localtime") from libQt5WebEngineCore.so.5, which only looks into libc.so.6 if it's after libQt5WebEngineCore.so.5 in the library search order.
This is not always the case though. For recent systems, the order of DT_NEEDED entries in QtWebEngineProcess changed.
Broken:
# readelf -d /usr/lib64/qt5/libexec/QtWebEngineProcess Dynamic section at offset 0x2db0 contains 30 entries: Tag Type Name/Value 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x0000000000000001 (NEEDED) Shared library: [libQt5Core.so.5] 0x0000000000000001 (NEEDED) Shared library: [libQt5WebEngineCore.so.5] 0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
Working:
# readelf -d /usr/lib64/qt5/libexec/QtWebEngineProcess Dynamic section at offset 0x1db0 contains 30 entries: Tag Type Name/Value 0x0000000000000001 (NEEDED) Shared library: [libQt5Core.so.5] 0x0000000000000001 (NEEDED) Shared library: [libQt5WebEngineCore.so.5] 0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
Originally reported as https://bugzilla.opensuse.org/show_bug.cgi?id=1163744.
Attachments
For Gerrit Dashboard: QTBUG-82186 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
291216,3 | Fix recursive deadlock in sandbox::InitLibcLocaltimeFunctions | 77-based | qt/qtwebengine-chromium | Status: MERGED | +2 | 0 |
297992,2 | Fix recursive deadlock in sandbox::InitLibcLocaltimeFunctions | 80-based | qt/qtwebengine-chromium | Status: MERGED | +2 | 0 |