Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 922938 - dev-python/pillow-10.2.0 fails tests on ppc: Fatal Python error: Segmentation fault
Summary: dev-python/pillow-10.2.0 fails tests on ppc: Fatal Python error: Segmentation...
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: PPC Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 922404
  Show dependency tree
 
Reported: 2024-01-26 04:02 UTC by matoro
Modified: 2024-05-24 20:57 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log and emerge --info (file_922938.txt,287.98 KB, text/plain)
2024-01-26 04:03 UTC, matoro
Details
sample snippet taken from running the first failing test manually (file_922938.txt,1.35 KB, text/plain)
2024-01-26 04:08 UTC, matoro
Details
gdb context and complete backtrace (file_922938.txt,200.25 KB, text/plain)
2024-01-26 05:01 UTC, matoro
Details

Note You need to log in before you can comment on or make changes to this bug.
Description matoro archtester 2024-01-26 04:02:11 UTC
A bunch of fails and then interrupted by segfault a quarter of the way thru.  Not a regression from previous pillow, unknown whether cpython regression yet.  Log taken with MAKEOPTS="-j1" for clarity.

Tests/test_file_tiff_metadata.py::test_writing_other_types_to_ascii[1-1] Fatal Python error: Segmentation fault                                                           
                                                                                                                                                                          
Current thread 0xf7cb2880 (most recent call first):                                                                                                                       
  File "/var/tmp/portage/dev-python/pillow-10.2.0/work/Pillow-10.2.0-python3_11/install/usr/lib/python3.11/site-packages/PIL/Image.py", line 420 in _getencoder           
  File "/var/tmp/portage/dev-python/pillow-10.2.0/work/Pillow-10.2.0-python3_11/install/usr/lib/python3.11/site-packages/PIL/TiffImagePlugin.py", line 1838 in _save      
  File "/var/tmp/portage/dev-python/pillow-10.2.0/work/Pillow-10.2.0-python3_11/install/usr/lib/python3.11/site-packages/PIL/Image.py", line 2439 in save                 
  File "/var/tmp/portage/dev-python/pillow-10.2.0/work/Pillow-10.2.0/Tests/test_file_tiff_metadata.py", line 200 in test_writing_other_types_to_ascii                     
  File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 194 in pytest_pyfunc_call                                                                              
  File "/usr/lib/python3.11/site-packages/pluggy/_callers.py", line 77 in _multicall                                                                                      
  File "/usr/lib/python3.11/site-packages/pluggy/_manager.py", line 115 in _hookexec                                                                                      
  File "/usr/lib/python3.11/site-packages/pluggy/_hooks.py", line 493 in __call__                                                                                         
  File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 1792 in runtest                                                                                        
  File "/usr/lib/python3.11/site-packages/_pytest/runner.py", line 169 in pytest_runtest_call                                                                             
  File "/usr/lib/python3.11/site-packages/pluggy/_callers.py", line 77 in _multicall                                                                                      
  File "/usr/lib/python3.11/site-packages/pluggy/_manager.py", line 115 in _hookexec                                                                                      
  File "/usr/lib/python3.11/site-packages/pluggy/_hooks.py", line 493 in __call__                                                                                         
  File "/usr/lib/python3.11/site-packages/_pytest/runner.py", line 262 in <lambda>                                                                                        
  File "/usr/lib/python3.11/site-packages/_pytest/runner.py", line 341 in from_call                                                                                       
  File "/usr/lib/python3.11/site-packages/_pytest/runner.py", line 261 in call_runtest_hook                                                                               
  File "/usr/lib/python3.11/site-packages/_pytest/runner.py", line 222 in call_and_report                                                                                 
  File "/usr/lib/python3.11/site-packages/_pytest/runner.py", line 133 in runtestprotocol                                                                                 
  File "/usr/lib/python3.11/site-packages/_pytest/runner.py", line 114 in pytest_runtest_protocol                                                                         
  File "/usr/lib/python3.11/site-packages/pluggy/_callers.py", line 77 in _multicall                                                                                      
  File "/usr/lib/python3.11/site-packages/pluggy/_manager.py", line 115 in _hookexec                                                                                      
  File "/usr/lib/python3.11/site-packages/pluggy/_hooks.py", line 493 in __call__                                                                                         
  File "/usr/lib/python3.11/site-packages/_pytest/main.py", line 350 in pytest_runtestloop
  File "/usr/lib/python3.11/site-packages/pluggy/_callers.py", line 77 in _multicall
  File "/usr/lib/python3.11/site-packages/pluggy/_manager.py", line 115 in _hookexec
  File "/usr/lib/python3.11/site-packages/pluggy/_hooks.py", line 493 in __call__
  File "/usr/lib/python3.11/site-packages/_pytest/main.py", line 325 in _main
  File "/usr/lib/python3.11/site-packages/_pytest/main.py", line 271 in wrap_session
  File "/usr/lib/python3.11/site-packages/_pytest/main.py", line 318 in pytest_cmdline_main
  File "/usr/lib/python3.11/site-packages/pluggy/_callers.py", line 77 in _multicall
  File "/usr/lib/python3.11/site-packages/pluggy/_manager.py", line 115 in _hookexec
  File "/usr/lib/python3.11/site-packages/pluggy/_hooks.py", line 493 in __call__
  File "/usr/lib/python3.11/site-packages/_pytest/config/__init__.py", line 169 in main
  File "/usr/lib/python3.11/site-packages/_pytest/config/__init__.py", line 192 in console_main
  File "/usr/lib/python3.11/site-packages/pytest/__main__.py", line 5 in <module>
  File "<frozen runpy>", line 88 in _run_code
  File "<frozen runpy>", line 198 in _run_module_as_main
 
Extension modules: PIL._imaging, PIL._imagingmath, PIL._imagingft, PIL._imagingcms, PIL._imagingmorph (total: 5)
/var/tmp/portage/dev-python/pillow-10.2.0/temp/environment: line 2601:    98 Segmentation fault      "${@}"

Reproducible: Always
Comment 1 matoro archtester 2024-01-26 04:03:30 UTC
Created attachment 883140 [details]
build.log and emerge --info
Comment 2 matoro archtester 2024-01-26 04:08:09 UTC
Created attachment 883141 [details]
sample snippet taken from running the first failing test manually
Comment 3 matoro archtester 2024-01-26 04:08:33 UTC
../Pillow-10.2.0-python3_11/install/usr/lib/python3.11/site-packages/PIL/Image.py:420: RuntimeError: Error setting from dictionary
Comment 4 matoro archtester 2024-01-26 05:01:14 UTC
Created attachment 883142 [details]
gdb context and complete backtrace

Looks like the crash is actually in media-libs/tiff.  Also, it doesn't reproduce when just running the crashing test by itself, or even the entire file.  Only crashes when the entire test suite is run.
Comment 5 matoro archtester 2024-01-26 05:09:24 UTC
Not a libtiff regression, or at least not a recent one, downgrading to 4.5.1 does not help.
Comment 6 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2024-01-26 05:33:19 UTC
Perhaps try ASAN or valgrind (if available).