https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Bug ID: 2237821 Summary: blender core dumps at execution instead of giving sane feedback about unsupported hardware Product: Fedora Version: 38 Hardware: aarch64 OS: Linux Status: NEW Component: blender Severity: medium Assignee: luya_tfz@thefinalzone.net Reporter: havealoha+fedoraproject@gmail.com QA Contact: extras-qa@fedoraproject.org CC: code@musicinmybrain.net, design-devel@lists.fedoraproject.org, epel-packagers-sig@lists.fedoraproject.org, kwizart@gmail.com, luya_tfz@thefinalzone.net, negativo17@gmail.com Target Milestone: --- Classification: Fedora
blender core dumps at execution instead of giving sane feedback about unsupported hardware
Reproducible: Always
Steps to Reproduce: 1. install asahi fedora remix 38 on macbook air m1n1 2. install and launch blender
Actual Results: core dump
Expected Results: blender should return an error about unsupported hardware and or unsupported OpenGL version
https://discussion.fedoraproject.org/t/blender-crashes-on-latest-build-and-b...
BLT_lang_init: 'locale' data path for translations not found, continuing EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). EGL Error (0x3009): EGL_BAD_MATCH: Arguments are inconsistent (for example, a valid context requires buffers n ot supplied by a valid surface). Warning: No OpenGL vendor detected. blender: ../src/dispatch_common.c:872: epoxy_get_proc_address: Assertion `0 && "Couldn't find current GLX or E GL context.\n"' failed. Aborted (core dumped)
# Asahi Linux System Diagnostic Dump
Collected at: Wed Sep 6 20:44:45 PDT 2023 (2023-09-06T20:44:45-07:00) Username: Hostname: makukumba
## Device information Model: Apple MacBook Air (M1, 2020) Compatible: apple,j313 apple,t8103 apple,arm-platform
## Firmware versions iBoot1: iBoot-8422.141.2 iBoot2: iBoot-8422.141.2 SFR: 13.5 OS firmware: 13.5 m1n1 stage 2: v1.3.3 U-Boot: 2023.07
## Boot information ESP UUID: 745b90c8-7d4a-4418-b5ea-74fbcf0d0483 EFI: available
## System information Kernel: 6.4.11-401.asahi.fc38.aarch64+16k Kernel build: #1 SMP PREEMPT_DYNAMIC Mon Aug 21 19:38:10 UTC 2023 Uptime: 20:44:45 up 22:36, 3 users, load average: 0.70, 0.59, 0.46 Kernel cmdline: BOOT_IMAGE=(hd0,gpt5)/boot/vmlinuz-6.4.11-401.asahi.fc38.aarch64+16k rhgb quiet root=UUID=86ad63d7-5618-4548-8ba8-78d68efa4738 rootflags=subvol=root
## Environment COLORTERM=truecolor DISPLAY=:0 LANG=C.UTF-8 LANGUAGE= TERM=xterm-256color WAYLAND_DISPLAY=wayland-0 XDG_SESSION_TYPE=wayland
## Mounts ```
## PCI devices ``` 00:00.0 PCI bridge: Apple Inc. Apple Silicon PCI Express Root Port (rev 01) 01:00.0 Network controller: Broadcom Inc. and subsidiaries BRCM4378 Wireless Network Adapter (rev 03) 01:00.1 Network controller: Broadcom Inc. and subsidiaries BRCM4378 Bluetooth Controller (rev 03) ```
## Input devices ``` I: Bus=001c Vendor=05ac Product=0281 Version=0935 N: Name="Apple Internal Keyboard / Trackpad" P: Phys=spi1.0 (2) S: Sysfs=/devices/platform/soc/23510c000.spi/spi_master/spi1/spi1.0/001C:05AC:0281.0002/input/input0 U: Uniq= H: Handlers=mouse0 event0 B: PROP=5 B: EV=1b B: KEY=e520 10000 0 0 0 0 B: ABS=67f800001000003 B: MSC=10
I: Bus=001c Vendor=05ac Product=0281 Version=0935 N: Name="Apple Internal Keyboard / Trackpad" P: Phys=spi1.0 (1) S: Sysfs=/devices/platform/soc/23510c000.spi/spi_master/spi1/spi1.0/001C:05AC:0281.0001/input/input1 U: Uniq= H: Handlers=sysrq kbd leds event1 B: PROP=0 B: EV=120013 B: KEY=10000 0 0 0 101007b02011007 ff9f21fac14057ff ffbeffdfffefffff fffffffffffffffe B: MSC=10 B: LED=1f
I: Bus=0000 Vendor=0000 Product=0000 Version=0000 N: Name="Apple SMC power/lid events" P: Phys=macsmc-hid (0) S: Sysfs=/devices/platform/soc/23e400000.smc/macsmc-hid/input/input2 U: Uniq= H: Handlers=kbd event2 B: PROP=0 B: EV=23 B: KEY=10000000000000 0 B: SW=1
I: Bus=0000 Vendor=0000 Product=0000 Version=0000 N: Name="MacBook Air J313 Headphone Jack" P: Phys=ALSA S: Sysfs=/devices/platform/sound/sound/card0/input3 U: Uniq= H: Handlers=event3 B: PROP=0 B: EV=21 B: SW=14 ```
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Nicolas Chauvet (kwizart) kwizart@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Doc Type|--- |If docs needed, set a value
--- Comment #1 from Nicolas Chauvet (kwizart) kwizart@gmail.com --- Can you report the glxinfo or eglinfo on the device ? Also which kernel do you use ? a fedora kernel built for
My guess is that mesa advertise the support based on assumption to use a downstream kernel (with Asahi patches).
So the crash is because mesa "lies" on the GL support. (now it's just a wild guess).
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
--- Comment #2 from havealoha+fedoraproject@gmail.com --- uname -a (generic asahi kernel) glxinfo eglinfo
pasted into below:
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
--- Comment #3 from havealoha+fedoraproject@gmail.com --- Created attachment 1988053 --> https://bugzilla.redhat.com/attachment.cgi?id=1988053&action=edit output from commands as requested
output from commands as requested
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
--- Comment #4 from havealoha+fedoraproject@gmail.com --- Created attachment 1988054 --> https://bugzilla.redhat.com/attachment.cgi?id=1988054&action=edit more output from commands
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Hector Martin marcan@marcan.st changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |marcan@marcan.st
--- Comment #5 from Hector Martin marcan@marcan.st --- Our Mesa advertises the correct GL version support (3.1 at this time) when the kernel/etc is correct (if the kernel is wrong it falls back to llvmpipe which *can* run blender in software, very slowly).
Blender is *not* supposed to work because it needs a higher GL version. The problem is that I guess it requests a higher version, and when it doesn't get a GL context since it's not supported, it just aborts/asserts and core dumps. That's confusing several users who think our drivers are broken because it looks like a crash, not simply the GL version support not being sufficient. Apps shouldn't crash just because the GPU doesn't meet their minimum requirements.
For comparison, OBS also needs a higher version, but when it doesn't get it it shows a user-friendly dialog box telling the user that their GPU is not supported. That is what I expect Blender to do. At the very least it should print out a friendlier message to stderr and exit with a normal error, instead of outright crashing.
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
--- Comment #6 from Hector Martin marcan@marcan.st --- Note that this shouldn't be unique to Asahi in any way, e.g. upstream Fedora kernel/Mesa should have the same exact result on Panfrost (ARM Mali) platforms, which are also advertising OpenGL 3.1 at this time fully upstream.
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
--- Comment #7 from Nicolas Chauvet (kwizart) kwizart@gmail.com --- @Hector Thanks for getting in touch.
My understanding is that for testing the appropriate GL context, you have to actually create one. That's why you have a failure (not specific to blender). Actually I was able to reproduce the error with intel using MESA_GL_VERSION_OVERRIDE=2.1 (or 3.1). But not with 3.3 that only have the EGL_BAD_MATCH and not the core dump (despite current blender claims to only support GL 4.3 at https://www.blender.org/download/requirements/).
You might need to report the issue to blender upstream (or even with epoxy that seems like the component involved).
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |MODIFIED
--- Comment #8 from Fedora Update System updates@fedoraproject.org --- FEDORA-EPEL-2024-deb88a9bfa has been submitted as an update to Fedora EPEL 9. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2024-deb88a9bfa
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |MODIFIED
--- Comment #8 from Fedora Update System updates@fedoraproject.org --- FEDORA-EPEL-2024-deb88a9bfa has been submitted as an update to Fedora EPEL 9. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2024-deb88a9bfa
--- Comment #9 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-a97561b46e has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2024-a97561b46e
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |ON_QA
--- Comment #10 from Fedora Update System updates@fedoraproject.org --- FEDORA-EPEL-2024-deb88a9bfa has been pushed to the Fedora EPEL 9 testing repository.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2024-deb88a9bfa
See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
--- Comment #11 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-a97561b46e has been pushed to the Fedora 38 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-a97561b46e` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-a97561b46e
See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed In Version| |blender-3.3.14-1.el9 Resolution|--- |ERRATA Status|ON_QA |CLOSED Last Closed| |2024-01-17 00:36:49
--- Comment #12 from Fedora Update System updates@fedoraproject.org --- FEDORA-EPEL-2024-deb88a9bfa has been pushed to the Fedora EPEL 9 stable repository. If problem still persists, please make note of it in this bug report.
https://bugzilla.redhat.com/show_bug.cgi?id=2237821
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed In Version|blender-3.3.14-1.el9 |blender-3.3.14-1.el9 | |blender-3.6.7-1.fc38
--- Comment #13 from Fedora Update System updates@fedoraproject.org --- FEDORA-2024-a97561b46e has been pushed to the Fedora 38 stable repository. If problem still persists, please make note of it in this bug report.
design-devel@lists.fedoraproject.org