Bug 2275913 - [abrt] glycin-loaders: __libc_recv(): glycin-image-rs killed by SIGSYS
Summary: [abrt] glycin-loaders: __libc_recv(): glycin-image-rs killed by SIGSYS
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: rust-glycin
Version: rawhide
Hardware: ppc64le
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Kalev Lember
QA Contact:
URL:
Whiteboard: abrt_hash:2bc8d9e9a6b05428ca09f7b2194...
: 2389647 (view as bug list)
Depends On: 2390166
Blocks: F43FTBFS PYC3.14rc3 F44FTBFS, RAWHIDEFTBFS
TreeView+ depends on / blocked
 
Reported: 2024-04-18 11:58 UTC by Trung Lê
Modified: 2025-08-21 23:26 UTC (History)
8 users (show)

Fixed In Version: rust-glycin-3.0.0~beta.1-1.fc44 rust-glycin-3.0.0~beta.1-1.fc43
Clone Of:
Environment:
Last Closed: 2025-08-21 23:23:26 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
File: proc_pid_status (1.23 KB, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: maps (3.02 KB, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: limits (1.29 KB, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: environ (45 bytes, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: open_fds (932 bytes, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: mountinfo (1.62 KB, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: os_info (734 bytes, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: cpuinfo (1.83 KB, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: core_backtrace (10.43 KB, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: dso_list (357 bytes, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details
File: backtrace (100.88 KB, text/plain)
2024-04-18 11:58 UTC, Trung Lê
no flags Details

Description Trung Lê 2024-04-18 11:58:02 UTC
Description of problem:
Steps to reproduce the issue:

* Open loupe app
* Choose Open Image and choose any image file (be it PNG or JPEG)
* The app window shows "Could not Load Image - Remote error: org.freedesktop.zbus.Error: no description"
* The GnomeAbrt app picks up exceptions generated by glycin-image-rs (which I believe this app utilises)

Version-Release number of selected component:
glycin-loaders-1.0.1-1.fc40

Additional info:
reporter:       libreport-2.17.15
type:           CCpp
reason:         glycin-image-rs killed by SIGSYS
journald_cursor: s=3c042ce4acd3416bbec6cd98b8c3a300;i=e3e73;b=1351e02822e6412bae83d1b3c620a79b;m=3c58c78a80;t=616541768bfb8;x=a50f53a41760c4d9
container_cmdline: bwrap --unshare-all --clearenv --die-with-parent --chdir / --ro-bind /usr /usr --dev /dev --ro-bind-try /etc/ld.so.cache /etc/ld.so.cache --tmpfs /tmp-home --setenv HOME /tmp-home --tmpfs /tmp-run --setenv XDG_RUNTIME_DIR /tmp-run --symlink /usr/lib /lib --symlink /usr/lib64 /lib64 --seccomp 20 /usr/libexec/glycin-loaders/1+/glycin-image-rs
executable:     /usr/libexec/glycin-loaders/1+/glycin-image-rs
cmdline:        /usr/libexec/glycin-loaders/1+/glycin-image-rs
cgroup:         0::/user.slice/user-1000.slice/user/app.slice/dbus-:1.2-org.gnome.Loupe
rootdir:        /
uid:            1000
kernel:         6.8.5-301.fc40.ppc64le
runlevel:       N 5
backtrace_rating: 4
crash_function: __libc_recv
package:        glycin-loaders-1.0.1-1.fc40

Truncated backtrace:
Thread no. 1 (3 frames)
 #0 __libc_recv at ../sysdeps/unix/sysv/linux/recv.c:26
 #1 std::sys::pal::unix::net::Socket::recv_with_flags at /builddir/build/BUILD/rustc-1.77.0-src/library/std/src/sys/pal/unix/net.rs:267
 #2 std::sys::pal::unix::net::Socket::read at /builddir/build/BUILD/rustc-1.77.0-src/library/std/src/sys/pal/unix/net.rs:282

Comment 1 Trung Lê 2024-04-18 11:58:04 UTC
Created attachment 2027605 [details]
File: proc_pid_status

Comment 2 Trung Lê 2024-04-18 11:58:06 UTC
Created attachment 2027606 [details]
File: maps

Comment 3 Trung Lê 2024-04-18 11:58:07 UTC
Created attachment 2027607 [details]
File: limits

Comment 4 Trung Lê 2024-04-18 11:58:08 UTC
Created attachment 2027608 [details]
File: environ

Comment 5 Trung Lê 2024-04-18 11:58:09 UTC
Created attachment 2027609 [details]
File: open_fds

Comment 6 Trung Lê 2024-04-18 11:58:10 UTC
Created attachment 2027610 [details]
File: mountinfo

Comment 7 Trung Lê 2024-04-18 11:58:12 UTC
Created attachment 2027611 [details]
File: os_info

Comment 8 Trung Lê 2024-04-18 11:58:13 UTC
Created attachment 2027612 [details]
File: cpuinfo

Comment 9 Trung Lê 2024-04-18 11:58:15 UTC
Created attachment 2027613 [details]
File: core_backtrace

Comment 10 Trung Lê 2024-04-18 11:58:16 UTC
Created attachment 2027614 [details]
File: dso_list

Comment 11 Trung Lê 2024-04-18 11:58:18 UTC
Created attachment 2027615 [details]
File: backtrace

Comment 12 Fabio Valentini 2024-04-19 12:30:16 UTC
Which version of loupe did you use when this crash happened?
The output of `rpm -q loupe` would be helpful.

Loupe v46.2 contains fixes for the sandboxing code that might fix this issue.

Comment 13 Trung Lê 2024-04-19 14:16:06 UTC
$ rpm -q loupe
loupe-46.2-1.fc40.ppc64le

I deliberately try the 46.2.1 from the testing branch and still run into the same issue

Comment 14 Trung Lê 2024-04-22 10:01:58 UTC
The app does not crash, however some threads does get reported exited unexpectedly when I try to run it with gdb.

Wondering if you could provide further guidance on how to get more stack traces from the exited threads with gdb?

Comment 15 Fabio Valentini 2024-04-22 16:20:02 UTC
I don't think gdb will help here.
If I understand things correctly, processes getting killed by SIGSYS means that the sandbox is blocking too many things.

Can you file an issue against the glycin upstream project?
https://gitlab.gnome.org/sophie-h/glycin

If you don't have an account with the GNOME GitLab instance, I can do that on your behalf, though it would be good to have reproduction steps (i.e. which file or file type causes the issue).

Comment 16 Trung Lê 2024-04-23 12:24:26 UTC
I think it is the same issue https://gitlab.gnome.org/sophie-h/glycin/-/issues/55

Could we bump to v1.0.2 to see if it helps?

Comment 17 Fabio Valentini 2024-05-07 15:19:34 UTC
Glycin 1.0.2 has been in Fedora for a while now - can you check if this issue still occurs?

Comment 18 Trung Lê 2024-05-30 15:21:02 UTC
There must be misunderstanding. I am aware that glycin-loaders 1.0.2 has been out upstream however I have not seen our glycin-loaders RPM get updated to 1.0.2 yet.

Comment 19 Fabio Valentini 2024-05-30 20:54:21 UTC
The misunderstanding seems to be on your side.
There is no 1.0.2 release for glycin-loaders, the latest is still 1.0.1:
https://download.gnome.org/sources/glycin-loaders/1.0/

Only the "glycin" subproject (but *not* glycin-loaders!) has released that version:
https://crates.io/crates/glycin/versions

The package for glycin-loaders 1.0.1 in Fedora is already built against glycin 1.0.2, so this change is already available to users.

Comment 20 Trung Lê 2024-05-31 01:33:08 UTC
If so, I could confirm the bug is still present unfortunately

Comment 21 Trung Lê 2025-03-02 12:26:33 UTC
I would like to point out that this issue only occur on Fedora.

FYI this video shows the app running successfully on Chimera Linux https://www.youtube.com/watch?v=4kBzE7UF8T8

I highly speculate this might be related to rust-zbus package that comes with Fedora

Comment 22 Fabio Valentini 2025-03-02 21:05:39 UTC
You're saying that this issue still occurs on Fedora 40 with the latest updates applied?

> I highly speculate this might be related to rust-zbus package that comes with Fedora

Why would this be? We do not apply downstream changes to the zbus code.
Just because it's part of the backtrace doesn't mean it's the root cause of the issue you saw.

Comment 23 Trung Lê 2025-03-02 22:37:20 UTC
> You're saying that this issue still occurs on Fedora 40 with the latest updates applied?

Yes, it still occur on Fedora 42 Beta

> Why would this be? We do not apply downstream changes to the zbus code.

Fair enough. I am just wondering if we could introduce a flag to compile the software with crates handled by cargo instead of RPM?

Comment 24 Fabio Valentini 2025-03-03 13:36:46 UTC
Ok, since this bug seems to be still occurring for you on Fedora 42, I've updated the bug metadata accordingly.

> Fair enough. I am just wondering if we could introduce a flag to compile the software with crates handled by cargo instead of RPM?

I'm not sure what you mean. cargo *is* compiling the software. The only step that is handled by RPM instead of cargo is that the source code for dependencies is pulled in via RPM instead of downloaded from crates.io by cargo.

Can you try reproducing the issue with glycin 1.1.6, which I submitted to testing a day ago?

Comment 25 Fabio Valentini 2025-03-04 13:44:04 UTC
I just noticed that you set the architecture this is happening on as ppc64le - is this correct?
Is it possible that glycin uses different syscalls there than on other architectures, which then get blocked by the SECCOMP sandbox (hence SIGSYS)?

Comment 26 Trung Lê 2025-03-06 12:41:00 UTC
> I just noticed that you set the architecture this is happening on as ppc64le - is this correct?
Yes it is correct

> Is it possible that glycin uses different syscalls there than on other architectures, which then get blocked by the SECCOMP sandbox (hence SIGSYS)?
It is very plausible. However I do not think it might be because chimera linux (ppc64le) does not experience the same issue

Comment 27 Trung Lê 2025-03-06 12:41:48 UTC
> Can you try reproducing the issue with glycin 1.1.6, which I submitted to testing a day ago?

The issue is still there with 1.1.6

Comment 28 Fabio Valentini 2025-03-07 13:26:40 UTC
> It is very plausible. However I do not think it might be because chimera linux (ppc64le) does not experience the same issue

And does Chimera Linux have the same versions of glibc and all other underlying libraries as Fedora? I assume not :)

Comment 29 Trung Lê 2025-07-18 03:33:57 UTC
> And does Chimera Linux have the same versions of glibc and all other underlying libraries as Fedora? I assume not :)

Surely not. FYI Chimera's GLIBC is 2.84.3. AFAIK Chimera does not use SELinux, my gut feeling is that the issue might be related to SELinux or AppArmor. 


> Can you try reproducing the issue with glycin 1.1.6, which I submitted to testing a day ago?

I also tried v2.0~alpha6 on FC43 (Rawhide) and the issue still persist. Interestingly I also discover that loupe does NOT work on Ubuntu 25.04 too.

Comment 30 Fabio Valentini 2025-07-18 10:06:32 UTC
Thank you for checking. Can you file this as a bug upstream?
Probably https://gitlab.gnome.org/GNOME/glycin is the right place.
It sounds as if some syscall needs to be exempted from the seccomp filtering on ppc64le.

Comment 31 Trung Lê 2025-07-21 01:53:04 UTC
Reported https://gitlab.gnome.org/GNOME/glycin/-/issues/165

Comment 32 Mamoru TASAKA 2025-08-07 07:44:36 UTC
Looks like rubygem-gdk_pixbuf2 build also fails on ppc64le due to this issue
(and with gdk-pixbuf2-2.43.3-4.fc43 which enables glycin backend)

https://koji.fedoraproject.org/koji/taskinfo?taskID=135794538

E
===============================================================================
Error: test: #on_currently_loading_frame?(TestAnimationIter): GdkPixbuf::PixbufError::CorruptImage: Remote error: org.freedesktop.zbus.Error: no description
/usr/share/gems/gems/gobject-introspection-4.3.0/lib/gobject-introspection/loader.rb:715:in 'GObjectIntrospection::ConstructorInfo#invoke'
/usr/share/gems/gems/gobject-introspection-4.3.0/lib/gobject-introspection/loader.rb:715:in 'GObjectIntrospection::Loader::Invoker#invoke'
/usr/share/gems/gems/gobject-introspection-4.3.0/lib/gobject-introspection/loader.rb:366:in 'block (2 levels) in GdkPixbuf::PixbufAnimation#initialize'
/usr/share/gems/gems/gobject-introspection-4.3.0/lib/gobject-introspection/loader.rb:365:in 'Kernel#catch'
/usr/share/gems/gems/gobject-introspection-4.3.0/lib/gobject-introspection/loader.rb:365:in 'block in GdkPixbuf::PixbufAnimation#initialize'
/usr/share/gems/gems/gobject-introspection-4.3.0/lib/gobject-introspection/loader.rb:364:in 'Array#each'
/usr/share/gems/gems/gobject-introspection-4.3.0/lib/gobject-introspection/loader.rb:364:in 'GdkPixbuf::PixbufAnimation#initialize'
/builddir/build/BUILD/rubygem-gdk_pixbuf2-4.3.0-build/gdk_pixbuf2-4.3.0/usr/share/gems/gems/gdk_pixbuf2-4.3.0/test/test-animation.rb:21:in 'Class#new'
/builddir/build/BUILD/rubygem-gdk_pixbuf2-4.3.0-build/gdk_pixbuf2-4.3.0/usr/share/gems/gems/gdk_pixbuf2-4.3.0/test/test-animation.rb:21:in 'block in <class:TestAnimationIter>'

Comment 34 Fabio Valentini 2025-08-17 12:13:12 UTC
I can do that, though I assume there will be a new beta / prerelease of rust-glycin that contains these changes shortly.

Though I will need to backport these changes to Fedora 42 and 41 anyway, I assume.

Comment 35 Trung Lê 2025-08-19 10:14:21 UTC
I think we do need to backport it to Fedora 42 and 41.

Could we bump to beta.3 first for Fedora 43?

Comment 36 Fabio Valentini 2025-08-21 17:35:20 UTC
*** Bug 2389647 has been marked as a duplicate of this bug. ***

Comment 37 Fabio Valentini 2025-08-21 18:08:02 UTC
Updating glycin to a new version requires a new package, which I've just submitted for review.

Comment 38 Fedora Update System 2025-08-21 22:34:09 UTC
FEDORA-2025-4bc0001b39 (glycin-2.0~beta.2-1.fc44, rust-glycin-3.0.0~beta.1-1.fc44, and 2 more) has been submitted as an update to Fedora 44.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-4bc0001b39

Comment 39 Fedora Update System 2025-08-21 22:34:38 UTC
FEDORA-2025-de85895bb4 (glycin-2.0~beta.2-1.fc43, rust-glycin-3.0.0~beta.1-1.fc43, and 2 more) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-de85895bb4

Comment 40 Fedora Update System 2025-08-21 23:23:26 UTC
FEDORA-2025-4bc0001b39 (glycin-2.0~beta.2-1.fc44, rust-glycin-3.0.0~beta.1-1.fc44, and 2 more) has been pushed to the Fedora 44 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 41 Fedora Update System 2025-08-21 23:26:26 UTC
FEDORA-2025-de85895bb4 (glycin-2.0~beta.2-1.fc43, rust-glycin-3.0.0~beta.1-1.fc43, and 2 more) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.