Bug 1331458
Summary: | Segfault on d8 startup or via rubygem-therubyracer | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Dominic Cleal <dominic> | ||||
Component: | v8 | Assignee: | Vít Ondruch <vondruch> | ||||
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | unspecified | ||||||
Version: | 24 | CC: | tcallawa, tchollingsworth, tomspur, vondruch | ||||
Target Milestone: | --- | ||||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | |||||||
Fixed In Version: | v8-3.14.5.10-24.fc24 | Doc Type: | Bug Fix | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2016-06-20 22:25:40 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | 1331480 | ||||||
Bug Blocks: | |||||||
Attachments: |
|
Description
Dominic Cleal
2016-04-28 14:44:58 UTC
Sorry, I notice now that this isn't just therubyracer - the standard 'd8' command shipped in v8 simply segfaults on F24 too. Version-Release number of selected component (if applicable): v8-3.14.5.10-23.fc24.x86_64 Additional info: # gdb d8 GNU gdb (GDB) Fedora 7.11-66.fc24 [..] (gdb) run Starting program: /usr/bin/d8 [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Program received signal SIGSEGV, Segmentation fault. v8::internal::PagedSpace::AdvanceSweeper (this=this@entry=0xa06590, bytes_to_sweep=bytes_to_sweep@entry=64) at src/spaces.cc:2316 2316 if (ShouldBeSweptLazily(p)) { (gdb) bt #0 v8::internal::PagedSpace::AdvanceSweeper (this=this@entry=0xa06590, bytes_to_sweep=bytes_to_sweep@entry=64) at src/spaces.cc:2316 #1 0x00000000005ef173 in v8::internal::PagedSpace::SlowAllocateRaw (this=0xa06590, size_in_bytes=64) at src/spaces.cc:2360 #2 0x0000000000495bb3 in v8::internal::PagedSpace::AllocateRaw (size_in_bytes=64, this=0xa06590) at src/spaces-inl.h:284 #3 v8::internal::Heap::AllocateRawMap (this=0x9dbc90, this@entry=0x0) at src/heap-inl.h:271 #4 v8::internal::Heap::AllocatePartialMap (this=this@entry=0x9dbc90, instance_type=instance_type@entry=v8::internal::MAP_TYPE, instance_size=instance_size@entry=64) at src/heap.cc:2064 #5 0x0000000000499ed6 in v8::internal::Heap::CreateInitialMaps (this=this@entry=0x9dbc90) at src/heap.cc:2192 #6 0x00000000004a2dd2 in v8::internal::Heap::SetUp (this=this@entry=0x9dbc90, create_heap_objects=create_heap_objects@entry=true) at src/heap.cc:6233 #7 0x000000000050556e in v8::internal::Isolate::Init (this=0x9dbc80, des=0x0) at src/isolate.cc:1898 #8 0x0000000000607f61 in v8::Locker::Locker (this=0x7fffffffe3f0, isolate=<optimized out>) at src/v8threads.cc:66 #9 0x0000000000687758 in v8::Shell::Initialize () at src/d8.cc:1229 #10 0x000000000068932d in v8::Shell::Main (argc=1, argv=0x7fffffffe578) at src/d8.cc:1845 #11 0x00007ffff6d1d721 in __libc_start_main (main=0x405510 <main(int, char**)>, argc=1, argv=0x7fffffffe578, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe568) at ../csu/libc-start.c:289 #12 0x0000000000405629 in _start () (gdb) p p $1 = (v8::internal::Page *) 0x0 The backtrace using therubyracer is pretty much the same. Thread 1 "ruby-mri" received signal SIGSEGV, Segmentation fault. v8::internal::PagedSpace::AdvanceSweeper (this=this@entry=0x555555c3d540, bytes_to_sweep=bytes_to_sweep@entry=64) at src/spaces.cc:2316 2316 if (ShouldBeSweptLazily(p)) { (gdb) bt #0 v8::internal::PagedSpace::AdvanceSweeper (this=this@entry=0x555555c3d540, bytes_to_sweep=bytes_to_sweep@entry=64) at src/spaces.cc:2316 #1 0x00007ffff5b6d353 in v8::internal::PagedSpace::SlowAllocateRaw (this=0x555555c3d540, size_in_bytes=64) at src/spaces.cc:2360 #2 0x00007ffff5a13803 in v8::internal::PagedSpace::AllocateRaw (size_in_bytes=64, this=0x555555c3d540) at src/spaces-inl.h:284 #3 v8::internal::Heap::AllocateRawMap (this=0x555555ba7360, this@entry=0x0) at src/heap-inl.h:271 #4 v8::internal::Heap::AllocatePartialMap (this=this@entry=0x555555ba7360, instance_type=instance_type@entry=v8::internal::MAP_TYPE, instance_size=instance_size@entry=64) at src/heap.cc:2064 #5 0x00007ffff5a17b26 in v8::internal::Heap::CreateInitialMaps (this=this@entry=0x555555ba7360) at src/heap.cc:2192 #6 0x00007ffff5a20a22 in v8::internal::Heap::SetUp (this=this@entry=0x555555ba7360, create_heap_objects=create_heap_objects@entry=true) at src/heap.cc:6233 #7 0x00007ffff5a831be in v8::internal::Isolate::Init (this=0x555555ba7350, des=0x0) at src/isolate.cc:1898 #8 0x00007ffff5b86141 in v8::Locker::Locker (this=0x7fffffffd180, isolate=<optimized out>) at src/v8threads.cc:66 #9 0x00007ffff5f5b9db in rr::Locker::setupLockAndCall(int*, unsigned long) () from /usr/lib64/gems/ruby/therubyracer-0.11.0/v8/init.so #10 0x00007ffff5f5baa7 in rr::Locker::doLock(int, unsigned long*, unsigned long) () from /usr/lib64/gems/ruby/therubyracer-0.11.0/v8/init.so #11 0x00007ffff7acf150 in vm_call_cfunc () from /lib64/libruby.so.2.3 #12 0x00007ffff7adda23 in vm_call_method_each_type () from /lib64/libruby.so.2.3 #13 0x00007ffff7adea63 in vm_call_general () from /lib64/libruby.so.2.3 #14 0x00007ffff7ad2f17 in vm_exec_core () from /lib64/libruby.so.2.3 #15 0x00007ffff7ad83df in vm_exec () from /lib64/libruby.so.2.3 [...] Created attachment 1164037 [details] Fix SEGSEGV with GCC6 This seems to fix the segfault for me. The patch is based on https://github.com/nodejs/node/issues/6272 Specifically this commit: https://github.com/targos/node/commit/86c9184ef1083a56f3e05839783634b10707f9ca But it needs some header cleanup ... I leave it to anybody else ;) This should be the scratch build, if it succeeds: http://koji.fedoraproject.org/koji/taskinfo?taskID=14351676 Chm, trying to rebuild therubyracer with this version of v8, it core dumps, so this does not solve the problem entirely, although the d8 seems to work ... v8-3.14.5.10-24.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-67dcc8e9dd v8-3.14.5.10-24.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-67dcc8e9dd v8-3.14.5.10-24.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report. |