Skip to content

Crash in Dart_CreateSnapshot. #6358

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
DartBot opened this issue Oct 29, 2012 · 5 comments
Closed

Crash in Dart_CreateSnapshot. #6358

DartBot opened this issue Oct 29, 2012 · 5 comments
Assignees
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends.

Comments

@DartBot
Copy link

DartBot commented Oct 29, 2012

This issue was originally filed by [email protected]


  1. build drt on linux
  2. python <path_to_dartium>/src/dart/tools/test.py --compiler=none --runtime=drt --drt=<path_to_dartium>/src/out/Debug/DumpRenderTree --mode=debug --arch=ia32 --checked isolate/message_test
  3. drt hits an assertion ../../dart/runtime/vm/raw_object_snapshot.cc:1244: error: expected: kind == Snapshot::kMessage

Stack trace:

­0 0x00007ffff1da3a75 in *__GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64

­1 0x00007ffff1da75c0 in *__GI_abort () at abort.c:92

­2 0x0000000002cb80b8 in dart::DynamicAssertionHelper::Fail (this=0x7fffffff8760, format=0x51b6e38 "expected: %s")

    at ../../dart/runtime/platform/assert.cc:40

­3 0x0000000002cd5ec5 in dart::RawContextScope::WriteTo (this=0x7fffe5318691, writer=0x7fffffffa680, object_id=1310, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:1244

­4 0x0000000002ca29cd in dart::SnapshotWriter::WriteObjectRef (this=0x7fffffffa680, raw=0x7fffe5318691) at ../../dart/runtime/vm/snapshot.cc:879

­5 0x0000000002ca57e0 in dart::SnapshotWriterVisitor::VisitPointers (this=0x7fffffff8b30, first=0x7fffe53184d8, last=0x7fffe53184f0)

    at ../../dart/runtime/vm/snapshot.cc:1171

­6 0x0000000002cd3210 in dart::RawClosureData::WriteTo (this=0x7fffe53184d1, writer=0x7fffffffa680, object_id=1309, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:510

­7 0x0000000002ca259e in dart::SnapshotWriter::WriteObjectRef (this=0x7fffffffa680, raw=0x7fffe53184d1) at ../../dart/runtime/vm/snapshot.cc:879

­8 0x0000000002ca57e0 in dart::SnapshotWriterVisitor::VisitPointers (this=0x7fffffff8f20, first=0x7fffe5318468, last=0x7fffe53184a0)

    at ../../dart/runtime/vm/snapshot.cc:1171

­9 0x0000000002cd39fc in dart::RawFunction::WriteTo (this=0x7fffe5318461, writer=0x7fffffffa680, object_id=1306, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:624

­10 0x0000000002ca255f in dart::SnapshotWriter::WriteObjectRef (this=0x7fffffffa680, raw=0x7fffe5318461) at ../../dart/runtime/vm/snapshot.cc:879

­11 0x0000000002ca56cb in dart::SnapshotWriter::ArrayWriteTo (this=0x7fffffffa680, object_id=1305, array_kind=52, tags=3408896, length=0x8,

    type_arguments=0x7fffec8c0031, data=0x7fffe677fd20) at ../../dart/runtime/vm/snapshot.cc:1151

­12 0x0000000002cd8035 in dart::RawArray::WriteTo (this=0x7fffe677fd09, writer=0x7fffffffa680, object_id=1305, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:1969

­13 0x0000000002ca4c91 in dart::SnapshotWriter::WriteInlinedObject (this=0x7fffffffa680, raw=0x7fffe677fd09) at ../../dart/runtime/vm/snapshot.cc:1076

­14 0x0000000002ca3d34 in dart::SnapshotWriter::WriteObjectImpl (this=0x7fffffffa680, raw=0x7fffe677fd09) at ../../dart/runtime/vm/snapshot.cc:1020

­15 0x0000000002cd8358 in dart::RawGrowableObjectArray::WriteTo (this=0x7fffe677fd49, writer=0x7fffffffa680, object_id=1304, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:2028

­16 0x0000000002ca30b1 in dart::SnapshotWriter::WriteObjectRef (this=0x7fffffffa680, raw=0x7fffe677fd49) at ../../dart/runtime/vm/snapshot.cc:879

­17 0x0000000002ca57e0 in dart::SnapshotWriterVisitor::VisitPointers (this=0x7fffffff9a90, first=0x7fffe55fd2b8, last=0x7fffe55fd328)

    at ../../dart/runtime/vm/snapshot.cc:1171

­18 0x0000000002cd1bda in dart::RawClass::WriteTo (this=0x7fffe55fd2b1, writer=0x7fffffffa680, object_id=1301, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:108

­19 0x0000000002ca2403 in dart::SnapshotWriter::WriteObjectRef (this=0x7fffffffa680, raw=0x7fffe55fd2b1) at ../../dart/runtime/vm/snapshot.cc:879

­20 0x0000000002ca57e0 in dart::SnapshotWriterVisitor::VisitPointers (this=0x7fffffff9e70, first=0x7fffe55fe0f8, last=0x7fffe55fe110)

    at ../../dart/runtime/vm/snapshot.cc:1171

­21 0x0000000002cd3d92 in dart::RawField::WriteTo (this=0x7fffe55fe0f1, writer=0x7fffffffa680, object_id=1299, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:679

­22 0x0000000002ca261c in dart::SnapshotWriter::WriteObjectRef (this=0x7fffffffa680, raw=0x7fffe55fe0f1) at ../../dart/runtime/vm/snapshot.cc:879

­23 0x0000000002ca56cb in dart::SnapshotWriter::ArrayWriteTo (this=0x7fffffffa680, object_id=150, array_kind=52, tags=3407872, length=0x402,

    type_arguments=0x7fffec8c0031, data=0x7fffe53b2c38) at ../../dart/runtime/vm/snapshot.cc:1151

­24 0x0000000002cd8035 in dart::RawArray::WriteTo (this=0x7fffe53b2c21, writer=0x7fffffffa680, object_id=150, kind=dart::Snapshot::kScript)

    at ../../dart/runtime/vm/raw_object_snapshot.cc:1969

­25 0x0000000002ca4c91 in dart::SnapshotWriter::WriteInlinedObject (this=0x7fffffffa680, raw=0x7fffe53b2c21) at ../../dart/runtime/vm/snapshot.cc:1076

­26 0x0000000002ca5411 in dart::SnapshotWriter::WriteForwardedObjects (this=0x7fffffffa680) at ../../dart/runtime/vm/snapshot.cc:1094

­27 0x0000000002ca1f57 in dart::SnapshotWriter::WriteObject (this=0x7fffffffa680, rawobj=0x7fffe55f40a1) at ../../dart/runtime/vm/snapshot.cc:750

­28 0x0000000002ca5769 in dart::ScriptSnapshotWriter::WriteScriptSnapshot (this=0x7fffffffa680, lib=...) at ../../dart/runtime/vm/snapshot.cc:1161

­29 0x00000000020d1dfb in dart::Dart_CreateScriptSnapshot (buffer=0x7fffffffa830, size=0x7fffffffa828) at ../../dart/runtime/vm/dart_api_impl.cc:920

@iposva-google
Copy link
Contributor

Set owner to @a-siva.
Added Accepted label.

@a-siva
Copy link
Contributor

a-siva commented Oct 29, 2012

Is this snapshot being generated after the script has run?

I see that it is dumping some non NULL ClosureData, which seems to suggest that
the application has run.

@DartBot
Copy link
Author

DartBot commented Oct 30, 2012

This comment was originally written by [email protected]


Yes, the snapshot is created in spawnFunction to initialize child isolate. Is there another way to create script snapshot lazily, or should we create snapshot for all isolates in advance before invoking their entry point?

@a-siva
Copy link
Contributor

a-siva commented Nov 14, 2012

Issue #6064 has been merged into this issue.


cc @iposva-google.

@a-siva
Copy link
Contributor

a-siva commented Nov 15, 2012

Addressed the crash part of it in https://codereview.chromium.org//11275336

The actually functionality of spawnFunction using a script snapshot is covered
by issue #6610.


Added Fixed label.

@DartBot DartBot added Type-Defect area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. labels Nov 15, 2012
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends.
Projects
None yet
Development

No branches or pull requests

3 participants