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

gc.c: Ensure a gap of one byte before the finaliser table. #5245

Merged
merged 3 commits into from Aug 27, 2021

Conversation

Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

2 participants
@jepler
Copy link
Member

@jepler jepler commented Aug 27, 2021

.. or, for !MICROPY_ENABLE_FINALISER, before the first block of the pool.

Closes: #5021
Closes: micropython#7116

I tested this with a version of micropython#7716 (comment) and there were no problems detected. I haven't tested it on our real HW yet. I verified this fixes the original problem on magtag.

This is the same as micropython#7722 but prepared for merging into CircuitPython.

jepler added 3 commits Aug 27, 2021
When you wish to use the valgrind memory analysis tool on micropython,
you can arrange to define MICROPY_DEBUG_VALGRIND to enable use of
special valgrind macros. For now, this only fixes `gc_get_ptr`
so that it never emits the diagnostic "Conditional jump or move depends
on uninitialised value(s)".

Signed-off-by: Jeff Epler <jepler@gmail.com>
.. or, for !MICROPY_ENABLE_FINALISER, before the first block of the pool.

Closes: adafruit#5021
Closes: micropython#7116
Signed-off-by: Jeff Epler <jepler@gmail.com>
@dhalbert dhalbert requested a review from tannewt Aug 27, 2021
Copy link
Member

@tannewt tannewt left a comment

Thanks!

Loading

@tannewt tannewt merged commit 31b9dd4 into adafruit:main Aug 27, 2021
233 checks passed
Loading
dhalbert pushed a commit that referenced this issue Sep 15, 2021
This ensures it has a known start state. An unknown state risks it
looking like a tail block similar to the problem fixed by #5245.

Fixes #5305
@jepler jepler deleted the pool-fix-circuitpython branch Nov 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment