Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt WebKit
  4. QT Demo Browser crashing on aarch64 platform
Forum Updated to NodeBB v4.3 + New Features

QT Demo Browser crashing on aarch64 platform

Scheduled Pinned Locked Moved Unsolved Qt WebKit
13 Posts 3 Posters 1.9k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K kishore-kkc

    Hi @jsulm ,

    Thanks for the reply, i haven't enabled notifications that's the reason for late response.

    initially browser simply crashed after invocation, but after that i made below change at src/3rdparty/webkit/Source/JavaScriptCore/heap/MarkedBlock.h
    Original line: static const size_t blockSize = 16 * KB;
    My change: static const size_t blockSize = 64 * KB;

    after changing blockSize to 64KB, now i'm able to run browser and open www.google.com...but now if i search anything in google, when directing to search results page it's crashing.

    Below is the stack trace of the crash:
    (gdb) bt
    #0 0x0000ffffbcf6f128 in JSC::HandleHeap::Node::handleHeap() ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #1 0x0000ffffbcf6ee7c in JSC::HandleHeap::heapFor(JSC::JSValue*) ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #2 0x0000ffffbdc7b0a8 in JSC::WeakGCMap<std::pair<WTF::RefPtrWTF::StringImpl, unsigned int>, JSC::Structure, JSC::StructureTransitionTable::WeakGCMapFinalizerCallback, JSC::StructureTransitionTable::Hash, JSC::StructureTransitionTable::HashTraits>::finalize(JSC::HandleJSC::Unknown, void*) ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #3 0x0000ffffbdbe2e14 in JSC::HandleHeap::finalizeWeakHandles() ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #4 0x0000ffffbdbe45a4 in JSC::Heap::reset(JSC::Heap::SweepToggle) ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #5 0x0000ffffbdbe4574 in JSC::Heap::collectAllGarbage() ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #6 0x0000ffffbd2daa48 in WebCore::collect(void*) ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #7 0x0000ffffbd2dab6c in WebCore::GCController::gcTimerFired(WebCore::TimerWebCore::GCController) ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #8 0x0000ffffbd2dad4c in WebCore::TimerWebCore::GCController::fired() ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #9 0x0000ffffbd713b80 in WebCore::ThreadTimers::sharedTimerFiredInternal() ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #10 0x0000ffffbd713a94 in WebCore::ThreadTimers::sharedTimerFired() ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #11 0x0000ffffbd889874 in WebCore::SharedTimerQt::timerEvent(QTimerEvent
    ) ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #12 0x0000ffffbbb065f8 in QObject::event (this=0x6874f0, e=0xffffffffe318) at kernel/qobject.cpp:1134
    #13 0x0000ffffbbecbbc8 in QApplicationPrivate::notify_helper (this=0x551350, receiver=0x6874f0, e=0xffffffffe318) at kernel/qapplication.cpp:4542
    #14 0x0000ffffbbec9684 in QApplication::notify (this=0xffffffffe750, receiver=0x6874f0, e=0xffffffffe318) at kernel/qapplication.cpp:3924
    #15 0x0000ffffbbaef5f4 in QCoreApplication::notifyInternal (this=0xffffffffe750, receiver=0x6874f0, event=0xffffffffe318) at kernel/qcoreapplication.cpp:931
    #16 0x0000ffffbd2811c4 in QCoreApplication::sendEvent(QObject*, QEvent*) ()
    from qt-everywhere-enterprise-src-4.8.5/lib/libQtWebKit.so.4
    #17 0x0000ffffbbb263e0 in QTimerInfoList::activateTimers (this=0x552fd8) at kernel/qeventdispatcher_unix.cpp:613
    #18 0x0000ffffbbb27258 in QEventDispatcherUNIX::activateTimers (this=0x552750) at kernel/qeventdispatcher_unix.cpp:870
    #19 0x0000ffffbbb2759c in QEventDispatcherUNIX::processEvents (this=0x552750, flags=...) at kernel/qeventdispatcher_unix.cpp:932
    #20 0x0000ffffbbf8a5a4 in QEventDispatcherX11::processEvents (this=0x552750, flags=...) at kernel/qeventdispatcher_x11.cpp:130
    #21 0x0000ffffbbaecdb4 in QEventLoop::processEvents (this=0xffffffffe6f0, flags=...) at kernel/qeventloop.cpp:127
    #22 0x0000ffffbbaecf18 in QEventLoop::exec (this=0xffffffffe6f0, flags=...) at kernel/qeventloop.cpp:178
    #23 0x0000ffffbbaefca4 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1203
    #24 0x0000ffffbbec92b0 in QApplication::exec () at kernel/qapplication.cpp:3803
    #25 0x000000000046c724 in main (argc=1, argv=0xffffffffe8c8) at main.cpp:29

    Webkit Version:
    from src/3rdparty/webkit/Source/WebKit/mac/Configurations/Version.xcconfig
    MAJOR_VERSION = 534;
    MINOR_VERSION = 34;

    jsulmJ Offline
    jsulmJ Offline
    jsulm
    Lifetime Qt Champion
    wrote on last edited by
    #4

    @kishore-kkc Do you have to use Qt4? If not upgrade to recent Qt5 version. If you do have to use Qt4 you should consider to upgrade to the latest version (4.8.7 if I remember correctly).

    https://forum.qt.io/topic/113070/qt-code-of-conduct

    1 Reply Last reply
    0
    • K Offline
      K Offline
      kishore-kkc
      wrote on last edited by
      #5

      Hi @jsulm

      Yes @jsulm, we have to use only Qt4.

      Though i use 4.8.5 enterprise edition, but as you suggested to try 4.8.7 i have downloaded and build 4.8.7 from https://download.qt.io/archive/qt/4.8/4.8.7.

      But still issue is not resolved, still i'm getting same crash.

      jsulmJ 1 Reply Last reply
      0
      • K kishore-kkc

        Hi @jsulm

        Yes @jsulm, we have to use only Qt4.

        Though i use 4.8.5 enterprise edition, but as you suggested to try 4.8.7 i have downloaded and build 4.8.7 from https://download.qt.io/archive/qt/4.8/4.8.7.

        But still issue is not resolved, still i'm getting same crash.

        jsulmJ Offline
        jsulmJ Offline
        jsulm
        Lifetime Qt Champion
        wrote on last edited by
        #6

        @kishore-kkc said in QT Demo Browser crashing on aarch64 platform:

        Though i use 4.8.5 enterprise edition

        Sounds like you have a commercial license. If that's the case I suggest to contact QtCompany directly if you do not find a solution here.

        https://forum.qt.io/topic/113070/qt-code-of-conduct

        1 Reply Last reply
        0
        • K Offline
          K Offline
          kishore-kkc
          wrote on last edited by
          #7

          Yes @jsulm , we use commercial version of 4.8.5... but i don't have account/credential details currently, i just have source code and license key, so cannot contact QtCompany directly, so searching for solution here..

          1 Reply Last reply
          0
          • K Offline
            K Offline
            Konstantin Tokarev
            wrote on last edited by
            #8

            You might want to try using QtWebKit 2.3.4 from http://download.kde.org/stable/qtwebkit-2.3/2.3.4/src/qtwebkit-2.3.4.tar.gz, it's totally compatible with your Qt 4.8 while having a bit newer WebKit. Note that you'll still need to change block size. Also note that both versions of WebKit are like 10+ years old and were developed at time when there was no Aarch64 on the horizon.

            1 Reply Last reply
            0
            • K Offline
              K Offline
              kishore-kkc
              wrote on last edited by
              #9

              @Konstantin-Tokarev ,
              As you suggested, we have tried with 2.3.4 version and changed block size also, but it still didn't work.fFacing same crash. Do you any other suggestions?, or any other ways i can try?

              1 Reply Last reply
              0
              • K Offline
                K Offline
                Konstantin Tokarev
                wrote on last edited by
                #10

                Make debug build and try to debug it (or, at least, post informative backtrace here)

                1 Reply Last reply
                0
                • K Offline
                  K Offline
                  kishore-kkc
                  wrote on last edited by
                  #11

                  @Konstantin-Tokarev
                  I have already build debug version and pasted backtrace in the starting of the discussion. Please check.

                  1 Reply Last reply
                  0
                  • K Offline
                    K Offline
                    Konstantin Tokarev
                    wrote on last edited by
                    #12

                    Did you build debug version of qtwebkit? Your backtrace doesn't have line numbers so it's hard to say anything about what caused crash

                    1 Reply Last reply
                    0
                    • K Offline
                      K Offline
                      kishore-kkc
                      wrote on last edited by
                      #13

                      @Konstantin-Tokarev
                      I have build debug libraries with below options to configure script
                      -debug , -webkit-debug,
                      is there any option i should pass so that trace gives us more information?

                      1 Reply Last reply
                      0

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt Extensions
                      • Unsolved