Your message dated Tue, 22 Aug 2023 16:39:27 +0000
with message-id <e1qyupf-00cvhi...@fasolo.debian.org>
and subject line Bug#1049434: fixed in gtk4 4.12.0+ds-2
has caused the Debian Bug report #1049434,
regarding gtk4: FTBFS on riscv64: SIGSEGV in gtk:gtk / templates test
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1049434: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1049434
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: gtk4
Version: 4.10.3+ds-1
Severity: important
Tags: upstream ftbfs
Justification: fails to build from source
X-Debbugs-Cc: debian-ri...@lists.debian.org

Dear maintainer,

As part of the riscv64 bootstrap, I have been trying to build and import
gtk4 (involves building it with a mix of the official archive and the
old debian-ports archive). Unfortunately it fails to build from source
with a failure in the testsuite:

| 262/722 gtk:gtk / templates                                                   
                      ERROR             8.58s   killed by signal 5 SIGTRAP

This only happens for the wayland tests, not for the x11 ones. Here is
the corresponding test details and my attempt at using gdb:

| (sid-riscv64-sbuild)aurel32@vf2:/build/gtk4-4.10.5+ds$ GTK_CSD=1 
G_TEST_SRCDIR=/build/gtk4-4.10.5+ds/testsuite/gtk GSK_RENDERER=cairo 
MALLOC_PERTURB_=207 GDK_DEBUG=default-settings 
GSETTINGS_SCHEMA_DIR=/build/gtk4-4.10.5+ds
| /debian/build/deb/gtk G_ENABLE_DIAGNOSTIC=0 TEST_OUTPUT_SUBDIR=wayland 
GSETTINGS_BACKEND=memory 
G_TEST_BUILDDIR=/build/gtk4-4.10.5+ds/debian/build/deb/testsuite/gtk 
LD_LIBRARY_PATH=/build/gtk4-4.10.5+ds/debian/build/deb/gtk
|  GTK_A11Y=test GDK_BACKEND=wayland 
/build/gtk4-4.10.5+ds/debian/build/deb/testsuite/gtk/templates --tap -k
| TAP version 13
| # random seed: R02S8e710ced91d8200aa7e9c3678e4c2965
| # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation 
memory (GMemorySettingsBackend) for ?gsettings-backend?
| # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used 
after threads are created
| 1..29
| # Start of template tests
| # Start of GtkDialog tests
| # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation 
local (GLocalVfs) for ?gio-vfs?
| ok 1 /template/GtkDialog/basic
| ok 2 /template/GtkDialog/OverrideProperty
| # End of GtkDialog tests
| # Start of GtkMessageDialog tests
| ok 3 /template/GtkMessageDialog/basic
| # End of GtkMessageDialog tests
| # Start of GtkAboutDialog tests
| ok 4 /template/GtkAboutDialog/basic
| ok 5 /template/GtkAboutDialog/show
| # slow test /template/GtkAboutDialog/show executed in 0.52 secs
| # End of GtkAboutDialog tests
| # Start of GtkInfoBar tests
| ok 6 /template/GtkInfoBar/basic
| # End of GtkInfoBar tests
| # Start of GtkLockButton tests
| ok 7 /template/GtkLockButton/basic
| # End of GtkLockButton tests
| # Start of GtkAssistant tests
| ok 8 /template/GtkAssistant/basic
| ok 9 /template/GtkAssistant/show
| # slow test /template/GtkAssistant/show executed in 0.51 secs
| # End of GtkAssistant tests
| # Start of GtkScaleButton tests
| ok 10 /template/GtkScaleButton/basic
| # End of GtkScaleButton tests
| # Start of GtkVolumeButton tests
| ok 11 /template/GtkVolumeButton/basic
| # End of GtkVolumeButton tests
| # Start of GtkStatusBar tests
| ok 12 /template/GtkStatusBar/basic
| # End of GtkStatusBar tests
| # Start of GtkSearchBar tests
| ok 13 /template/GtkSearchBar/basic
| # End of GtkSearchBar tests
| # Start of GtkActionBar tests
| ok 14 /template/GtkActionBar/basic
| # End of GtkActionBar tests
| # Start of GtkAppChooserWidget tests
| ok 15 /template/GtkAppChooserWidget/basic
| # End of GtkAppChooserWidget tests
| # Start of GtkAppChooserDialog tests
| ok 16 /template/GtkAppChooserDialog/basic
| # slow test /template/GtkAppChooserDialog/basic executed in 0.52 secs
| # End of GtkAppChooserDialog tests
| # Start of GtkColorChooserDialog tests
| ok 17 /template/GtkColorChooserDialog/basic
| Gtk-Message: 20:36:10.703: GtkDialog mapped without a transient parent. This 
is discouraged.
| ok 18 /template/GtkColorChooserDialog/show
| # slow test /template/GtkColorChooserDialog/show executed in 0.54 secs
| # End of GtkColorChooserDialog tests
| # Start of GtkFileChooserWidget tests
| # DEBUG: Error acquiring bus for cloud providers: Cannot autolaunch D-Bus 
without X11 $DISPLAY
| ok 19 /template/GtkFileChooserWidget/basic
| # End of GtkFileChooserWidget tests
| # Start of GtkFileChooserDialog tests
| ok 20 /template/GtkFileChooserDialog/basic
| Gtk-Message: 20:36:11.700: GtkDialog mapped without a transient parent. This 
is discouraged.
| ok 21 /template/GtkFileChooserDialog/show
| # slow test /template/GtkFileChooserDialog/show executed in 0.60 secs
| # End of GtkFileChooserDialog tests
| # Start of GtkFontButton tests
| ok 22 /template/GtkFontButton/basic
| # End of GtkFontButton tests
| # Start of GtkFontChooserWidget tests
| ok 23 /template/GtkFontChooserWidget/basic
| # slow test /template/GtkFontChooserWidget/basic executed in 0.80 secs
| # End of GtkFontChooserWidget tests
| # Start of GtkFontChooserDialog tests
| ok 24 /template/GtkFontChooserDialog/basic
| # slow test /template/GtkFontChooserDialog/basic executed in 1.27 secs
| Gtk-Message: 20:36:15.219: GtkDialog mapped without a transient parent. This 
is discouraged.
| ok 25 /template/GtkFontChooserDialog/show
| # slow test /template/GtkFontChooserDialog/show executed in 1.76 secs
| # End of GtkFontChooserDialog tests
| # Start of GtkPageSetupUnixDialog tests
| ok 26 /template/GtkPageSetupUnixDialog/basic
| Gtk-Message: 20:36:16.143: GtkDialog mapped without a transient parent. This 
is discouraged.
| Segmentation fault (core dumped)
| (sid-riscv64-sbuild)aurel32@vf2:/build/gtk4-4.10.5+ds$ gdb 
/build/gtk4-4.10.5+ds/debian/build/deb/testsuite/gtk/templates core
| GNU gdb (Debian 13.2-1) 13.2
| Copyright (C) 2023 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 "riscv64-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 
/build/gtk4-4.10.5+ds/debian/build/deb/testsuite/gtk/templates...
| 
| warning: Can't open file /memfd:gdk-wayland (deleted) during file-backed 
mapping note processing
| 
| warning: Can't open file /memfd:wayland-cursor (deleted) during file-backed 
mapping note processing
| [New LWP 935442]
| [New LWP 935445]
| [New LWP 935444]
| [New LWP 935464]
| [Thread debugging using libthread_db enabled]
| Using host libthread_db library "/lib/riscv64-linux-gnu/libthread_db.so.1".
| Core was generated by 
`/build/gtk4-4.10.5+ds/debian/build/deb/testsuite/gtk/templates --tap -k'.
| Program terminated with signal SIGSEGV, Segmentation fault.
| #0  0x0000003f839b65f6 in gdk_surface_get_display 
(surface=surface@entry=0x2b02537d50) at ../../../gdk/gdksurface.c:1033
| 1033      g_return_val_if_fail (GDK_IS_SURFACE (surface), NULL);
| [Current thread is 1 (Thread 0x3f824e7480 (LWP 935442))]
| (gdb) bt full
| #0  0x0000003f839b65f6 in gdk_surface_get_display 
(surface=surface@entry=0x2b02537d50) at ../../../gdk/gdksurface.c:1033
|         __inst = 0x2b02537d50
|         __t = Python Exception <class 'gdb.error'>: No type named TypeNode.
| 
|         __r = <optimized out>
|         _g_boolean_var_27 = <optimized out>
|         __func__ = "gdk_surface_get_display"
| #1  0x0000003f8396fbc2 in frame_callback (data=0x2b02537d50, 
callback=0x2b03119030, time=286776601) at 
../../../gdk/wayland/gdksurface-wayland.c:255
|         surface = 0x2b02537d50
|         impl = 0x2b02537d50
|         display_wayland = <optimized out>
|         clock = <optimized out>
|         timings = <optimized out>
| #2  0x0000003f82a01264 in  () at /usr/lib/riscv64-linux-gnu/libffi.so.8
| #3  0x0000003f82a00ebe in  () at /usr/lib/riscv64-linux-gnu/libffi.so.8
| #4  0x0000003f82abc91c in  () at 
/usr/lib/riscv64-linux-gnu/libwayland-client.so.0
| #5  0x0000003f82ab9c9a in  () at 
/usr/lib/riscv64-linux-gnu/libwayland-client.so.0
| #6  0x0000003f82abae2e in wl_display_dispatch_queue_pending () at 
/usr/lib/riscv64-linux-gnu/libwayland-client.so.0
| #7  0x0000003f8396993e in _gdk_wayland_display_queue_events 
(display=0x2b01effe10) at ../../../gdk/wayland/gdkeventsource.c:218
|         display_wayland = 0x2b01effe10
|         source = 0x2b01f01050
|         l = <optimized out>
|         __func__ = "_gdk_wayland_display_queue_events"
| #8  0x0000003f8399df5c in gdk_display_get_event (display=0x2b01effe10) at 
../../../gdk/gdkdisplay.c:461
|         __func__ = "gdk_display_get_event"
| #9  0x0000003f8396966c in gdk_event_source_dispatch (base=<optimized out>, 
callback=<optimized out>, data=<optimized out>) at 
../../../gdk/wayland/gdkeventsource.c:138
|         source = <optimized out>
|         display = <optimized out>
|         event = <optimized out>
| #10 0x0000003f8352323c in  () at /usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| #11 0x0000003f83525972 in  () at /usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| #12 0x0000003f83525e26 in g_main_context_iteration () at 
/usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| #13 0x0000002ad6774f6a in show_and_wait (widget=0x2b021622e0) at 
../../../testsuite/gtk/templates.c:47
|         done = 0
|         widget = 0x2b021622e0
|         __func__ = "test_page_setup_unix_dialog_show"
| #14 test_page_setup_unix_dialog_show () at 
../../../testsuite/gtk/templates.c:398
|         widget = 0x2b021622e0
|         __func__ = "test_page_setup_unix_dialog_show"
| #15 0x0000003f83545f9e in  () at /usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| #16 0x0000003f83545e5a in  () at /usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| #17 0x0000003f83545e5a in  () at /usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| --Type <RET> for more, q to quit, c to continue without paging--
| #18 0x0000003f83546344 in g_test_run_suite () at 
/usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| #19 0x0000003f835463ac in g_test_run () at 
/usr/lib/riscv64-linux-gnu/libglib-2.0.so.0
| #20 0x0000002ad6773fe0 in main (argc=<optimized out>, argv=<optimized out>) 
at ../../../testsuite/gtk/templates.c:473
|         __func__ = "main"

The segmentation fault appears because "surface.display" is
0xcfcfcfcfcfcfcfcf, which sounds like some memory poisoning.

I believed that the problem is fully reproducible (running the
individual test like above definitely is), but I start to have some
doubts. It appears that the issue was already present in the latest
builds on the debian-ports archive:

https://buildd.debian.org/status/fetch.php?pkg=gtk4&arch=riscv64&ver=4.10.3%2Bds-1&stamp=1683828518&raw=0
https://buildd.debian.org/status/fetch.php?pkg=gtk4&arch=riscv64&ver=4.10.4%2Bds-1&stamp=1686004425&raw=0
https://buildd.debian.org/status/fetch.php?pkg=gtk4&arch=riscv64&ver=4.10.4%2Bds-2&stamp=1689784927&raw=0

I have also noticed that the issue also appeared on some architectures,
maybe with less probability:

https://buildd.debian.org/status/fetch.php?pkg=gtk4&arch=armel&ver=4.10.3%2Bds-1&stamp=1683820072&raw=0
https://buildd.debian.org/status/fetch.php?pkg=gtk4&arch=mips64el&ver=4.10.5%2Bds-3&stamp=1691410067&raw=0
https://buildd.debian.org/status/fetch.php?pkg=gtk4&arch=mipsel&ver=4.10.5%2Bds-3&stamp=1691412439&raw=0

I have used lower version for which the issue appeared, but if it is
more or less random, it could be something even older, or a bug
somewhere else in the stack.

Any ideas about the issue or how to debug it is welcome.

Regards
Aurelien

--- End Message ---
--- Begin Message ---
Source: gtk4
Source-Version: 4.12.0+ds-2
Done: Simon McVittie <s...@debian.org>

We believe that the bug you reported is fixed in the latest version of
gtk4, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1049...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Simon McVittie <s...@debian.org> (supplier of updated gtk4 package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Tue, 22 Aug 2023 15:19:11 +0100
Source: gtk4
Architecture: source
Version: 4.12.0+ds-2
Distribution: experimental
Urgency: medium
Maintainer: Debian GNOME Maintainers 
<pkg-gnome-maintain...@lists.alioth.debian.org>
Changed-By: Simon McVittie <s...@debian.org>
Closes: 1049434 1050075 1050076
Changes:
 gtk4 (4.12.0+ds-2) experimental; urgency=medium
 .
   * d/rules: Skip build-time tests that are known to fail or be unreliable.
     Upstream flagged these as failing and skips them in their CI, so there's
     no point in us expecting them to succeed. (Closes: #1050075)
   * Add patch to tolerate different floating-point results on i386.
     Our baseline for i386 still doesn't include SSE, so we still have to use
     i387 instructions with extended precision and sometimes different answers.
     (Closes: #1050076)
   * Ignore another test failure on big-endian machines.
     Similar to #1024391.
   * d/rules: Ignore two reftests that fail on i386 only.
     In these tests, the reference rendering of "Hello world" is as one line,
     but on i386 (possibly due to different rounding) it is word-wrapped onto
     two lines.
   * Add patch to work around a test failure on riscv64.
     Other architectures are occasionally affected by this.
     Thanks to Aurelien Jarno (Closes: #1049434)
   * Merge packaging from unstable
     - No further changes, except in the changelog
Checksums-Sha1:
 d288c2297905d7912eefc241e14de3e88a36089b 5307 gtk4_4.12.0+ds-2.dsc
 e5772e6a72fac6058370bff56e1ac9ad29a4fab0 3105460 gtk4_4.12.0+ds-2.debian.tar.xz
 a811abdbc507fa6bd60e28fb15892c02b238e37c 18896 
gtk4_4.12.0+ds-2_source.buildinfo
Checksums-Sha256:
 04e2634657d43df92e0757d54df732fe2777dd2b51681e5b581c6ad43ffc875c 5307 
gtk4_4.12.0+ds-2.dsc
 14df5e41dfdd4a4d2d23b98689e85fa42df2a0fee931ed924c05e7330ddead43 3105460 
gtk4_4.12.0+ds-2.debian.tar.xz
 ba2f923a4325fadaea90545f7ad0dec06213f554e7488c42baf43ce8e5d07747 18896 
gtk4_4.12.0+ds-2_source.buildinfo
Files:
 1c2c4dbc98d9636cac9244f4839eaf94 5307 libs optional gtk4_4.12.0+ds-2.dsc
 29c8df6a2f69f98563d2fe022e17d30a 3105460 libs optional 
gtk4_4.12.0+ds-2.debian.tar.xz
 c2bdf208695608b9f40b772a1a4e4b20 18896 libs optional 
gtk4_4.12.0+ds-2_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEENuxaZEik9e95vv6Y4FrhR4+BTE8FAmTk3jQACgkQ4FrhR4+B
TE9l1hAAgzRelCqaikAOjBlS652sMb4YZZYers9UUh0cYel2oSx6iYuhLg61GyA9
A4PZe0W/SO32wWkMm48KBK5txldJJ+LGRKpupimSIHwapb7SAmZEnpei4v2a0/4x
JhEbaA9KCYC1+GBSmniHmP16ILXO/9SM+fDXPrV82ghBhMxJCLWC590wbJUI0bD/
1sk/VKeFQdj4FqCJUwsXm+jfxAzDImkrCknOz2rsklcgbzcDp41wHe0SrVP1UWL0
FQv/dsOX9re0E9BIUy8mqFov3UYDqKXNxzF5CaE/ZAXNXx51T2sYW7LR7yoAkVhv
kq9xeGFeLkgbyRxhO9hWkebmWuy+FZs6JoxMZ/Bk7Amf/N1nIzbGbwYIv321mDjW
itrwLZ2gO61UHHTZHBogAg71fCPNk+XdUNNCpoWfLAdyi55PDbfTZYlE9KRRYsWV
+oVkBm8IUnt0A4d3cmFoNNPiZb/t9VOu5cTFPhlOHu7TsZvdzQJtA+x7x0gW8p4z
JwPf2BJ+4yygg3gjxLxubCxNDpU9r7Lbj08p8EeVMMLzrGMEoFkLUtncgfOFjOem
IjAD2t3z+V2hUBeKRMMYXzIInEjZdEF2vHq9ROJbkrf3S3lABxREfv7nHLac5xpi
iTQoQYanTEwCHWfySOEqiHKM0LgihiWa1l+T+aXDYMRA5IAwuIw=
=o43l
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to