deps: v8: fix potential segfault in profiler
This change fixes a potential segfault in the sampling heap profiler. This landed as part of a larger change upstream [1]. This is the minimal backport that avoids the segfault. [1]: https://git.io/vdTYL PR-URL: https://github.com/nodejs/node/pull/15498 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
parent
d7456ab2eb
commit
33f5014b37
@ -27,7 +27,7 @@
|
||||
|
||||
# Reset this number to 0 on major V8 upgrades.
|
||||
# Increment by one for each non-official patch applied to deps/v8.
|
||||
'v8_embedder_string': '-node.1',
|
||||
'v8_embedder_string': '-node.2',
|
||||
|
||||
# Enable disassembler for `--print-code` v8 options
|
||||
'v8_enable_disassembler': 1,
|
||||
|
@ -172,8 +172,11 @@ class SamplingAllocationObserver : public AllocationObserver {
|
||||
void Step(int bytes_allocated, Address soon_object, size_t size) override {
|
||||
USE(heap_);
|
||||
DCHECK(heap_->gc_state() == Heap::NOT_IN_GC);
|
||||
DCHECK(soon_object);
|
||||
profiler_->SampleObject(soon_object, size);
|
||||
if (soon_object) {
|
||||
// TODO(ofrobots): it would be better to sample the next object rather
|
||||
// than skipping this sample epoch if soon_object happens to be null.
|
||||
profiler_->SampleObject(soon_object, size);
|
||||
}
|
||||
}
|
||||
|
||||
intptr_t GetNextStepSize() override { return GetNextSampleInterval(rate_); }
|
||||
|
Loading…
x
Reference in New Issue
Block a user