Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

additional valgrind suppression for Python 3.9 #464

Merged
merged 1 commit into from
Apr 1, 2020

Conversation

mmathesius
Copy link
Collaborator

Fixes BZ#1817665

@mmathesius mmathesius requested a review from sgallagher March 27, 2020 20:50
@sgallagher
Copy link
Collaborator

That suppression looks really broad. I’m concerned that we may actually have noticed a real memory leak in Python 3.

Copy link

@vstinner vstinner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

It's likely the infamous GIL lock which is created and not freed at exit. Sadly, Python cannot destroy the GIL since daemon threads can be blocked on waiting for the GIL. It's a hard problem.

More generally, if some allocations are not released explicitly at exit, it's fine since Py_InitializeFromConfig() is only called once ;-)

@sgallagher sgallagher merged commit c02559d into fedora-modularity:master Apr 1, 2020
@vstinner
Copy link

vstinner commented Apr 1, 2020

By the way, if you are curious: here is an article telling the rationale for not deleting the GIL at exit ;-) https://vstinner.github.io/daemon-threads-python-finalization-python32.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants