8000 unix: the GC does not scan all relevant parts of the stack · Issue #1787 · micropython/micropython · GitHub
[go: up one dir, main page]

Skip to content
unix: the GC does not scan all relevant parts of the stack #1787
Closed
@stinos

Description

@stinos
MicroPython v1.4.3-1119-gac16cc9 on 2016-01-18; linux version
Use Ctrl-D to exit, Ctrl-E for paste mode
>>> import gc
>>> gc.collect()
5
>>> gc.collect()
3
Segmentation fault (core dumped)

I'll have to investigate this further to find the actual cause, but from what I can see now (on Windows, where it segfaults in another place) it looks as if mp_state_ctx_t.vm.mp_module_builtins_override_dict gets sweeped in the first call to gc_collect(), so on the second execution the lookup in mp_load_global() segfaults because mp_module_builtins_override_dict doesn't contain a valid dict anymore.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0