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
Created attachment 2027605 [details] File: proc_pid_status
Created attachment 2027606 [details] File: maps
Created attachment 2027607 [details] File: limits
Created attachment 2027608 [details] File: environ
Created attachment 2027609 [details] File: open_fds
Created attachment 2027610 [details] File: mountinfo
Created attachment 2027611 [details] File: os_info
Created attachment 2027612 [details] File: cpuinfo
Created attachment 2027613 [details] File: core_backtrace
Created attachment 2027614 [details] File: dso_list
Created attachment 2027615 [details] File: backtrace
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.
$ 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
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?
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).
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?
Glycin 1.0.2 has been in Fedora for a while now - can you check if this issue still occurs?
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.
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.
If so, I could confirm the bug is still present unfortunately
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
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.
> 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?
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?
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)?
> 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
> 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
> 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 :)
> 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.
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.
Reported https://gitlab.gnome.org/GNOME/glycin/-/issues/165
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>'
Would you apply https://gitlab.gnome.org/GNOME/glycin/-/commit/43024a55c7285114f4d2abdd8719e07c176bfc5a and https://gitlab.gnome.org/GNOME/glycin/-/commit/10b675556cca73b0bfbedbbf196f2c6387e82eaf ? ref: https://gitlab.gnome.org/GNOME/glycin/-/issues/165 Applying the above 2 commits seems to work for me on ppc64le.
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.
I think we do need to backport it to Fedora 42 and 41. Could we bump to beta.3 first for Fedora 43?
*** Bug 2389647 has been marked as a duplicate of this bug. ***
Updating glycin to a new version requires a new package, which I've just submitted for review.
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
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
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.
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.