python3.8 subinterpereters cause use-after-free in asyncio
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
python3.8 (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
Focal |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Python 3.8.0 to 3.8.2 include a bug which breaks subinterpereters nearly in their entirety.
If a subinterpereter initializes asyncio (a library used by many other libraries), then exits, and another subinterpereter initializes asyncio, there will be a use-after-free and segmentation fault.
See: https:/
A main.c small test program is attached to that bug which replicates the issue.
The bug has been fixed as of 3.8.3 and 3.9.0. I attached a patch which backports the one-line fix to a 3.8.2-1ubuntu1.2 version for focal.
I am writing a piece of software that I fear will be unusable on focal without this backport, since the default python3 is python 3.8.2-1ubuntu1.1 at the time of writing. Since it does not contain the fix, my application crashes.
Changed in python3.8 (Ubuntu): | |
importance: | Undecided → Medium |
tags: |
added: focal removed: after asyncio bpo40294 free gh-19542 gh-19565 use use-after-free |
Changed in python3.8 (Ubuntu): | |
status: | New → Fix Released |
Changed in python3.8 (Ubuntu Focal): | |
importance: | Undecided → Medium |
tags: | added: bitesize |
The attachment "1-3.8. 2-1ubuntu1. 2.debdiff" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.
[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]