Skip to content

segfault during unit tests on ppc64le and loongarch64 #324

@maribu

Description

@maribu

Steps to Reproduce

On Alpine on ppc64le or loongarch64 using the source from the tag 7.0 run:

sudo apk add cjson-dev cmake qt6-qtbase-dev samurai
cmake -B build -G Ninja -Wno-dev \
	-DCMAKE_BUILD_TYPE=MinSizeRel \
	-DCMAKE_INSTALL_PREFIX=/usr \
	-DBUILD_SHARED_LIBS=ON \
	-DBUILD_TOOLS=ON \
	-DBUILD_TESTING=ON \
	#
cmake --build build

Expected Results

The unit tests pass

Actual Result

ppc64le

Test project /builds/maribu/aports/community/tinycbor/src/tinycbor-7.0/build
    Start 1: tst_c90
    Start 2: tst_cpp
    Start 3: tst_encoder
    Start 4: tst_parser
    Start 5: tst_tojson
1/5 Test #1: tst_c90 ..........................   Passed    0.01 sec
2/5 Test #2: tst_cpp ..........................   Passed    0.01 sec
3/5 Test #4: tst_parser .......................***Exception: SegFault  0.01 sec
********* Start testing of tst_Parser *********
Config: Using QtTest library 6.11.0, Qt 6.11.0 (power64-little_endian-lp64 shared (dynamic) release build; by GCC 15.2.0), alpine 3.21.0_alpha20240923
PASS   : tst_Parser::initTestCase()
PASS   : tst_Parser::initParserEmpty()
Received signal 11 (SIGSEGV), code SEGV_ACCERR, accessing address 0x00007fffa50b0fff
         integers function time: 0ms, total time: 1ms
4/5 Test #5: tst_tojson .......................   Passed    0.03 sec
5/5 Test #3: tst_encoder ......................   Passed    0.07 sec
80% tests passed, 1 tests failed out of 5
Total Test time (real) =   0.07 sec
The following tests FAILED:
	  4 - tst_parser (SEGFAULT)
Errors while running CTest

(Excerpt from the full CI build log.)

loongarch64

Test project /builds/maribu/aports/community/tinycbor/src/tinycbor-7.0/build
    Start 1: tst_c90
    Start 2: tst_cpp
    Start 3: tst_encoder
    Start 4: tst_parser
    Start 5: tst_tojson
1/5 Test #1: tst_c90 ..........................   Passed    0.01 sec
2/5 Test #2: tst_cpp ..........................   Passed    0.01 sec
3/5 Test #4: tst_parser .......................***Exception: SegFault  0.02 sec
********* Start testing of tst_Parser *********
Config: Using QtTest library 6.11.0, Qt 6.11.0 (loongarch64-little_endian-lp64 shared (dynamic) release build; by GCC 15.2.0), alpine 3.21.0_alpha20240923
PASS   : tst_Parser::initTestCase()
PASS   : tst_Parser::initParserEmpty()
Received signal 11 (SIGSEGV), code SEGV_ACCERR, accessing address 0x00007ffff23b8fff
         integers function time: 0ms, total time: 1ms
4/5 Test #5: tst_tojson .......................   Passed    0.04 sec
5/5 Test #3: tst_encoder ......................   Passed    0.13 sec
80% tests passed, 1 tests failed out of 5
Total Test time (real) =   0.13 sec
The following tests FAILED:
	  4 - tst_parser (SEGFAULT)
Errors while running CTest

(Excerpt from the full CI build log.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions