Skip to content
  • Ben Gamari's avatar
    nonmoving: Move current segment array into Capability · b500867a
    Ben Gamari authored and Marge Bot's avatar Marge Bot committed
    The current segments are conceptually owned by the mutator, not the
    collector. Consequently, it was quite tricky to prove that the mutator
    would not race with the collect due to this shared state. It turns out
    that such races are possible: when resizing the current segment array
    we may concurrently try to take a heap census. This will attempt to walk
    the current segment array, causing a data race.
    
    Fix this by moving the current segment array into `Capability`, where it
    belongs.
    
    Fixes #22926.
    b500867a