Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libheif and heif-pixbuf-loader from negativo causes sddm/plasma/qt to crash on intel graphics (black screen) #695

Open
renner0e opened this issue Dec 18, 2024 · 1 comment
Labels
bug Something isn't working

Comments

@renner0e
Copy link
Contributor

renner0e commented Dec 18, 2024

Context:

ublue-os/aurora#8
ublue-os/aurora#8 (comment)

Responsible commit?

negativo17/libheif@4a4cbd9

affected hardware: possibly everything that uses i915?
Pentium B940 SandyBridge = Gen6 Graphics called just "HD Graphics"
Celeron G1840 Haswell = Gen7.5 Graphics called just "HD Graphics"
Celeron N4020 GeminiLake = Gen9, UHD Graphics 600

Not an issue on amd, also not an issue on newer intel graphics like Intel Framework 13th Gen.
I tested with a fresh installation of bazzite on a flash drive. This should not be a config issue.

Possible Workaround

sudo rpm-ostree override replace --experimental --from repo="fedora" libheif heif-pixbuf-loader

the vanilla fedora packages are not broken in this case, they still ship an old version.
https://src.fedoraproject.org/rpms/libheif

I have not tested if the "less crippled" version from negativo is responsible because it is a newer version or because it has more codec support.

I couldn't figure out how to build the negativo rpm from master branch. So I don't know if the new version would fix anything.
I'll happily rebase to some testing image/layer some rpm.

Name        : libheif
Version     : 1.17.6
Release     : 2.fc41
Architecture: x86_64
Install Date: Mi 18 Dez 2024 17:26:51 CET
Group       : Unspecified
Size        : 966069
License     : LGPL-3.0-or-later and MIT
Signature   : RSA/SHA256, Fr 19 Jul 2024 06:59:09 CEST, Key ID d0622462e99d6ad1
Source RPM  : libheif-1.17.6-2.fc41.src.rpm
Build Date  : Fr 19 Jul 2024 01:35:35 CEST
Build Host  : buildvm-x86-27.iad2.fedoraproject.org
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : https://github.com/strukturag/libheif
Bug URL     : https://bugz.fedoraproject.org/libheif
Summary     : HEIF and AVIF file format decoder and encoder
Description :
libheif is an ISO/IEC 23008-12:2017 HEIF and AVIF (AV1 Image File Format)
file format decoder and encoder.

negativo:

Name        : libheif
Epoch       : 1
Version     : 1.18.2
Release     : 5.fc41
Architecture: x86_64
Install Date: Mi 11 Dez 2024 05:14:59 CET
Group       : Unspecified
Size        : 1614755
License     : LGPLv3+ and MIT
Signature   : RSA/SHA256, Do 05 Dez 2024 00:49:44 CET, Key ID 97f3008993e8909b
Source RPM  : libheif-1.18.2-5.fc41.src.rpm
Build Date  : Mi 04 Dez 2024 23:42:23 CET
Build Host  : wks2.lab.negativo17.org
URL         : https://github.com/strukturag/libheif
Summary     : ISO/IEC 23008-12:2017 HEIF and AVIF file format decoder and encoder
Description :
libheif is an ISO/IEC 23008-12:2017 HEIF and AVIF (AV1 Image File Format) file
format decoder and encoder.

HEIF and AVIF are new image file formats employing HEVC (h.265) or AV1 image
coding, respectively, for the best compression ratios currently possible.

rpm-ostree db diff from good image > to first bad image

❯ rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/aurora:41-20241113
Pulling manifest: ostree-image-signed:docker://ghcr.io/ublue-os/aurora:41-20241113
Importing: ostree-image-signed:docker://ghcr.io/ublue-os/aurora:41-20241113 (digest: sha256:a39c1c4e27aa357ca70cede279c0009ddd25aaff6de7203887622c16bd89e56d)
ostree chunk layers already present: 67
ostree chunk layers needed: 5 (498,3 MB)
Fetching ostree chunk sha256:e5b0a3baa283 (112,9 MB)... done
Fetching ostree chunk sha256:fc67d8c96f91 (145,3 MB)... done
Fetching ostree chunk sha256:b43c84977ff4 (64,0 MB)... done
Fetching ostree chunk sha256:d99eba447380 (166,3 MB)... done
Fetching ostree chunk sha256:4b09048d93f7 (9,8 MB)... done
Staging deployment... done
Pruned images: 1 (layers: 9)
Freed: 402,0 MB (pkgcache branches: 0)
Upgraded:
  heif-pixbuf-loader 1:1.18.2-3.fc41 -> 1:1.18.2-4.fc41
  ibus 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  ibus-gtk2 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  ibus-gtk3 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  ibus-gtk4 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  ibus-libs 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  ibus-m17n 1.4.33-1.fc41 -> 1.4.34-1.fc41
  ibus-panel 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  ibus-setup 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  ibus-xinit 1.5.31~rc1-2.fc41 -> 1.5.31-1.fc41
  kernel 6.11.3-300.fc41 -> 6.11.7-300.fc41
  kernel-core 6.11.3-300.fc41 -> 6.11.7-300.fc41
  kernel-modules 6.11.3-300.fc41 -> 6.11.7-300.fc41
  kernel-modules-core 6.11.3-300.fc41 -> 6.11.7-300.fc41
  kernel-modules-extra 6.11.3-300.fc41 -> 6.11.7-300.fc41
  libheif 1:1.18.2-3.fc41 -> 1:1.18.2-4.fc41
  python3-sss-murmur 2.10.0-1.fc41 -> 2.10.0-2.fc41
  qemu-guest-agent 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-aarch64 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-alpha 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-arm 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-cris 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-hexagon 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-hppa 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-loongarch64 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-m68k 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-microblaze 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-mips 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-or1k 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-ppc 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-riscv 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-s390x 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-sh4 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-sparc 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-x86 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  qemu-user-static-xtensa 2:9.1.1-1.fc41 -> 2:9.1.1-2.fc41
  toolbox 0.1.0-1.fc41 -> 0.1.1-1.fc41
  tuned 2.24.0-5.fc41 -> 2.24.0-6.fc41
  tuned-ppd 2.24.0-5.fc41 -> 2.24.0-6.fc41
  vvenc-libs 1.12.0-1.fc41 -> 1.12.1-1.fc41
Removed:
  kmod-zfs-2.2.6-1.fc41.x86_64
  libnvpair3-2.2.6-1.fc41.x86_64
  libuutil3-2.2.6-1.fc41.x86_64
  libzfs5-2.2.6-1.fc41.x86_64
  libzpool5-2.2.6-1.fc41.x86_64
  pcp-conf-6.3.1-1.fc41.x86_64
  pcp-libs-6.3.1-1.fc41.x86_64
  pv-1.8.14-2.fc41.x86_64
  python3-pyzfs-2.2.6-1.fc41.noarch
  sysstat-12.7.6-2.fc41.x86_64
  zfs-2.2.6-1.fc41.x86_64
Added:
  libopenjph-0.18.0-1.fc41.x86_64

output of sudo coredumpctl /usr/bin/sddm-greeter-qt6: backtrace?
coredumpctl.txt

coredump file:
https://0x0.st/XCuQ.tar.zst

@dosubot dosubot bot added the bug Something isn't working label Dec 18, 2024
@renner0e
Copy link
Contributor Author

renner0e commented Dec 19, 2024

I have not tested if the "less crippled" version from negativo is responsible because it is a newer version or because it has more codec support.

Grabbing the crippled 1.19 rpms from fedora 42 makes it work.
https://src.fedoraproject.org/rpms/libheif

sudo rpm-ostree reset
sudo rpm-ostree override replace "https://kojipkgs.fedoraproject.org//packages/libheif/1.19.5/1.fc42/x86_64/heif-pixbuf-loader-1.19.5-1.fc42.x86_64.rpm" "https://kojipkgs.fedoraproject.org//packages/libheif/1.19.5/1.fc42/x86_64/libheif-1.19.5-1.fc42.x86_64.rpm"

Maybe the library will get updated anyway in the next few days and negativo just catches up and we don't have to do anything.
https://bugzilla.redhat.com/show_bug.cgi?id=2332519

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant