On Tue, Apr 23, 2013 at 1:51 AM, <[email protected]> wrote:

> Hi. I am trying to modify the debug-data in the blink binding of V8. I'm
> stuck because I can't find the cause for a crash. The call stack enters GC
> and crashes, but the starting point varies with how I run the test (eg one
> test vs test suite). Here is one example stack:
>
> STDERR:  [0x0000026365a8] base::debug::StackTrace::StackTrace()
> STDERR:  [0x000002635eaf] base::debug::(anonymous 
> namespace)::StackDumpSignalHandler()
> STDERR:  [0x7f3d0b473cb0] <unknown>
> STDERR:  [0x00000144d534] v8::internal::Map::instance_type()
> STDERR:  [0x0000015f478e] v8::internal::ShortCircuitConsString()
> STDERR:  [0x0000015ffb56] 
> v8::internal::RootMarkingVisitor::MarkObjectByPointer()
> STDERR:  [0x0000015ffb09] v8::internal::RootMarkingVisitor::VisitPointers()
> STDERR:  [0x00000153230e] v8::internal::Heap::IterateStrongRoots()
> STDERR:  [0x0000015f58c0] v8::internal::MarkCompactCollector::MarkRoots()
> STDERR:  [0x0000015f633e] 
> v8::internal::MarkCompactCollector::MarkLiveObjects()
> STDERR:  [0x0000015f227e] v8::internal::MarkCompactCollector::CollectGarbage()
> STDERR:  [0x000001522ff4] v8::internal::Heap::MarkCompact()
> STDERR:  [0x000001522929] v8::internal::Heap::PerformGarbageCollection()
> STDERR:  [0x000001521f3a] v8::internal::Heap::CollectGarbage()
> STDERR:  [0x00000148b178] v8::internal::Heap::CollectGarbage()
> STDERR:  [0x00000161f6a2] v8::internal::JSObject::NormalizeProperties()
> STDERR:  [0x00000168ec42] v8::internal::CreateObjectLiteralBoilerplate()
> STDERR:  [0x00000168ff08] v8::internal::Runtime_CreateObjectLiteralShallow()
> STDERR:  [0x278a7310654e] <unknown>
>
>
> Is there any strategy for this kind of problem?
>
>
1) Build and run in Debug mode. It contains a bunch of checks that help
catch at least some types of mistakes.
2) Run in GDB and inspect the situation. Maybe the type of broken objects,
or parameters present at various points in the call stack, or anything else
you may spot helps with figuring out what's going on.

And as Andrei said, if you want help, it would be good to share some code.

I'll take a wild guess here and assume that you're talking about
https://codereview.chromium.org/14362015/. If that's correct, then at a
quick glance the change in
https://codereview.chromium.org/14362015/diff/1/Source/bindings/v8/custom/V8InjectedScriptHostCustom.cpp
looks
suspicious: You're returning handles created in a HandleScope that's going
out of scope when returning, rendering the handles created in it invalid.
(Running in Debug mode should quickly ascertain whether this is the cause
of the problem.)

>
> I suppose I must be creating a value in the V8 heap that is somehow not 
> correct.
>
> That's pretty much all you can conclude from the stack trace.

>
> jjb
>
>  --
> --
> v8-users mailing list
> [email protected]
> http://groups.google.com/group/v8-users
> ---
> You received this message because you are subscribed to the Google Groups
> "v8-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to