GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — [3.13] gh-123022: Fix crash with `Py_Initialize` in background thread (GH-123052) by miss-islington · Pull Request #123114 · python/cpython

Conversation

@miss-islington

@miss-islington miss-islington commented Aug 17, 2024 •
edited by bedevere-app Bot
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

Check that the current default heap is initialized in
_mi_os_get_aligned_hint and mi_os_claim_huge_pages.

The mimalloc function _mi_os_get_aligned_hint assumes that there is an
initialized default heap. This is true for our main thread, but not for
background threads. The problematic code path is usually called during
initialization (i.e., Py_Initialize), but it may also be called if the
program allocates large amounts of memory in total.

The crash only affected the free-threaded build.
(cherry picked from commit d061ffe)

Co-authored-by: Sam Gross [email protected]

  • Issue: Crash in Py_Initialize in non-main thread in free-threading build #123022

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@colesbury @miss-islington
pythongh-123022: Fix crash with Py_Initialize in background thread (p…
ca630c3
…ythonGH-123052)

Check that the current default heap is initialized in
`_mi_os_get_aligned_hint` and `mi_os_claim_huge_pages`.

The mimalloc function `_mi_os_get_aligned_hint` assumes that there is an
initialized default heap. This is true for our main thread, but not for
background threads. The problematic code path is usually called during
initialization (i.e., `Py_Initialize`), but it may also be called if the
program allocates large amounts of memory in total.

The crash only affected the free-threaded build.
(cherry picked from commit d061ffe)

Co-authored-by: Sam Gross <[email protected]>
@bedevere-app bedevere-app Bot mentioned this pull request Aug 17, 2024
gh-123022: Fix crash with Py_Initialize in background thread #123052
Merged
@bedevere-app bedevere-app Bot added the topic-free-threading label Aug 17, 2024
@bedevere-app bedevere-app Bot mentioned this pull request Aug 17, 2024
Crash in Py_Initialize in non-main thread in free-threading build #123022
Closed
@bedevere-app bedevere-app Bot added the awaiting review label Aug 17, 2024
@colesbury
colesbury enabled auto-merge (squash) August 17, 2024 20:14
@colesbury
colesbury merged commit ff58c3c into python:3.13 Aug 17, 2024
@bedevere-app bedevere-app Bot removed the awaiting review label Aug 17, 2024
@miss-islington
miss-islington deleted the backport-d061ffe-3.13 branch January 2, 2026 18:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

topic-free-threading

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@miss-islington @colesbury
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.