Skip to content
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

SIGILL - Intermittent panic in Constellation panics during panic #9387

Closed
connorimes opened this issue Jan 20, 2016 · 11 comments
Closed

SIGILL - Intermittent panic in Constellation panics during panic #9387

connorimes opened this issue Jan 20, 2016 · 11 comments

Comments

@connorimes
Copy link
Contributor

@connorimes connorimes commented Jan 20, 2016

Just trying to open google.com in a release build. This occurs sometimes, resulting in a SIGILL. Running recent git rev 6663f28.

(gdb) r http://www.google.com
Starting program: /local/servo/target/release/servo http://www.google.com
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffeeb43700 (LWP 19592)]
[New Thread 0x7fffee5ff700 (LWP 19593)]
[New Thread 0x7fffee3fe700 (LWP 19594)]
[New Thread 0x7fffed3ff700 (LWP 19595)]
[New Thread 0x7fffecdff700 (LWP 19596)]
[New Thread 0x7fffec7ff700 (LWP 19597)]
[New Thread 0x7fffec5fe700 (LWP 19598)]
[New Thread 0x7fffec3fd700 (LWP 19599)]
[New Thread 0x7fffd7dff700 (LWP 19600)]
[New Thread 0x7fffd7bfe700 (LWP 19601)]
[New Thread 0x7fffd73ff700 (LWP 19602)]
[New Thread 0x7fffd71fe700 (LWP 19603)]
[New Thread 0x7fffd69ff700 (LWP 19604)]
[New Thread 0x7fffd65fe700 (LWP 19605)]
[New Thread 0x7fffd5fff700 (LWP 19606)]
[New Thread 0x7fffd55ff700 (LWP 19607)]
[New Thread 0x7fffd53fe700 (LWP 19608)]
[New Thread 0x7fffd51fd700 (LWP 19609)]
[New Thread 0x7fffd4ffc700 (LWP 19610)]
[New Thread 0x7fffd4dfb700 (LWP 19611)]
[New Thread 0x7fffd4bfa700 (LWP 19612)]
[New Thread 0x7fffd49f9700 (LWP 19613)]
[New Thread 0x7fffd47f8700 (LWP 19614)]
[New Thread 0x7ffff1b73700 (LWP 19615)]
[New Thread 0x7fffd45f7700 (LWP 19616)]
[New Thread 0x7ffff1af0700 (LWP 19617)]
[New Thread 0x7fffd43f6700 (LWP 19618)]
[New Thread 0x7fffee942700 (LWP 19619)]
[New Thread 0x7fffee8c1700 (LWP 19620)]
[New Thread 0x7fffee1fd700 (LWP 19621)]
[New Thread 0x7fffee17c700 (LWP 19622)]
[New Thread 0x7fffee0fb700 (LWP 19623)]
[New Thread 0x7fffed1fe700 (LWP 19624)]
[New Thread 0x7fffcfbff700 (LWP 19625)]
[New Thread 0x7fffcf9fe700 (LWP 19626)]
[New Thread 0x7fffcf7fd700 (LWP 19627)]
[New Thread 0x7fffcf5fc700 (LWP 19628)]
[Thread 0x7fffcf5fc700 (LWP 19628) exited]
[New Thread 0x7fffcf5fc700 (LWP 19629)]
[New Thread 0x7fffcd5ff700 (LWP 19630)]
[New Thread 0x7fffcd3fe700 (LWP 19631)]
[New Thread 0x7fffcd1fd700 (LWP 19632)]
[Thread 0x7fffcd1fd700 (LWP 19632) exited]
[Thread 0x7fffcf5fc700 (LWP 19629) exited]
[Thread 0x7fffcd5ff700 (LWP 19630) exited]
[Thread 0x7fffcd3fe700 (LWP 19631) exited]
[New Thread 0x7fffcd3fe700 (LWP 19633)]
[Thread 0x7fffcd3fe700 (LWP 19633) exited]
[New Thread 0x7fffcd3fe700 (LWP 19634)]
[New Thread 0x7fffcd5ff700 (LWP 19635)]
[Thread 0x7fffcd3fe700 (LWP 19634) exited]
[New Thread 0x7fffcd3fe700 (LWP 19636)]
[Thread 0x7fffcd5ff700 (LWP 19635) exited]
[Thread 0x7fffcd3fe700 (LWP 19636) exited]
[New Thread 0x7fffcd3fe700 (LWP 19637)]
[New Thread 0x7fffcd5ff700 (LWP 19638)]
[New Thread 0x7fffcf5fc700 (LWP 19639)]
[New Thread 0x7fffcd1fd700 (LWP 19640)]
[Thread 0x7fffcd3fe700 (LWP 19637) exited]
[Thread 0x7fffcf5fc700 (LWP 19639) exited]
[Thread 0x7fffcd5ff700 (LWP 19638) exited]
[Thread 0x7fffcd1fd700 (LWP 19640) exited]
[New Thread 0x7fffcd5ff700 (LWP 19641)]
[Thread 0x7fffcd5ff700 (LWP 19641) exited]
[New Thread 0x7fffcd5ff700 (LWP 19642)]
[Thread 0x7fffcd5ff700 (LWP 19642) exited]
[New Thread 0x7fffcd5ff700 (LWP 19643)]
[New Thread 0x7fffcd1fd700 (LWP 19644)]
[Thread 0x7fffcd5ff700 (LWP 19643) exited]
[New Thread 0x7fffcd5ff700 (LWP 19645)]
[New Thread 0x7fffcf5fc700 (LWP 19646)]
[New Thread 0x7fffcd3fe700 (LWP 19647)]
[New Thread 0x7fffc63ff700 (LWP 19648)]
[New Thread 0x7fffc61fe700 (LWP 19649)]
[New Thread 0x7fffc5ffd700 (LWP 19650)]
[New Thread 0x7fffc5dfc700 (LWP 19651)]
[New Thread 0x7fffc5bfb700 (LWP 19652)]
[New Thread 0x7fffc59fa700 (LWP 19653)]
[New Thread 0x7fffc57f9700 (LWP 19654)]
[New Thread 0x7fffc55f8700 (LWP 19655)]
[New Thread 0x7fffc53f7700 (LWP 19656)]
[New Thread 0x7fffc51f6700 (LWP 19657)]
[New Thread 0x7fffc4ff5700 (LWP 19658)]
[Thread 0x7fffc57f9700 (LWP 19654) exited]
[Thread 0x7fffc55f8700 (LWP 19655) exited]
[Thread 0x7fffc59fa700 (LWP 19653) exited]
[Thread 0x7fffc5dfc700 (LWP 19651) exited]
[Thread 0x7fffc5bfb700 (LWP 19652) exited]
[Thread 0x7fffc53f7700 (LWP 19656) exited]
[Thread 0x7fffc4ff5700 (LWP 19658) exited]
[Thread 0x7fffc51f6700 (LWP 19657) exited]
[Thread 0x7fffcd3fe700 (LWP 19647) exited]
[Thread 0x7fffcf5fc700 (LWP 19646) exited]
[New Thread 0x7fffc51f6700 (LWP 19659)]
[New Thread 0x7fffcd3fe700 (LWP 19660)]
[New Thread 0x7fffcf5fc700 (LWP 19661)]
[New Thread 0x7fffc4ff5700 (LWP 19662)]
[New Thread 0x7fffc53f7700 (LWP 19663)]
[Thread 0x7fffc5ffd700 (LWP 19650) exited]
[Thread 0x7fffc61fe700 (LWP 19649) exited]
[New Thread 0x7fffc5ffd700 (LWP 19664)]
[New Thread 0x7fffc61fe700 (LWP 19665)]
[New Thread 0x7fffc5bfb700 (LWP 19666)]
thread 'Constellation' panicked at 'unable to find pipeline - this is a bug', ../src/libcore/option.rs:298
[New Thread 0x7fffc5dfc700 (LWP 19667)]
[Thread 0x7fffd65fe700 (LWP 19605) exited]
[Thread 0x7fffd7dff700 (LWP 19600) exited]
[New Thread 0x7fffd7dff700 (LWP 19668)]
thread 'LayoutThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(1) }' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rs:688
thread 'thread 'LayoutWorker worker 1/3' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rsLayoutWorker worker 2/3' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rs:688
:688
[Thread 0x7fffc5dfc700 (LWP 19667) exited]
[Thread 0x7fffc5ffd700 (LWP 19664) exited]
thread '[Thread 0x7fffc5bfb700 (LWP 19666) exited]
LayoutWorker worker 3/3' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rs:688
[Thread 0x7fffc61fe700 (LWP 19665) exited]
[Thread 0x7fffd7dff700 (LWP 19668) exited]
[Thread 0x7fffcd5ff700 (LWP 19645) exited]
[New Thread 0x7fffcd5ff700 (LWP 19669)]
[New Thread 0x7fffd7dff700 (LWP 19670)]
[New Thread 0x7fffc61fe700 (LWP 19671)]
thread 'ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(1) }' panicked at 'called `Result::unwrap()` on an `Err` value: "SendError(..)"', ../src/libcore/result.rs:688
thread 'PaintThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(1) }' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rs:688
thread 'PaintWorker' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rs:688
[Thread 0x7fffcd5ff700 (LWP 19669) exited]
[Thread 0x7fffcf5fc700 (LWP 19661) exited]
thread 'PaintWorker' panicked at 'called `Result::unwrap()` on an `Err` value: RecvErrorthread 'PaintWorker', ../src/libcore/result.rs:' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError688
', ../src/libcore/result.rs:688
[Thread 0x7fffc61fe700 (LWP 19671) exited]
[Thread 0x7fffd7dff700 (LWP 19670) exited]
[Thread 0x7fffc4ff5700 (LWP 19662) exited]
[Thread 0x7fffc53f7700 (LWP 19663) exited]
[Thread 0x7fffcd3fe700 (LWP 19660) exited]
[Thread 0x7fffc51f6700 (LWP 19659) exited]
ERROR:js::rust: Error at https://apis.google.com/_/scs/abc-static/_/js/k=gapi.gapi.en.031mdWrIyGE.O/m=gapi_iframes,googleapis_client,plusone/rt=j/sv=1/d=1/ed=1/am=AAQ/rs=AHpOoo9LVH8q4HIB6ymfgTF00d12dbkTeA/cb=gapi.loaded_0:202:157: ua.kc is not a function

[Thread 0x7fffcd1fd700 (LWP 19644) exited]
[New Thread 0x7fffcd1fd700 (LWP 19672)]
thread '' panicked at 'called `Result::unwrap()` on an `Err` value: "SendError(..)"', ../src/libcore/result.rs:688
thread '' panicked at 'You should have disposed of the pixmap properly with destroy()! This pixmap will leak!', /local/servo/.cargo/git/checkouts/rust-layers-c02709c0157e02cd/master/src/platform/linux/surface.rs:166
stack backtrace:
thread 'LayoutThread PipelineId { namespace_id: PipelineNamespaceId(0), index: PipelineIndex(0) }' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rs:688
   1:     0x5555570e23a0 - sys::backtrace::tracing::imp::write::hd273f86d5325347aweu
   2:     thread 'thread 'LayoutWorker worker 2/3' panicked at 'called `Result::unwrap()` on an `Err` value: RecvErrorPaintThread PipelineId { namespace_id: PipelineNamespaceId(0), index: PipelineIndex(0) }', ../src/libcore/result.rs' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError:688
', ../src/libcore/result.rs:688
0x5555570e52c5 - panicking::default_handler::_::closure.42335
   3thread ':     0x5555570e4d6fthread ' - panickingPaintWorker::default_handler' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError::h907ce0af740f5f06spy', ../src/libcore/result.rs
PaintWorker:' panicked at '   688
4: called `Result::unwrap()` on an `Err` value: RecvError',     0x5555570cdda6 - sys_common::unwind::begin_unwind_inner::ha417239bcab1f2ff56s
../src/libcore/result.rs:688   
5:     0x55555671d0df - sys_common::unwind::begin_unwind::h7033116123858859857
thread 'LayoutWorker worker 1/3[Thread 0x7fffd4bfa700 (LWP 19612) exited]
' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', thread 'PaintWorker' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', ../src/libcore/result.rs:688
   6:     0x55555671d1e0 - platform::linux::surface::PixmapNativeSurface.Drop::drop::he5fff98ae99886a4Xac
   7:     0x5555557e6f17 - [Thread 0x7fffcf7fd700 (LWP 19627) exited]
[Thread 0x7fffd49f9700 (LWP 19613) exited]
../src/libcore/result.rsalloc..rc..Rc>::thread 'drop.29162::h8242a9cdd38857f9LayoutWorker worker 3/3' panicked at '
called `Result::unwrap()` on an `Err` value: RecvError', [Thread 0x7fffd55ff700 (LWP 19607) exited]
../src/libcore/result.rs::688
   8:     0x5555557e7065 - collections..vec..Vec>>::drop.29174::h378b2d39a09d8a22
   9:     0x5555557e6df4 - alloc..rc..Rc>::drop.29162::h8242a9cdd38857f9
  10:     0x5555557e8f31 - compositing..compositor..IOCompositor::drop.29555::h325fc04153978866
  688
11:     0x5555557d81ff - main::h8517eb49d15e90fbNaa
  12:     0x5555570e49f4 - sys_common::unwind::try::try_fn::h10561634035122728855
  13:     0x5555570e1848 - __rust_try
  [New Thread 0x7fffcf9fe700 (LWP 19673)]
14:     0x5555570e4696 - rt::lang_start::[Thread 0x7fffcf9fe700 (LWP 19626) exited]
h632953abeabb8774Why
[Thread 0x7fffcfbff700 (LWP 19625) exited]
  15[Thread 0x7fffd53fe700 (LWP 19608) exited]
:     0x7ffff58b6a3f - __libc_start_main
  16:     0x5555557cba58 - _start
  17:                0x0 - 
thread panicked while panicking. aborting.[Thread 0x7fffcd1fd700 (LWP 19672) exited]

Program received signal SIGILL, Illegal instruction.
0x00005555570cde0b in sys_common::unwind::begin_unwind_inner::ha417239bcab1f2ff56s ()
(gdb) bt
#0  0x00005555570cde0b in sys_common::unwind::begin_unwind_inner::ha417239bcab1f2ff56s ()
#1  0x000055555671d0e0 in sys_common::unwind::begin_unwind::h7033116123858859857 ()
#2  0x000055555671d1e1 in platform::linux::surface::PixmapNativeSurface.Drop::drop::he5fff98ae99886a4Xac ()
#3  0x00005555557e6f18 in alloc..rc..Rc$LT$layers..layers..Layer$LT$compositing..compositor_layer..CompositorData$GT$$GT$::drop.29162::h8242a9cdd38857f9 ()
#4  0x00005555557e7066 in collections..vec..Vec$LT$alloc..rc..Rc$LT$layers..layers..Layer$LT$compositing..compositor_layer..CompositorData$GT$$GT$$GT$::drop.29174::h378b2d39a09d8a22
    ()
#5  0x00005555557e6df5 in alloc..rc..Rc$LT$layers..layers..Layer$LT$compositing..compositor_layer..CompositorData$GT$$GT$::drop.29162::h8242a9cdd38857f9 ()
#6  0x00005555557e8f32 in compositing..compositor..IOCompositor$LT$app..window..Window$GT$::drop.29555::h325fc04153978866 ()
#7  0x00005555557d8200 in main::h8517eb49d15e90fbNaa ()
#8  0x00005555570e49f5 in sys_common::unwind::try::try_fn::h10561634035122728855 ()
#9  0x00005555570e1849 in __rust_try ()
#10 0x00005555570e4697 in rt::lang_start::h632953abeabb8774Why ()
#11 0x00007ffff58b6a40 in __libc_start_main (main=0x55555581d1e0 , argc=2, 
    argv=0x7fffffffdde8, init=, fini=, 
    rtld_fini=, stack_end=0x7fffffffddd8) at libc-start.c:289
#12 0x00005555557cba59 in _start ()
@jdm
Copy link
Member

@jdm jdm commented Jan 20, 2016

thread 'Constellation' panicked at 'unable to find pipeline - this is a bug', ../src/libcore/option.rs:298
That's the one that kicks everything off.

@jdm jdm added the A-constellation label Jan 20, 2016
@jdm
Copy link
Member

@jdm jdm commented Jan 20, 2016

Breaking on rust_panic and getting the backtrace would help identify the cause.

@connorimes
Copy link
Contributor Author

@connorimes connorimes commented Jan 20, 2016

Breakpoint 1, 0x00005555570e1870 in rust_panic ()
(gdb) bt
#0  0x00005555570e1870 in rust_panic ()
#1  0x00005555570cde43 in sys_common::unwind::begin_unwind_inner::ha417239bcab1f2ff56s ()
#2  0x00005555570ce509 in sys_common::unwind::begin_unwind_fmt::hac4637ed0b5bb49eb6s ()
#3  0x00005555570e1a02 in rust_begin_unwind ()
#4  0x00005555571189b0 in panicking::panic_fmt::he5f9c513e9167673LnK ()
#5  0x0000555555864dde in constellation::Constellation$LT$LTF$C$$u20$STF$GT$::handle_request::h10381945729533759561 ()
#6  0x0000555555850cd8 in export::compositing::constellation::Constellation$LT$LTF$C$$u20$STF$GT$::start::_$LT$closure$GT$::closure.22652 ()
#7  0x0000555555850534 in sys_common::unwind::try::try_fn::h10298002884072947541 ()
#8  0x00005555570e1849 in __rust_try ()
#9  0x00005555570ddb1c in sys_common::unwind::try::inner_try::h62f00e3d34dbb509D3s ()
#10 0x000055555585251b in boxed::F.FnBox$LT$A$GT$::call_box::h14260957826631584709 ()
#11 0x00005555570e3b34 in sys::thread::Thread::new::thread_start::hb3a0514b9d87669e1mx ()
#12 0x00007ffff5e7e6aa in start_thread (arg=0x7fffd75fe700) at pthread_create.c:333
#13 0x00007ffff599ceed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
@jdm
Copy link
Member

@jdm jdm commented Jan 20, 2016

Huh. Is this a release build? I'm surprised there are no line numbers, otherwise.

@connorimes
Copy link
Contributor Author

@connorimes connorimes commented Jan 20, 2016

Yes, this is a release build. My intent was to collect profiling data. I've not been able to reproduce this in debug after about 20 attempts. Debug is so slow that perhaps there is a timing/race issue that is only appearing in release builds.

@larsbergstrom
Copy link
Contributor

@larsbergstrom larsbergstrom commented Jan 20, 2016

I think that if you uncomment https://github.com/servo/servo/blob/master/components/servo/Cargo.toml#L58-L62, you should get line numbers on release, too.

We don't have it on by default because debug info in rust release builds via LLVM has been an ICE-factory, though it might be better now...

@connorimes
Copy link
Contributor Author

@connorimes connorimes commented Jan 20, 2016

thread 'Constellation' panicked at 'unable to find pipeline - this is a bug', ../src/libcore/option.rs:298
[Switching to Thread 0x7fffd77ff700 (LWP 31788)]
Breakpoint 1, 0x00005555571001d0 in rust_panic ()
(gdb) bt
#0  0x00005555571001d0 in rust_panic ()
#1  0x00005555570ec7a3 in sys_common::unwind::begin_unwind_inner::ha417239bcab1f2ff56s ()
#2  0x00005555570ece69 in sys_common::unwind::begin_unwind_fmt::hac4637ed0b5bb49eb6s ()
#3  0x0000555557100362 in rust_begin_unwind ()
#4  0x0000555557137310 in panicking::panic_fmt::he5f9c513e9167673LnK ()
#5  0x0000555555866eb0 in servo::option::Option::expect (self=..., msg=...)
    at ../src/libcore/macros.rs:29
#6  servo::constellation::Constellation::mut_pipeline (self=, 
    pipeline_id=...) at /local/servo/components/compositing/constellation.rs:1652
#7  servo::constellation::Constellation::handle_request (self=)
    at /local/servo/components/compositing/constellation.rs:626
#8  0x0000555555852da8 in servo::constellation::Constellation::run (
    self=) at /local/servo/components/compositing/constellation.rs:356
#9  fnfn () at /local/servo/components/compositing/constellation.rs:349
#10 0x000055555585257c in fnfn () at ../src/libstd/thread/mod.rs:277
#11 servo::sys_common::unwind::try::try_fn (opt_closure=)
    at ../src/libstd/sys/common/unwind/mod.rs:153
#12 0x00005555571001a9 in __rust_try ()
#13 0x00005555570fc47c in sys_common::unwind::try::inner_try::h62f00e3d34dbb509D3s ()
#14 0x00005555558545ff in servo::sys_common::unwind::try (f=...)
    at ../src/libstd/sys/common/unwind/mod.rs:123
#15 fnfn () at ../src/libstd/thread/mod.rs:277
#16 servo::boxed::F.FnBox::call_box (self=0x7ffff1691280, args=)
    at ../src/liballoc/boxed.rs:541
#17 0x0000555557102494 in sys::thread::Thread::new::thread_start::hb3a0514b9d87669e1mx ()
#18 0x00007ffff5e7e6aa in start_thread (arg=0x7fffd77ff700) at pthread_create.c:333
#19 0x00007ffff599ceed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
@jdm
Copy link
Member

@jdm jdm commented Jan 20, 2016

Interesting, that's the SetFinalUrl message from script. That should handle a missing pipeline gracefully, since it could be an iframe that was removed or something.

@connorimes
Copy link
Contributor Author

@connorimes connorimes commented Jan 20, 2016

Are you able to reproduce the problem? I was just loading http://www.google.com (sometimes it took a handful of tries before it failed).

@jdm
Copy link
Member

@jdm jdm commented Jan 20, 2016

I haven't tried.

@nox
Copy link
Member

@nox nox commented Sep 30, 2017

Closing for inactivity. @asajeffrey fixed a lot of double panics in this area.

@nox nox closed this Sep 30, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.