• Please help reporting upstream bugs

    From John Paul Adrian Glaubitz@21:1/5 to All on Sat Jun 24 13:10:01 2023
    Hello!

    There are still many packages in Debian that fail to build from source on sparc64,
    so I thought it might be a good idea to ask the community for help reporting these
    bugs upstream.

    The list of affected packages can be found by following this link:

    https://buildd.debian.org/status/architecture.php?a=sparc64&suite=sid

    Look for "Build-Attempted" section and click any of the package names to get to the
    package's build result overview. Then click onto "Build-Attempted" link in the "Status"
    column to obtain the build log of a package that failed to build from source (FTBFS),
    hold the "Ctrl" key to open the build log in a new browser tab.

    Search the build log for the error, usually by searching for "error:" (the word "error"
    followed by a colon) to spot a compiler error or "FAIL:" to search for a testsuite failure.

    On sparc64, another common error is unaligned access which is denoted by the error message
    "bus error", so search for this as well when trying to find out why a build failed on sparc64.

    In the example of the package "scanman", this looks like this (https://buildd.debian.org/status/fetch.php?pkg=scanmem&arch=sparc64&ver=0.17-5&stamp=1687584284&raw=0):

    ============================================================================================

    FAIL: sm_test.sh
    ================


    # Start memfake
    ./memfake 4 1 &
    memfake_pid=$!

    # Test runs

    test_sm () {
    ../scanmem -p $memfake_pid -e -c "$1"
    }

    test_sm "option scan_data_type int8;0;exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    info: maps file located at /proc/3148168/maps opened.
    info: 6 suitable regions found.
    Please enter current value, or "help" for other commands.
    option scan_data_type int8
    0
    01/06 searching 0x10000200000 - 0x10000202000..........ok
    02/06 searching 0x7feffc98000 - 0x7feffcba000..........ok
    03/06 searching 0xfff800010002a000 - 0xfff800010002e000.ok
    04/06 searching 0xfff800010050a000 - 0xfff800010050c000.ok
    05/06 searching 0xfff8000100c04000 - 0xfff8000100c10000.ok
    06/06 searching 0xfff8000100c10000 - 0xfff8000101012000.ok
    info: we currently have 141820 matches.
    141820> exit
    test_sm "option scan_data_type int8;snapshot;exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    info: maps file located at /proc/3148168/maps opened.
    info: 6 suitable regions found.
    Please enter current value, or "help" for other commands.
    option scan_data_type int8
    snapshot
    01/06 searching 0x10000200000 - 0x10000202000..........ok
    02/06 searching 0x7feffc98000 - 0x7feffcba000..........ok
    03/06 searching 0xfff800010002a000 - 0xfff800010002e000.ok
    04/06 searching 0xfff800010050a000 - 0xfff800010050c000.ok
    05/06 searching 0xfff8000100c04000 - 0xfff8000100c10000.ok
    06/06 searching 0xfff8000100c10000 - 0xfff8000101012000.ok
    info: we currently have 147456 matches.
    147456> exit

    test_sm "option scan_data_type int8;snapshot;1;exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    error: failed to open maps file /proc/3148168/maps.
    error: sorry, there was a problem getting a list of regions to search.
    warn: the pid may be invalid, or you don't have permission.
    Enter the pid of the process to search using the "pid" command.
    Enter "help" for other commands.
    option scan_data_type int8
    snapshot
    error: no target set, type `help pid`.
    test_sm "option scan_data_type int8;1;delete 0;1;exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    error: failed to open maps file /proc/3148168/maps.
    error: sorry, there was a problem getting a list of regions to search.
    warn: the pid may be invalid, or you don't have permission.
    Enter the pid of the process to search using the "pid" command.
    Enter "help" for other commands.
    option scan_data_type int8
    1

    test_sm "option scan_data_type int;1;exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    error: failed to open maps file /proc/3148168/maps.
    error: sorry, there was a problem getting a list of regions to search.
    warn: the pid may be invalid, or you don't have permission.
    Enter the pid of the process to search using the "pid" command.
    Enter "help" for other commands.
    option scan_data_type int
    1
    test_sm "option scan_data_type float;1;exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    error: failed to open maps file /proc/3148168/maps.
    error: sorry, there was a problem getting a list of regions to search.
    warn: the pid may be invalid, or you don't have permission.
    Enter the pid of the process to search using the "pid" command.
    Enter "help" for other commands.
    option scan_data_type float
    1
    test_sm "option scan_data_type number;1;exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    error: failed to open maps file /proc/3148168/maps.
    error: sorry, there was a problem getting a list of regions to search.
    warn: the pid may be invalid, or you don't have permission.
    Enter the pid of the process to search using the "pid" command.
    Enter "help" for other commands.
    option scan_data_type number
    1

    huge_bytearray=""
    huge_string=""
    # 257 not a typo, forces full scan routine use
    for ((i=0; i < 257; i++)); do
    huge_bytearray+="00 ?? "
    huge_string+="a"
    done

    test_sm "option scan_data_type bytearray;${huge_bytearray};exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    error: failed to open maps file /proc/3148168/maps.
    error: sorry, there was a problem getting a list of regions to search.
    warn: the pid may be invalid, or you don't have permission.
    Enter the pid of the process to search using the "pid" command.
    Enter "help" for other commands.
    option scan_data_type bytearray
    00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ??
    00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00
    ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ??
    00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00
    ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ??
    00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00
    ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ??
    00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ?? 00 ??
    test_sm "option scan_data_type string;\" ${huge_string};exit"
    scanmem version 0.17
    libscanmem version 0.17

    Copyright (C) 2006-2017 Scanmem authors
    See https://github.com/scanmem/scanmem/blob/master/AUTHORS for a full author list

    scanmem comes with ABSOLUTELY NO WARRANTY; for details type `show warranty'. This is free software, and you are welcome to redistribute it
    under certain conditions; type `show copying' for details.

    warn: Run scanmem as root if memory regions are missing. See scanmem man page.

    error: failed to open maps file /proc/3148168/maps.
    error: sorry, there was a problem getting a list of regions to search.
    warn: the pid may be invalid, or you don't have permission.
    Enter the pid of the process to search using the "pid" command.
    Enter "help" for other commands.
    option scan_data_type string
    "
    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

    # Clean up
    kill $memfake_pid
    ./sm_test.sh: line 36: kill: (3148168) - No such process
    FAIL sm_test.sh (exit status: 1)

    ============================================================================================

    Go back to the other tab which shows the build results for the packages on all architectures,
    click "Tracker" to get to the package's overview page. Click onto "Homepage" to get to the
    homepage of the original package and navigate through the webpage to create a bug report.

    For the bug report, please include:

    - the full URL to the build log of the affected package on buildd.debian.org
    - an excerpt from the build log like the one above that shows the actual build error
    - a mention of the "GCC Compile Farm" (https://gcc.gnu.org/wiki/CompileFarm) explaining
    that PowerPC machines for debugging the problem on the target architecture can be
    found there; access to the "GCC Compile Farm" is free for every open source developer

    Due to the large amount of packages that FTBFS on sparc64, reporting arch-specific upstream
    bugs is the perfect task that can be crowd-sourced. In order to avoid redundant bug reports,
    it's probably a good idea to create a Google Doc sheet to document all packages where a bug
    report has already been created.

    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 John Paul Adrian Glaubitz on Sat Jun 24 14:50:01 2023
    On Sat, 2023-06-24 at 13:04 +0200, John Paul Adrian Glaubitz wrote:
    For the bug report, please include:

    - the full URL to the build log of the affected package on buildd.debian.org - an excerpt from the build log like the one above that shows the actual build error
    - a mention of the "GCC Compile Farm" (https://gcc.gnu.org/wiki/CompileFarm) explaining
    that PowerPC machines for debugging the problem on the target architecture can be
    found there; access to the "GCC Compile Farm" is free for every open source developer

    This is meant to say "SPARC machines for debugging the problem", of course.

    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)