Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1872980
Summary: | Segmentation fault when running script on Blender built with python 3.8 and up | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Jan ONDREJ <ondrejj> | ||||
Component: | blender | Assignee: | Luya Tshimbalanga <luya_tfz> | ||||
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | unspecified | Docs Contact: | |||||
Priority: | unspecified | ||||||
Version: | 33 | CC: | cstratak, design-devel, dmalcolm, kei_2465, kwizart, lankyleggy, lbalhar, luya_tfz, m.cyprian, mhroncok, negativo17, promac, pviktori, rkuska, shcherbina.iryna, slavek.kabrda, thrnciar, tomspur, torsava, vstinner, zxy_thf | ||||
Target Milestone: | --- | Keywords: | Reopened | ||||
Target Release: | --- | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | blender-2.83.5-5.fc32 blender-2.83.5-5.fc31 blender-2.90.0-3.fc33 blender-2.91.0-2.fc33 blender-2.83.9-1.fc32 | Doc Type: | If docs needed, set a value | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2020-12-04 19:51:56 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
Description
Jan ONDREJ
2020-08-27 04:37:20 UTC
FEDORA-2020-3f31203bf4 has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2020-3f31203bf4 FEDORA-2020-4712ce29ce has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-4712ce29ce FEDORA-2020-0661ea4296 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-0661ea4296 FEDORA-2020-0661ea4296 has been pushed to the Fedora 32 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-0661ea4296` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-0661ea4296 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2020-4712ce29ce has been pushed to the Fedora 31 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-4712ce29ce` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-4712ce29ce See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2020-a9c959e657 has been pushed to the Fedora 33 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-a9c959e657` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-a9c959e657 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. blender-2.83.5-5.fc32 doesn't fix this problem. I am trying to build blender-2.90 from f33 on f32, but without success. Is it possible to build it? Blender-2.90 is not fully addon compatible, but at least want to try. FEDORA-2020-0661ea4296 has been pushed to the Fedora 32 stable repository. If problem still persists, please make note of it in this bug report. Not fixed in this release. FEDORA-2020-4712ce29ce has been pushed to the Fedora 31 stable repository. If problem still persists, please make note of it in this bug report. FEDORA-2020-a9c959e657 has been pushed to the Fedora 33 stable repository. If problem still persists, please make note of it in this bug report. Same problem on Fedora 33. Blender version: blender-2.90.1-2.fc33.x86_64 Currently there are multiple problems, for example unable to import STL file, crashes too. Looks like all python things are broken (STL import is python too). I am amble to reproduce this with a very simple python script: cat > test.py << EOF import bpy bpy.ops.mesh.primitive_cube_add(size=1.0) EOF Then run: blender -P test.py Results: Writing: /tmp/blender.crash.txt Segmentation fault (core dumped) If you can't reproduce it, I can attach crash.txt file. I've removed all my custom configs before run, so don't think this was caused by my settings. I can confirm the same exact problem on a fresh installed Fedora 33. The version from Blender official site works as expected. My specs, if it can be useful: Intel i7 6700K GeForce GTX 1060 6GB/PCIe/SSE2 Kernel Version: 5.8.16-300.fc33.x86_64 KDE Plasma Version: 5.20.2 KDE Frameworks Version: 5.75.0 Qt Version 5.15.1 Can also confirm on Fedora 33. If clicking the "Script" tab on the main menu it crashes instantly. The following is the gdb backtrace, if it's helpful: Thread 1 "blender" received signal SIGSEGV, Segmentation fault. 0x00007ffff2c6cfc9 in PyEval_ReleaseLock () from /lib64/libpython3.9.so.1.0 (gdb) bt #0 0x00007ffff2c6cfc9 in PyEval_ReleaseLock () at /lib64/libpython3.9.so.1.0 #1 0x00005555567ce90d in rna_ViewLayer_update_tagged () #2 0x0000555556918def in pyrna_func_call () #3 0x00007ffff2cba8df in _PyObject_MakeTpCall () at /lib64/libpython3.9.so.1.0 #4 0x00007ffff2cb760f in _PyEval_EvalFrameDefault () at /lib64/libpython3.9.so.1.0 #5 0x00007ffff2cbf4bb in function_code_fastcall () at /lib64/libpython3.9.so.1.0 #6 0x00007ffff2cb6cce in _PyEval_EvalFrameDefault () at /lib64/libpython3.9.so.1.0 #7 0x00007ffff2cb0e81 in _PyEval_EvalCode () at /lib64/libpython3.9.so.1.0 #8 0x00007ffff2cbf206 in _PyFunction_Vectorcall () at /lib64/libpython3.9.so.1.0 #9 0x00007ffff2cba462 in _PyObject_FastCallDictTstate () at /lib64/libpython3.9.so.1.0 #10 0x00007ffff2cc6b48 in _PyObject_Call_Prepend () at /lib64/libpython3.9.so.1.0 #11 0x00007ffff2d639ba in slot_tp_call () at /lib64/libpython3.9.so.1.0 #12 0x00007ffff2cba9cb in _PyObject_MakeTpCall () at /lib64/libpython3.9.so.1.0 #13 0x00007ffff2cb7c2f in _PyEval_EvalFrameDefault () at /lib64/libpython3.9.so.1.0 #14 0x00007ffff2cbf4bb in function_code_fastcall () at /lib64/libpython3.9.so.1.0 #15 0x00007ffff2cb2202 in _PyEval_EvalFrameDefault () at /lib64/libpython3.9.so.1.0 #16 0x00007ffff2cbf4bb in function_code_fastcall () at /lib64/libpython3.9.so.1.0 #17 0x00007ffff2cb2202 in _PyEval_EvalFrameDefault () at /lib64/libpython3.9.so.1.0 #18 0x00007ffff2cbf4bb in function_code_fastcall () at /lib64/libpython3.9.so.1.0 #19 0x0000555556930df2 in bpy_class_call () #20 0x0000555556904bb8 in rna_operator_execute_cb () #21 0x000055555652140a in wm_operator_invoke.part () #22 0x0000555556dc3e35 in console_main_region_draw () #23 0x000055555694e801 in ED_region_do_draw () #24 0x000055555651d21a in wm_draw_update () #25 0x0000555556526290 in WM_main () #26 0x00005555561e33de in main () Would you test this build from COPR: https://download.copr.fedorainfracloud.org/results/luya/blender-egl/fedora-33-x86_64/01731399-blender/ Hello. Thank for this build, but still same problem. You can't test/reproduce it yourself? As mentioned in comment#14, it's enough to click on "Scripting" tab. Still crashing to me, gdb output: Thread 1 "blender" received signal SIGSEGV, Segmentation fault. 0x00007ffff2c82fc9 in PyEval_ReleaseLock () from /lib64/libpython3.9.so.1.0 (In reply to Jan ONDREJ from comment #16) > Hello. Thank for this build, but still same problem. > You can't test/reproduce it yourself? As mentioned in comment#14, it's > enough to click on "Scripting" tab. Hence the build on COPR to compare issue. I confirm the traceback and it seems affecting Python 3.8 and up as upstream version is build from Python 3.7. Unfortunately, there is no devel package for Python 3.7. Assigning to Python team for investigation. Set assignation to investigate the traceback highlighted on comment #12 (In reply to Luya Tshimbalanga from comment #18) > (In reply to Jan ONDREJ from comment #16) > > Hello. Thank for this build, but still same problem. > > You can't test/reproduce it yourself? As mentioned in comment#14, it's > > enough to click on "Scripting" tab. > > Hence the build on COPR to compare issue. I confirm the traceback and it > seems affecting Python 3.8 and up as upstream version is build from Python > 3.7. > Unfortunately, there is no devel package for Python 3.7. Assigning to Python > team for investigation. I searched on Blender's issue tracker and its T82520 looks suspicious to me: https://developer.blender.org/T82520 Hope it helps (In reply to Xinya Zhang from comment #20) > > I searched on Blender's issue tracker and its T82520 looks suspicious to me: > https://developer.blender.org/T82520 > Hope it helps Thanks for the finding. Essentially, the bug in question is upstream and a large patch is available on https://developer.blender.org/rBe118426e4695a97d67e65d69677f3c4e2db50a56 Python maintainer here. It seems that the upstream links provide the informatika that was requested from us. Not sure, if this is a solution. Change from 0 to nullptr in most of places has been started in this patch on 6th november: https://developer.blender.org/rB16732def37c5a66f3ea28dbe247b09cc6bca6677#change-1Lw0xNX3U8nT Later some nullptr changed back to 0: https://developer.blender.org/T82520 In current Fedora build there are zeros, nullptr is not used. Do you think, changing some of them to nullptr and tp_print to 0 will fix our issue? Original patch was described only as "modernize" patch, not fixing anything. Thinking about it more, changing nullptrs to zero or back should not cause segmentation faults. I'd say that there is a problem with GIL somewhere. But I am not familiar with Blender codebase at all. Blender 2.91 is near with more fixes. https://wiki.blender.org/wiki/Reference/Release_Notes/2.91 I'll push it when available. FEDORA-2020-e807be8b1d has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-e807be8b1d FEDORA-2020-1aef1e9bca has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2020-1aef1e9bca FEDORA-2020-1aef1e9bca has been pushed to the Fedora 33 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-1aef1e9bca` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-1aef1e9bca See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2020-e807be8b1d has been pushed to the Fedora 32 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-e807be8b1d` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-e807be8b1d See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. Created attachment 1734543 [details]
crash.log of blender-2.91.0-2.fc33.x86_64
blender-2.91.0-2.fc33.x86_64 works much better. Most of operation works, but still sometimes crashes. Attaching creash.log.
(In reply to Jan ONDREJ from comment #30) > Created attachment 1734543 [details] > crash.log of blender-2.91.0-2.fc33.x86_64 From the attachment: " File "/home/ondrejj/.config/blender/2.91/scripts/addons/boxmaker.py", line 156 in execute" It seems that add-on has an issue. Disable it and see if the crash occur. I tested the script from comment #12 where the crash no longer occurs. (In reply to Luya Tshimbalanga from comment #31) > It seems that add-on has an issue. Disable it and see if the crash occur. I > tested the script from comment #12 where the crash no longer occurs. This is my own addon. I know, that blender crashed when using it, but blender shouldn't creash when using python addon. Should throw an exception, but don't crash. Also I can use my addon without problems with original blender downloaded from blender.org, but sometimes crashes in Fedora's build. My addon works normally in Fedora's build too, but If I change some object parameters, then crashes. (In reply to Jan ONDREJ from comment #32) > (In reply to Luya Tshimbalanga from comment #31) > > It seems that add-on has an issue. Disable it and see if the crash occur. I > > tested the script from comment #12 where the crash no longer occurs. > > This is my own addon. I know, that blender crashed when using it, but > blender shouldn't creash when using python addon. Should throw an exception, > but don't crash. > As observed, the crash occurred with Python 3.8 and up which exposed upstream bug relying to Python 3.7. FEDORA-2020-1aef1e9bca has been pushed to the Fedora 33 stable repository. If problem still persists, please make note of it in this bug report. FEDORA-2020-e807be8b1d has been pushed to the Fedora 32 stable repository. If problem still persists, please make note of it in this bug report. |