• ulan@chromium.org's avatar
    Clear old backing store of WeakCollection on updates. · de672226
    ulan@chromium.org authored
    Not clearing can lead to a crash under following conditions:
    1. Backing store of a weak map is allocated in large object space.
    2. The backing store is marked incrementaly via the weak map.
    3. The weak map is updated and gets a new backing store.
    4. The store buffer overflows and marks the chunk of the old backing store as
    "scan on scavenge."
    5. Mark-compact collection kills some elements of the weak map. Note that the
    old backing store survives because it was marked incrementally, but its dead
    elements are not cleared.
    6. Scavenger iterates over the old backing store, tries to move a dead object
    and crashes.
    
    BUG=v8:3631
    LOG=N
    TEST=cctest/test-heap/Regress3631
    R=jkummerow@chromium.org
    
    Review URL: https://codereview.chromium.org/686783003
    
    Cr-Commit-Position: refs/heads/master@{#25032}
    git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    de672226
Name
Last commit
Last update
benchmarks Loading commit data...
build Loading commit data...
include Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
tools Loading commit data...
.DEPS.git Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
Makefile.nacl Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...