Skip to content

GC: grown-array read loops (#10514 grown/grown_typed) segfault under seeded GC schedule on main #11590

Description

@proggeramlug

Found by the array-index perf lane (#11588/#11589). It reproduces on UNMODIFIED main d57f5139f.

The #10514 repro variants grown and grown_typed (an array grown by a[i] = v / push and then read in a loop; the typed-array variant likewise) segfault under the seeded GC schedule: PERRY_GC_SCHEDULE_SEED=<n> with PERRY_GC_PROTECT_FROMSPACE=1. Other seeds and variants are fine.

This is the classic rooting/forwarding bug signature (see CLAUDE.md "Rooting-bug instruments"). A likely suspect is the array growth-forwarding path: a forwarded old array or its element buffer referenced across a moving minor GC.

Needs: the failing seed(s), a backtrace with the from-space reporter output, a reduced repro, and a fix. The #10514 microbench is in the perf lane results at /root/claude-perf-arrayidx-results/ on perrymaster.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions