Bug#1126861: vtk9: bigendian (s390x) pyvista triggers segfault in vtkMatplotlibMathTextUtilities::RenderOneCell

Drew Parsons dparsons at debian.org
Mon Feb 2 19:25:36 GMT 2026


Package: vtk9
Version: 9.5.2+dfsg3-4
Severity: normal
X-Debbugs-Cc: debian-s390 at lists.debian.org
User: debian-s390 at lists.debian.org
Usertags: s390x
Control: affects -1 src:python-pyvista
Control: forwarded -1 https://gitlab.kitware.com/vtk/vtk/-/issues/19931

CI testing of the debian package of pyvista 0.46.5-6 is finding a
segfault on bigendian s390x with libvtk-9.5 9.5.2+dfsg3-4. One thing
that is strange is that the test is passing with debian's earlier
build libvtk-9.5 9.5.2+dfsg2-4. The only substantial difference that I
can see between the two builds of VTK 9.5 is activation of parallel
HDF5 and xdmf3.

The passing pvista tests are logged at
https://ci.debian.net/packages/p/python-pyvista/testing/s390x/68318604/

The failing tests are logged at
https://ci.debian.net/packages/p/python-pyvista/testing/s390x/68332331/
or
https://ci.debian.net/packages/p/python-pyvista/unstable/s390x/68319108/

The pyvista error in those logs indicates a segfault in Render
...
501s tests/plotting/test_plotting.py::test_direction_objects[ParametricCrossCap-neg] PASSED [ 41%]
502s tests/plotting/test_plotting.py::test_plot_texture_alone PASSED          [ 41%]
502s tests/plotting/test_plotting.py::test_add_text_latex Fatal Python error: Segmentation fault
502s 
502s Thread 0x000003ff195ea8e0 (most recent call first):
502s   File "/usr/lib/python3.13/threading.py", line 363 in wait
502s   File "/usr/lib/python3.13/threading.py", line 660 in wait
502s   File "/usr/lib/python3/dist-packages/tqdm/_monitor.py", line 60 in run
502s   File "/usr/lib/python3.13/threading.py", line 1044 in _bootstrap_inner
502s   File "/usr/lib/python3.13/threading.py", line 1015 in _bootstrap
502s 
502s Current thread 0x000003ffa12f8140 (most recent call first):
502s   File "/tmp/autopkgtest-lxc.j0qtm0bb/downtmp/build.9ci/src/pyvista/plotting/plotter.py", line 2158 in render
502s   File "/tmp/autopkgtest-lxc.j0qtm0bb/downtmp/build.9ci/src/pyvista/plotting/plotter.py", line 7221 in show
502s   File "/tmp/autopkgtest-lxc.j0qtm0bb/downtmp/build.9ci/src/pyvista/_deprecate_positional_args.py", line 245 in inner_f
502s   File "/tmp/autopkgtest-lxc.j0qtm0bb/downtmp/build.9ci/src/tests/plotting/test_plotting.py", line 3172 in test_add_text_latex


I can reproduce the error on the s390x porterbox and get a gdb
backtrace via `xvfb-run -a gdb python3.13`

(gdb) run -m pytest -v tests/plotting/test_plotting.py -k test_add_text_latex
Starting program: /usr/bin/python3.13 -m pytest -v tests/plotting/test_plotting.py -k test_add_text_latex
...
Thread 1 "python3.13" received signal SIGSEGV, Segmentation fault.
(gdb) bt
#0  0x000003ffe231e7ca in vtkMatplotlibMathTextUtilities::RenderOneCell(vtkImageData*, int*, long, long, vtkSmartPyObject&, unsigned long, unsigned long, unsigned long, unsigned long, vtkTextProperty*, TextColors const&) () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingMatplotlib-9.5.so.1
#1  0x000003ffe2320870 in vtkMatplotlibMathTextUtilities::RenderString(char const*, vtkImageData*, vtkTextProperty*, int, int*) ()
   from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingMatplotlib-9.5.so.1
#2  0x000003ffe6d19444 in vtkMathTextFreeTypeTextRenderer::RenderStringInternal(vtkTextProperty*, vtkStdString const&, vtkImageData*, int*, int, int) ()
   from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingFreeType-9.5.so.1
#3  0x000003ffecca8b78 in vtkTextMapper::UpdateImage(int) () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingCore-9.5.so.1
#4  0x000003ffecca9462 in vtkTextMapper::GetSize(vtkViewport*, int*) () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingCore-9.5.so.1
#5  0x000003ffe5598158 in vtkCornerAnnotation::RenderOpaqueGeometry(vtkViewport*) () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingAnnotation-9.5.so.1
#6  0x000003ffecc19c82 in vtkRenderer::UpdateOpaquePolygonalGeometry() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingCore-9.5.so.1
#7  0x000003ffe44384ae in vtkOpenGLRenderer::UpdateGeometry(vtkFrameBufferObjectBase*) () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingOpenGL2-9.5.so.1
#8  0x000003ffe4436f14 in vtkOpenGLRenderer::DeviceRender() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingOpenGL2-9.5.so.1
#9  0x000003ffecc1dbe0 in vtkRenderer::Render() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingCore-9.5.so.1
#10 0x000003ffecc3452e in vtkRendererCollection::Render() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingCore-9.5.so.1
#11 0x000003ffecbfdeba in vtkRenderWindow::DoStereoRender() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingCore-9.5.so.1
#12 0x000003ffecbff830 in vtkRenderWindow::Render() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingCore-9.5.so.1
#13 0x000003ffe44337d2 in vtkOpenGLRenderWindow::Render() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingOpenGL2-9.5.so.1
#14 0x000003ffe4540070 in vtkXOpenGLRenderWindow::Render() () from /usr/lib/python3/dist-packages/vtkmodules/../../../s390x-linux-gnu/libvtkRenderingOpenGL2-9.5.so.1
#15 0x000003ffe4082d14 in ?? () from /usr/lib/python3/dist-packages/vtkmodules/vtkRenderingOpenGL2.cpython-313-s390x-linux-gnu.so


Issue raised upstream https://gitlab.kitware.com/vtk/vtk/-/issues/19931



More information about the debian-science-maintainers mailing list