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 Offline
    K Offline
    kishore-kkc
    wrote on last edited by
    #1

    COnfiguration:
    Qt: 4.8.5
    OS: Centos7
    GCC: 4.8.5
    ARCH: arm Ampere(R) Altra(R) Processor

    I have build qt4.8.5 directly on arm machine and it's crashing with "segmentation fault" message when i search some text in google.com in qt demo browser.

    jsulmJ 1 Reply Last reply
    0
    • K kishore-kkc

      COnfiguration:
      Qt: 4.8.5
      OS: Centos7
      GCC: 4.8.5
      ARCH: arm Ampere(R) Altra(R) Processor

      I have build qt4.8.5 directly on arm machine and it's crashing with "segmentation fault" message when i search some text in google.com in qt demo browser.

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

      @kishore-kkc I doubt anybody will be able to find out why it is crashing with that amount of information.
      Please build in debug mode and run through debugger to get the stack trace after the crash.

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

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

        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 1 Reply Last reply
        0
        • 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