• kf6-kconfig 6.8.0 test failure on sparc64

    From Petter Reinholdtsen@21:1/5 to All on Fri Jan 3 15:00:01 2025
    Sorry for the earlier premature email submission. It was sent by
    mistake.

    While trying to track down why lsdvd failed to run its test on sparc64,
    I went down a rabbit hole that ended up with the build failure of
    kf6-kconfig 6.8.0 on sparc64. The build fail because two tests
    segfault, apparently due to accessing a null pointer.

    I've managed to replicate the crash on the porterbox, after building kf6-kconfig on sid and adding libssl3t64-dbgsym for more useful debug information:

    (sid_sparc64-dchroot)pere@stadler:~/kf6-kconfig-6.8.0$ QT_QPA_PLATFORM=offscreen gdb ./obj-sparc64-linux-gnu/bin/test14qml
    GNU gdb (Debian 15.1-1) 15.1
    Copyright (C) 2024 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    Type "show copying" and "show warranty" for details.
    This GDB was configured as "sparc64-linux-gnu".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see: <https://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from ./obj-sparc64-linux-gnu/bin/test14qml...
    (gdb) run
    Starting program: /home/pere/kf6-kconfig-6.8.0/obj-sparc64-linux-gnu/bin/test14qml
    [Thread debugging using libthread_db enabled]
    Using host libthread_db library "/lib/sparc64-linux-gnu/libthread_db.so.1".

    Program received signal SIGILL, Illegal instruction.
    0xfff800011295d660 in _sparcv9_random () at ../crypto/sparccpuid.S:350
    warning: 350 ../crypto/sparccpuid.S: No such file or directory
    (gdb) bt
    #0 0xfff800011295d660 in _sparcv9_random () at ../crypto/sparccpuid.S:350
    #1 0xfff800011295dd80 in OPENSSL_cpuid_setup () at ../crypto/sparcv9cap.c:201 #2 0xfff80001127cd688 in _init () at ../crypto/sparccpuid.S:578
    #3 0xfff8000100004644 in ??? () at /lib64/ld-linux.so.2
    (gdb)

    Anyone got any idea what is going wrong here? Is openssl supposed to
    work on sparc64?

    Is it useful to report this as a bug against libssl3t64 or kf6-kconfig,
    or is it better to keep it on the porters list for now?

    --
    Happy hacking
    Petter Reinholdtsen

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Petter Reinholdtsen@21:1/5 to All on Fri Jan 3 14:50:01 2025
    While trying to track down why lsdvd failed to run its test on sparc64,
    I went down a rabbit hole that ended up with the build failure of
    kf6-kconfig 6.8.0 on sparc64.(sid_sparc64-dchroot)pere@stadler:~/kf6-kconfig-6.8.0$ QT_QPA_PLATFORM=offscreen gdb ./obj-sparc64-linux-gnu/bin/test14qml
    GNU gdb (Debian 15.1-1) 15.1
    Copyright (C) 2024 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    Type "show copying" and "show warranty" for details.
    This GDB was configured as "sparc64-linux-gnu".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see: <https://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from ./obj-sparc64-linux-gnu/bin/test14qml...
    (gdb) run
    Starting program: /home/pere/kf6-kconfig-6.8.0/obj-sparc64-linux-gnu/bin/test14qml
    [Thread debugging using libthread_db enabled]
    Using host libthread_db library "/lib/sparc64-linux-gnu/libthread_db.so.1".

    Program received signal SIGILL, Illegal instruction.
    0xfff800011295d660 in _sparcv9_random () at ../crypto/sparccpuid.S:350
    warning: 350 ../crypto/sparccpuid.S: No such file or directory
    (gdb) bt
    #0 0xfff800011295d660 in _sparcv9_random () at ../crypto/sparccpuid.S:350
    #1 0xfff800011295dd80 in OPENSSL_cpuid_setup () at ../crypto/sparcv9cap.c:201 #2 0xfff80001127cd688 in _init () at ../crypto/sparccpuid.S:578
    #3 0xfff8000100004644 in ??? () at /lib64/ld-linux.so.2
    (gdb)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Paul Adrian Glaubitz@21:1/5 to Petter Reinholdtsen on Fri Jan 3 15:10:01 2025
    Hi Petter,

    On Fri, 2025-01-03 at 14:54 +0100, Petter Reinholdtsen wrote:
    While trying to track down why lsdvd failed to run its test on sparc64,
    I went down a rabbit hole that ended up with the build failure of
    kf6-kconfig 6.8.0 on sparc64.(sid_sparc64-dchroot)pere@stadler:~/kf6-kconfig-6.8.0$ QT_QPA_PLATFORM=offscreen gdb ./obj-sparc64-linux-gnu/bin/test14qml
    GNU gdb (Debian 15.1-1) 15.1
    Copyright (C) 2024 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    Type "show copying" and "show warranty" for details.
    This GDB was configured as "sparc64-linux-gnu".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see: <https://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from ./obj-sparc64-linux-gnu/bin/test14qml...
    (gdb) run
    Starting program: /home/pere/kf6-kconfig-6.8.0/obj-sparc64-linux-gnu/bin/test14qml
    [Thread debugging using libthread_db enabled]
    Using host libthread_db library "/lib/sparc64-linux-gnu/libthread_db.so.1".

    Program received signal SIGILL, Illegal instruction.
    0xfff800011295d660 in _sparcv9_random () at ../crypto/sparccpuid.S:350 warning: 350 ../crypto/sparccpuid.S: No such file or directory
    (gdb) bt
    #0 0xfff800011295d660 in _sparcv9_random () at ../crypto/sparccpuid.S:35
    0
    #1 0xfff800011295dd80 in OPENSSL_cpuid_setup () at ../crypto/sparcv9cap.c:201
    #2 0xfff80001127cd688 in _init () at ../crypto/sparccpuid.S:578
    #3 0xfff8000100004644 in ??? () at /lib64/ld-linux.so.2
    (gdb)

    I think this is just the usual probing of OpenSSL for processor features.

    Trying pressing "c" to continue execution until you run into the actual crash.

    Adrian

    --
    .''`. John Paul Adrian Glaubitz
    : :' : Debian Developer
    `. `' Physicist
    `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Paul Adrian Glaubitz@21:1/5 to Petter Reinholdtsen on Fri Jan 3 16:30:01 2025
    Hi Petter,

    On Fri, 2025-01-03 at 15:34 +0100, Petter Reinholdtsen wrote:
    (gdb) c
    Continuing.
    Detected locale "C" with character encoding "ANSI_X3.4-1968", which is not UTF-8.
    Qt depends on a UTF-8 locale, and has switched to "C.UTF-8" instead.
    If this causes problems, reconfigure your locale. See the locale(1) manual for more information.
    ********* Start testing of Test15Qml *********
    Config: Using QtTest library 6.7.2, Qt 6.7.2 (sparcv9-big_endian-lp64 shared (dynamic) release build; by GCC 14.2.0), debian unknown
    PASS : Test15Qml::initTestCase()
    [New Thread 0xfff80001148018c0 (LWP 1368851)]

    Thread 1 "test15qml" received signal SIGSEGV, Segmentation fault. 0xfff800010049b52c in ?? () from /lib/sparc64-linux-gnu/libQt6Qml.so.6
    (gdb) bt
    #0 0xfff800010049b52c in ??? () at /lib/sparc64-linux-gnu/libQt6Qml.so.6 (gdb)

    It's most likely related to this bug which affects Javascript on SPARC and
    any other architectures with large enough virtual address spaces [1].

    Not sure if this particular fix has already landed in the Qt6 version currently shipping in Debian.

    Can you verify that?

    Adrian

    [1] https://bugreports.qt.io/browse/QTBUG-56264

    --
    .''`. John Paul Adrian Glaubitz
    : :' : Debian Developer
    `. `' Physicist
    `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Petter Reinholdtsen@21:1/5 to All on Fri Jan 3 18:10:01 2025
    [John Paul Adrian Glaubitz]
    Would it be possible to include that patch in the Debian package?

    As a random developer with no say whatsoever on the topic, I can state
    that I am positive and give it a thumbs up. Is there a BTS request for
    some Qt related package to include a tested patch?

    --
    Happy hacking
    Petter Reinholdtsen

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Petter Reinholdtsen@21:1/5 to All on Fri Jan 3 17:40:01 2025
    [John Paul Adrian Glaubitz]
    Can you verify that?

    I see no sign of
    <URL: https://bugreports.qt.io/secure/attachment/84541/sparc64.patch > in
    <URL: https://sources.debian.org/src/qt6-declarative/6.7.2%2Bdfsg-11/src/qml/jsruntime/qv4value_p.h/ >
    at least, so I doubt it.

    --
    Happy hacking
    Petter Reinholdtsen

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Paul Adrian Glaubitz@21:1/5 to Petter Reinholdtsen on Fri Jan 3 17:50:01 2025
    On Fri, 2025-01-03 at 17:39 +0100, Petter Reinholdtsen wrote:
    [John Paul Adrian Glaubitz]
    Can you verify that?

    I see no sign of
    <URL: https://bugreports.qt.io/secure/attachment/84541/sparc64.patch > in <URL: https://sources.debian.org/src/qt6-declarative/6.7.2%2Bdfsg-11/src/qml/jsruntime/qv4value_p.h/ >
    at least, so I doubt it.

    Would it be possible to include that patch in the Debian package?

    Adrian

    --
    .''`. John Paul Adrian Glaubitz
    : :' : Debian Developer
    `. `' Physicist
    `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Paul Adrian Glaubitz@21:1/5 to Petter Reinholdtsen on Fri Jan 3 18:30:01 2025
    On Fri, 2025-01-03 at 18:12 +0100, Petter Reinholdtsen wrote:
    [John Paul Adrian Glaubitz]
    Would it be possible to include that patch in the Debian package?

    As a random developer with no say whatsoever on the topic, I can state
    that I am positive and give it a thumbs up. Is there a BTS request for
    some Qt related package to include a tested patch?

    I guess it would be part of src:qt6-declarative, wouldn't it?

    Adrian

    --
    .''`. John Paul Adrian Glaubitz
    : :' : Debian Developer
    `. `' Physicist
    `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)