| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
…xes to immortal objects.
…e-127705.Qad2hx.rst Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
There was a problem hiding this comment.
This mostly seems okay. FYI, I didn't do a deep dive into the code to verifying correctness, like I normally do. I did read through all the files except for Include/internal/pycore_stackref.h. The changes make sense and I can see how they simplify things.
Sorry, something went wrong.
|
@markshannon - Have you measured the effect of the mortality optimizations independently from the changes to use macros? The tag bits are a precious commodity and the mortality optimizations require two bits. |
Sorry, something went wrong.
|
@mpage. I changed the PR to use a single bit, using _Py_IsImmortal() in a few places where we need to distinguish between tagged pointers to mortal and immortal objects.
|
Sorry, something went wrong.
| inst(RETURN_VALUE, (retval -- res)) { | ||
| assert(frame->owner != FRAME_OWNED_BY_INTERPRETER); | ||
| _PyStackRef temp = retval; | ||
| assert(PyStackRef_IsHeapSafe(temp)); |
There was a problem hiding this comment.
Why the assert here? This blocks stackrefs from passing through to the host frame, which blocks a lot of unboxed and deferred refcounting optimizations.
Sorry, something went wrong.
There was a problem hiding this comment.
It blocks a lot of unsafe operations. Passing references towards the caller is unsafe as it is possible that the only immediate reference count (stored in ob_refcnt) for an object is stored in the callee, and will be deleted during the return.
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot s390x RHEL9 Refleaks 3.x (tier-3) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/1589/builds/1084 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot s390x RHEL8 Refleaks 3.x (tier-3) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/75/builds/2284 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_syntax_error) ... o
k
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot aarch64 RHEL8 Refleaks 3.x (tier-2) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/551/builds/887 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot AMD64 RHEL8 Refleaks 3.x (tier-1) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/259/builds/2292 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot AMD64 Fedora Stable Refleaks 3.x (tier-1) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/320/builds/2091 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot AMD64 FreeBSD Refleaks 3.x (tier-3) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/1613/builds/926 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot PPC64LE RHEL8 Refleaks 3.x (tier-2) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/384/builds/1779 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot PPC64LE Fedora Stable Refleaks 3.x (tier-2) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/280/builds/1711 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️Hi! The buildbot AMD64 Windows11 Refleaks 3.x (tier-1) has failed when building commit 2bef8ea. What do you need to do:
You can take a look at the buildbot page here: https://buildbot.python.org/#/builders/920/builds/1438 Failed tests:
Test leaking resources:
Summary of the results of the build (if available): == Click to see traceback logsTracebackTests.test_exec_failure) ... ok
TracebackTests.test_syntax_error) ... ok
TracebackTests.test_broken_from) ... ok
TracebackTests.test_broken_submodule) ... ok
TracebackTests.test_broken_parent) ... ok
TracebackTests.test_unencodable_filename) ... ok
TracebackTests.test_exec_failure_nested) ... ok
TracebackTests.test_import_bug) ... ok
TracebackTests.test_broken_parent_from) ... ok
TracebackTests.test_nonexistent_module) ... ok
TracebackTests.test_nonexistent_module_nested) ... ok
|
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
We already have _PyStackRefs in the default build, but they are just PyObject * pointers cast to a pointer-sized int.
This PR adds tags according to the tagging scheme in #127705.