New submission from Quentin Pradet <quentin.pra...@gmail.com>:

Since 
https://github.com/python/cpython/commit/32a67246b0d1e08cd50fc3bfa58052cfeb515b2e
 which was introduced through https://bugs.python.org/issue46008 and shipped as 
part of alpha 3, the urllib3 test suite reliably crashes on Fedora 35 (ie. 
gives a segfault).

I've narrowed the reproducer code down to 
https://github.com/pquentin/urllib3/blob/segfault/test/test_reproduce.py, but 
that still requires cffi, pyOpenSSL and Tornado.

The segfault either happens in the `ssl` module or the `selectors` module:

```
================================================= test session starts 
=================================================
platform linux -- Python 3.11.0a2+, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/q/pub/urllib3, configfile: setup.cfg
collected 1 item                                                                
                                      

test/test_reproduce.py Fatal Python error: Segmentation fault

Thread 0x00007fee9a250640 (most recent call first):
  File "/home/q/pub/install/lib/python3.11/ssl.py", line 1346 in do_handshake
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/iostream.py", 
line 1391 in _do_ssl_handshake
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/iostream.py", 
line 1478 in _handle_read
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/iostream.py", 
line 696 in _handle_events
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/platform/asyncio.py",
 line 189 in _handle_events
  File "/home/q/pub/install/lib/python3.11/asyncio/events.py", line 80 in _run
  File "/home/q/pub/install/lib/python3.11/asyncio/base_events.py", line 1858 
in _run_once
  File "/home/q/pub/install/lib/python3.11/asyncio/base_events.py", line 591 in 
run_forever
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/platform/asyncio.py",
 line 199 in start
  File "/home/q/pub/install/lib/python3.11/threading.py", line 968 in run
  File "/home/q/pub/install/lib/python3.11/threading.py", line 1031 in 
_bootstrap_inner
  File "/home/q/pub/install/lib/python3.11/threading.py", line 988 in _bootstrap

Extension modules: tornado.speedups, _brotli, _cffi_backend (total: 3)
zsh: segmentation fault (core dumped)  pytest
```

```
================================================= test session starts 
=================================================
platform linux -- Python 3.11.0a2+, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/q/pub/urllib3, configfile: setup.cfg
collected 1 item                                                                
                                      

test/test_reproduce.py Fatal Python error: Segmentation fault

Thread 0x00007fee9a250640 (most recent call first):
  File "/home/q/pub/install/lib/python3.11/ssl.py", line 1346 in do_handshake
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/iostream.py", 
line 1391 in _do_ssl_handshake
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/iostream.py", 
line 1478 in _handle_read
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/iostream.py", 
line 696 in _handle_events
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/platform/asyncio.py",
 line 189 in _handle_events
  File "/home/q/pub/install/lib/python3.11/asyncio/events.py", line 80 in _run
  File "/home/q/pub/install/lib/python3.11/asyncio/base_events.py", line 1858 
in _run_once
  File "/home/q/pub/install/lib/python3.11/asyncio/base_events.py", line 591 in 
run_forever
  File 
"/home/q/pub/urllib3/venv/lib/python3.11/site-packages/tornado/platform/asyncio.py",
 line 199 in start
  File "/home/q/pub/install/lib/python3.11/threading.py", line 968 in run
  File "/home/q/pub/install/lib/python3.11/threading.py", line 1031 in 
_bootstrap_inner
  File "/home/q/pub/install/lib/python3.11/threading.py", line 988 in _bootstrap

Extension modules: tornado.speedups, _brotli, _cffi_backend (total: 3)
zsh: segmentation fault (core dumped)  pytest
```

I can work on a better reproducer, but thought this was already interesting as 
https://github.com/python/cpython/pull/29977 states there should have been zero 
change in behavior.

----------
components: Interpreter Core
messages: 410166
nosy: Quentin.Pradet, SethMichaelLarson, eric.snow
priority: normal
severity: normal
status: open
title: runtime/interp/thread state refactoring leads to segmentation fault
type: crash
versions: Python 3.11

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue46320>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to