While the V8 team accepts upstream patches from the team that develops the 
MIPS port for V8, we do not maintain it ourselves. Please file an issue to 
https://github.com/paul99/v8m-rb

Yang

On Friday, July 27, 2012 6:05:26 AM UTC+2, Evgeny Baskakov wrote:
>
> Hi guys,
>
> I'm experiencing severe GC crashes on some rare MIPS devices. The V8 code 
> is taken from https://github.com/paul99/v8m-rb, 
> commit c2e35dc507b4562ce666a48cb7a26633f9d7fdaf (plus some modifications 
> for the specific device).
>
> The crashing command line is 
>
> # /bin/d8 --nocrankshaft --expose-gc --noopt /bin/mjsunit/mjsunit.js 
> /bin/mjsunit/regress/regress-84234.js --test
>
> Can someone give some hints to what to look at first?
>
> Here are the gdb callstacks:
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x2ab4fd5c in v8::internal::Map::instance_size (this=0x166) at 
> ../src/objects-inl.h:2833
> 2833      return READ_BYTE_FIELD(this, kInstanceSizeOffset) << 
> kPointerSizeLog2;
> (gdb) bt
> #0  0x2ab4fd5c in v8::internal::Map::instance_size (this=0x166) at 
> ../src/objects-inl.h:2833
> #1  0x2ab5952c in v8::internal::HeapObject::SizeFromMap (this=0x40728b3d, 
> map=0x166) at ../src/objects-inl.h:2848
> #2  0x2ab597a4 in v8::internal::HeapObject::Size (this=0x40728b3d) at 
> ../src/objects-inl.h:1181
> #3  0x2aeda718 in v8::internal::SemiSpaceIterator::Next (this=0x7fe1bfec) 
> at ../src/spaces.h:2006
> #4  0x2aecd4e4 in v8::internal::MarkCompactCollector::EvacuateNewSpace 
> (this=0x44b470) at ../src/mark-compact.cc:3004
> #5  0x2aecd63c in 
> v8::internal::MarkCompactCollector::EvacuateNewSpaceAndCandidates 
> (this=0x44b470) at ../src/mark-compact.cc:3411
> #6  0x2aece720 in v8::internal::MarkCompactCollector::SweepSpaces 
> (this=0x44b470) at ../src/mark-compact.cc:4103
> #7  0x2aed27d4 in v8::internal::MarkCompactCollector::CollectGarbage 
> (this=0x44b470) at ../src/mark-compact.cc:295
> #8  0x2ad5b2bc in v8::internal::Heap::MarkCompact (this=0x44a040, 
> tracer=0x7fe1c2c0) at ../src/heap.cc:979
> #9  0x2ad5b958 in v8::internal::Heap::PerformGarbageCollection 
> (this=0x44a040, collector=v8::internal::MARK_COMPACTOR, tracer=0x7fe1c2c0) 
> at ../src/heap.cc:862
> #10 0x2ad5e0d0 in v8::internal::Heap::CollectGarbage (this=0x44a040, 
> space=v8::internal::OLD_POINTER_SPACE, 
> collector=v8::internal::MARK_COMPACTOR, gc_reason=0x2b2bde34 "gc 
> extension", 
>     collector_reason=0x2b2cc244 "GC in old space requested") at 
> ../src/heap.cc:600
> #11 0x2ac1f784 in v8::internal::Heap::CollectGarbage (this=0x44a040, 
> space=v8::internal::OLD_POINTER_SPACE, gc_reason=0x2b2bde34 "gc extension") 
> at ../src/heap-inl.h:440
> #12 0x2ad5e934 in v8::internal::Heap::CollectAllGarbage (this=0x44a040, 
> flags=0, gc_reason=0x2b2bde34 "gc extension") at ../src/heap.cc:510
> #13 0x2aca7c14 in v8::internal::GCExtension::GC (args=@0x7fe1c4cc) at 
> ../src/extensions/gc-extension.cc:43
> #14 0x2ac047f4 in HandleApiCallHelper<false> 
> (args={<v8::internal::Arguments> = {<v8::internal::Embedded> = {<No data 
> fields>}, length_ = 2, arguments_ = 0x7fe1c594}, <No data fields>}, 
>     isolate=0x44a038) at ../src/builtins.cc:1145
> #15 0x2ac049d0 in Builtin_Impl_HandleApiCall 
> (args={<v8::internal::Arguments> = {<v8::internal::Embedded> = {<No data 
> fields>}, length_ = 2, arguments_ = 0x7fe1c594}, <No data fields>}, 
>     isolate=0x44a038) at ../src/builtins.cc:1162
> #16 0x2ac04aac in Builtin_HandleApiCall (args={<v8::internal::Arguments> = 
> {<v8::internal::Embedded> = {<No data fields>}, length_ = 2, arguments_ = 
> 0x7fe1c594}, <No data fields>}, 
>     isolate=0x44a038) at ../src/builtins.cc:1161
> #17 0x3f60a0b4 in ?? ()
>
> (gdb) print this
> $1 = (class v8::internal::Map * const) 0x166
>
>
> Another one, with similar call stack:
>
> #12 0x2ac10918 in V8_Fatal (file=0x2b2a7730 "../src/objects-inl.h", 
> line=2875, format=0x2b2a7748 "CHECK(%s) failed") at ../src/checks.cc:55
> #13 0x2ab5971c in v8::internal::HeapObject::SizeFromMap (this=0x49728af9, 
> map=0x49728b51) at ../src/objects-inl.h:2875
> #14 0x2ab597a4 in v8::internal::HeapObject::Size (this=0x49728af9) at 
> ../src/objects-inl.h:1181
> #15 0x2aeda718 in v8::internal::SemiSpaceIterator::Next (this=0x7fdc5a1c) 
> at ../src/spaces.h:2006
> #16 0x2aecd4e4 in v8::internal::MarkCompactCollector::EvacuateNewSpace 
> (this=0x44b470) at ../src/mark-compact.cc:3004
> #17 0x2aecd63c in 
> v8::internal::MarkCompactCollector::EvacuateNewSpaceAndCandidates 
> (this=0x44b470) at ../src/mark-compact.cc:3411
> #18 0x2aece720 in v8::internal::MarkCompactCollector::SweepSpaces 
> (this=0x44b470) at ../src/mark-compact.cc:4103
> #19 0x2aed27d4 in v8::internal::MarkCompactCollector::CollectGarbage 
> (this=0x44b470) at ../src/mark-compact.cc:295
> #20 0x2ad5b2bc in v8::internal::Heap::MarkCompact (this=0x44a040, 
> tracer=0x7fdc5cf0) at ../src/heap.cc:979
> #21 0x2ad5b958 in v8::internal::Heap::PerformGarbageCollection 
> (this=0x44a040, collector=v8::internal::MARK_COMPACTOR, tracer=0x7fdc5cf0) 
> at ../src/heap.cc:862
> #22 0x2ad5e0d0 in v8::internal::Heap::CollectGarbage (this=0x44a040, 
> space=v8::internal::OLD_POINTER_SPACE, 
> collector=v8::internal::MARK_COMPACTOR, gc_reason=0x2b2bde34 "gc 
> extension", 
>     collector_reason=0x2b2cc244 "GC in old space requested") at 
> ../src/heap.cc:600
> #23 0x2ac1f784 in v8::internal::Heap::CollectGarbage (this=0x44a040, 
> space=v8::internal::OLD_POINTER_SPACE, gc_reason=0x2b2bde34 "gc extension") 
> at ../src/heap-inl.h:440
> #24 0x2ad5e934 in v8::internal::Heap::CollectAllGarbage (this=0x44a040, 
> flags=0, gc_reason=0x2b2bde34 "gc extension") at ../src/heap.cc:510
> #25 0x2aca7c14 in v8::internal::GCExtension::GC (args=@0x7fdc5efc) at 
> ../src/extensions/gc-extension.cc:43
> #26 0x2ac047f4 in HandleApiCallHelper<false> 
> (args={<v8::internal::Arguments> = {<v8::internal::Embedded> = {<No data 
> fields>}, length_ = 2, arguments_ = 0x7fdc5fc4}, <No data fields>}, 
>     isolate=0x44a038) at ../src/builtins.cc:1145
> #27 0x2ac049d0 in Builtin_Impl_HandleApiCall 
> (args={<v8::internal::Arguments> = {<v8::internal::Embedded> = {<No data 
> fields>}, length_ = 2, arguments_ = 0x7fdc5fc4}, <No data fields>}, 
>     isolate=0x44a038) at ../src/builtins.cc:1162
> #28 0x2ac04aac in Builtin_HandleApiCall (args={<v8::internal::Arguments> = 
> {<v8::internal::Embedded> = {<No data fields>}, length_ = 2, arguments_ = 
> 0x7fdc5fc4}, <No data fields>}, 
>     isolate=0x44a038) at ../src/builtins.cc:1161
> #29 0x5370a0b4 in ?? ()
>
> (gdb) up 13
> #13 0x2ab5971c in v8::internal::HeapObject::SizeFromMap (this=0x49728af9, 
> map=0x49728b51) at ../src/objects-inl.h:2875
> 2875      ASSERT(instance_type == CODE_TYPE);
> Current language:  auto; currently c++
>
> (gdb) print instance_type
> $1 = 50
>
>

-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users

Reply via email to