v8/test/unittests/heap
Michael Lippautz c58862c360 cppgc: Allow CrossThreadPersistent to access poisoned memory from GC
Allow CrossThreadPersistent and its weak form to access ASAN poisoned
memory from the GC entry points.

In general, payloads of to-be-finalized objects are poisoned until the
finalizer actually runs to avoid accidentally touching that payload.

In the case of cross-thread handles, these may need to be cleared by a
different thread before the finalizer actually runs. In order to clear
those references, the slot needs to be unpoisoned.

This is issue is ASAN-only and does not affect production or other
debug builds.

Bug: chromium:1230599, chromium:1056170
Change-Id: If4d0808953047319b02653821abbb5c638084dc5
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3040845
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75846}
2021-07-21 19:11:01 +00:00
..
base cppgc, heap: Add Clear and IsEmpty methods to Worklist::Local 2020-10-20 21:59:38 +00:00
cppgc cppgc: Allow CrossThreadPersistent to access poisoned memory from GC 2021-07-21 19:11:01 +00:00
allocation-observer-unittest.cc [heap] Support removing of observers during Step() 2020-08-17 10:42:32 +00:00
barrier-unittest.cc Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
bitmap-test-utils.h [heap] Relax accessing markbits in ranges. 2019-02-25 15:28:41 +00:00
bitmap-unittest.cc [heap] Fix an out-of-bounds access in the marking bitmap 2020-04-20 09:07:57 +00:00
code-object-registry-unittest.cc [heap] Split out paged-spaces.h 2020-05-14 19:25:25 +00:00
embedder-tracing-unittest.cc [unittests] Convert to the new MOCK_METHOD macro. 2020-06-10 15:50:38 +00:00
gc-idle-time-handler-unittest.cc Reland "Fix -Wimplicit-int-float-conversions." 2021-06-29 16:36:18 +00:00
gc-tracer-unittest.cc [heap] Replace TRACE_BACKGROUND_GC macro with TRACE_GC1 2020-11-27 17:48:55 +00:00
heap-controller-unittest.cc [cleanup] Replace all remaining Min/Max uses with std::min/max 2020-11-24 17:32:01 +00:00
heap-unittest.cc [ptr-cage] Introduce PtrComprCage 2021-04-12 17:49:43 +00:00
heap-utils.cc cppgc,api: Add support for JS->C++ write barriers 2021-01-21 14:28:00 +00:00
heap-utils.h cppgc,api: Add support for JS->C++ write barriers 2021-01-21 14:28:00 +00:00
index-generator-unittest.cc [Heap]: Implement IndexGenerator for Jobs use cases. 2020-09-11 19:25:33 +00:00
list-unittest.cc [heap] Make Heap::Contains const 2020-05-13 13:19:22 +00:00
local-factory-unittest.cc [parsing] Split FLAG_lazy into three subflags 2021-07-01 17:14:15 +00:00
local-heap-unittest.cc [heap] Fix deadlock with concurrent allocation and blocked main thread 2021-03-29 12:29:25 +00:00
marking-unittest.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
marking-worklist-unittest.cc [heap] Split marking worklist into global worklist and local worklists 2020-08-11 13:15:54 +00:00
memory-reducer-unittest.cc Move remaining files in src/ 2019-05-24 18:24:36 +00:00
object-start-bitmap-unittest.cc [heap] Add object start bitmap for conservative stack scanning 2020-08-31 07:10:36 +00:00
object-stats-unittest.cc Move more relevant files to src/objects 2019-05-23 08:52:30 +00:00
persistent-handles-unittest.cc [handles] Make DetachPersistent insert into ordered_blocks_ 2020-08-05 12:03:52 +00:00
safepoint-unittest.cc [heap, infra] Remove --local-heaps and --concurrent-allocation flags 2021-02-01 11:01:26 +00:00
slot-set-unittest.cc [heap] Verify filler slots don't need clearing 2020-04-28 16:24:45 +00:00
spaces-unittest.cc Reland "[heap] Remove unused LocalSpace class" 2021-06-06 19:09:13 +00:00
traced-reference-unittest.cc cppgc: Replace JSMember by TracedReference 2020-10-27 14:46:56 +00:00
unified-heap-snapshot-unittest.cc cppgc: NameProvider:GetName() -> NameProvider::GetHumanReadableName() 2021-06-08 15:56:46 +00:00
unified-heap-unittest.cc [unittest] Skip failing test on Fuchsia 2021-06-28 15:51:31 +00:00
unified-heap-utils.cc Reland "cppgc-js: Add unittest for CollectCustomSpaceStatisticsAtLastGC" 2021-05-17 12:32:54 +00:00
unified-heap-utils.h Reland "cppgc-js: Add unittest for CollectCustomSpaceStatisticsAtLastGC" 2021-05-17 12:32:54 +00:00
unmapper-unittest.cc [Fuchsia] Filter failing tests on Fuchsia 2021-06-07 19:18:16 +00:00
worklist-unittest.cc [v8 heap]: Track GlobalSize in worklist. 2020-02-07 16:12:30 +00:00