Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-21376

"Bus Error" appear when running QML in MIPS platform.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Incomplete
    • Icon: P2: Important P2: Important
    • None
    • 4.7.0, 4.7.1, 4.7.2, 4.7.3, 4.7.4
    • None
    • Linux kernel version 2.6.32.27; gcc version 4.4 ;little endian ;cpu (MIPS 24ke)

      When I tried to run some QML examples(animation, photoviewer, ...) by qmlviewer in MIPS platform, I found that "Bus Error" always appeared, except the simplest example(helloworld in tutorial/helloworld/tutorial1.qml).
      Then I found there was a similar bug(QTBUG-17355) has been reported. Following the decription in this bug, I modified "dummy[8]" to "dummy[8] _attribute_((aligned(8)))", I found it was helpful for Qt4.7.0, but Qt4.7.3 and Qt4.8.0b1 didn't work yet, and photoviewer still had the same issue.
      Though the comment in QTBUG-17355 said that "In QtQuick2 we've switched to V8, which doesn't have this problem.", but I don't think it is a good answer, because QtQuick2 isn't released offically yet, and I need QML works in 4.7.x.
      After debugging for a long time, I found it is still a MIPS alignment issue, besides "dummy[8]" in QTBUG-17355 has to be modified, there are 2 more files need to modify as following:

      To fix "bus error" for most of qml examples:
      src/gui/painting/qpaintengine_raster.cpp: function "QRasterPaintEnginePrivate::rastersize(...)", the pointer of rasterPoolBase must be 8-bytes alignment.
      src/gui/painting/qgray_raster.c: structure "TWorker": member "qt_ft_jmp_buf jump_buffer" must be 8-bytes alignment.

      To fix "bus error" in photo viewer after applying modification as above:
      src/declarative/qml/qdeclarativevmemetaobject.cpp: class "QDeclarativeVMEVariant": member "data[4]" must be 8-bytes alignment.

      I will make a patch later for this modification.

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Unassigned Unassigned
            wing Wing.Chen
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes