Bug 1464883

Summary: Cannot start qupzilla - relocation error (QtWebEngine binary compatibility breakage in 5.9.0)
Product: [Fedora] Fedora Reporter: Mattia Verga <mattia.verga>
Component: qt5-qtwebengineAssignee: Kevin Kofler <kevin>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: clxcoltz, helio, kde-sig, kevin, lupinix.fedora, mattia.verga, projects.rg, rdieter
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qt5-qtwebengine-5.9.0-4.fc27 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-06-28 03:02:28 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Mattia Verga 2017-06-26 07:49:19 UTC
Fresh new Rawhide installation, when I try to open Qupzilla I get:

qupzilla: relocation error: /lib64/libQupZilla.so.2: symbol free, version Qt_5 not defined in file libQt5WebEngineCore.so.5 with link time reference

Comment 1 Kevin Kofler 2017-06-26 08:43:06 UTC
I am already aware of this (see the comments in the F26 Bodhi update), and have a proposed fix.

Can you please try:
https://koji.fedoraproject.org/koji/buildinfo?buildID=911295
?

(If you also have the freeworld package, you'll also want:
http://koji.rpmfusion.org/koji/buildinfo?buildID=4293
which will hopefully be done soon at least for x86, or you can temporarily uninstall qt5-qtwebengine-freeworld.)

Comment 2 Mattia Verga 2017-06-26 09:17:49 UTC
After the upgrade of qt5-qtwebengine-5.9.0-3.fc27 launching Qupzilla it gets stuck at "QupZilla: Creating new profile directory"

Comment 3 Kevin Kofler 2017-06-26 09:44:24 UTC
So the symbol issue seems fixed, but the new issue is all the weirder. I am not sure where exactly it hangs, because the code that creates the profile directory does not write anything when done, so it is likely that the actual issue actually happens much later. Have you tried restarting the session after upgrading QtWebEngine? (There may be some hung background processes from the old QupZilla runs that may interfere otherwise.)

Comment 4 Kevin Kofler 2017-06-26 13:05:12 UTC
*** Bug 1465033 has been marked as a duplicate of this bug. ***

Comment 5 Kevin Kofler 2017-06-26 13:06:00 UTC
Workaround for F26 users:
sudo dnf --disablerepo=updates-testing distro-sync qt5-qtwebengine

Comment 6 Rex Dieter 2017-06-26 15:32:30 UTC
For what it's worth, I cannot reproduce the "qupzilla gets stuck" issue on f25

Comment 7 clxcoltz 2017-06-26 16:05:36 UTC
On F26 / updates-testing, this only happens after upgrading to Qt5.9. I've worked around by downgrading QtWebEngine as mentioned above and now Qupzilla works again.

Comment 8 Kevin Kofler 2017-06-26 20:42:38 UTC
I debugged the issue from comment #2: The problem is the linker (or the dynamic linker?) ends up picking my realloc@Qt_5 to resolve realloc calls within QtWebEngine, which then ends up calling itself (for the same reason), hanging the process in an infinite loop of tailcalls. (There is no stack overflow because the calls are tailcall-optimized.)

I think I need this fix:
https://codereview.qt-project.org/#/c/198545/
from upstream https://bugreports.qt.io/browse/QTBUG-61521 – I'll try a new build.

Interestingly, a scratch build for F26 that I did with the same patch as in Rawhide appears to work. Weird. Still, I'll do the official F26 build with the updated patches.

Comment 9 Kevin Kofler 2017-06-26 23:46:03 UTC
Try this one: https://koji.fedoraproject.org/koji/buildinfo?buildID=912065

Comment 10 Mattia Verga 2017-06-27 07:33:19 UTC
Forgive me for the delay, I was out for work.

So, I can confirm that the latest update to qt5-qtwebengine-5.9.0-4.fc27 fixes the problem. Qupzilla is now working again.

Thanks!

Comment 11 Kevin Kofler 2017-06-28 03:02:28 UTC
This is fixed in Rawhide in qt5-qtwebengine-5.9.0-4.fc27. I also edited the Fedora 26 testing update https://bodhi.fedoraproject.org/updates/FEDORA-2017-e83c26a8c9 with a fixed build (qt5-qtwebengine-5.9.0-4.fc26).