• Michael Lippautz's avatar
    [heap] Fix Barrier used in Scavenger · 486e641c
    Michael Lippautz authored
    The barrier assumed that the number of tasks is fixed. However, we
    cannot rely on that because other tasks might take up threads. In the
    ein thend this would result in the Scavenge task being (rightfully)
    cancelled.
    
    The barrier now assumes no tasks in the beginning and relies on the fact
    that reaching the barrier means that no global work is left. Tasks that
    lag behing will just observe the barrier being in its end state.
    
    Bug: chromium:738865
    Change-Id: I4d47e8ec4b9cf7c615b3d9585e4a6bb9d271d409
    Reviewed-on: https://chromium-review.googlesource.com/582947Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#46842}
    486e641c
scavenger.h 5.8 KB