Created
January 5, 2014 17:41
-
-
Save larsbergstrom/8271341 to your computer and use it in GitHub Desktop.
selector matching crash in atomics code
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(gdb) bt | |
#0 0x0000000000410456 in sync::atomics::atomic_sub::h815d09af8c559e22a2::v0.0 () | |
#1 0x000000000041035e in sync::atomics::AtomicUint::fetch_sub::h9ec7ccbfe1db76b1nGaW::v0.0 () | |
#2 0x0000000000412e76 in sync::arc::Drop$UnsafeArc::drop::h082fb8804938a44egta7::v0.0 () | |
#3 0x0000000000412e09 in std..sync..arc..UnsafeArc$LT$$UP$$x5bstyle..properties..PropertyDeclaration$x5d$GT$::glue_drop::hf9d899205dbbef9aa6 () | |
#4 0x0000000000412dc3 in extra..arc..Arc$LT$$UP$$x5bstyle..properties..PropertyDeclaration$x5d$GT$::glue_drop::h154d2a9dbe41f7eea2 () | |
#5 0x00000000004a972d in unboxed_vec$LT$extra..arc..Arc$LT$$UP$$x5bstyle..properties..PropertyDeclaration$x5d$GT$$GT$::glue_drop::h2541e0c90524adf7aK () | |
#6 0x00000000004a96aa in _$UP$$x5bextra..arc..Arc$LT$$UP$$x5bstyle..properties..PropertyDeclaration$x5d$GT$$x5d::glue_free::h31e00a2d7c7106d6aG () | |
#7 0x00000000004a9643 in _$UP$$x5bextra..arc..Arc$LT$$UP$$x5bstyle..properties..PropertyDeclaration$x5d$GT$$x5d::glue_drop::h31e00a2d7c7106d6aF () at /home/larsberg/servo-jack/src/components/main/layout/wrapper.rs:267 | |
#8 0x00000000004a917b in servo::css::matching::MatchMethods$LayoutNode::match_node (self=0x7f056021cbd8, | |
stylist=0x7f05686a5b48) at /home/larsberg/servo-jack/src/components/main/css/matching.rs:39 | |
#9 0x00000000004cdedb in fn17768 (stylist=0x7f05686a5b48) | |
at /home/larsberg/servo-jack/src/components/main/css/matching.rs:81 | |
#10 0x00000000004cdcbd in arc::RWArc::read::anon::expr_fn::oaaAaD () | |
at /home/larsberg/servo-jack/src/components/main/css/matching.rs:75 | |
#11 0x00000000004cd852 in sync::RWLock::read::anon::expr_fn::qnaEaq () | |
at /home/larsberg/servo-jack/src/components/main/css/matching.rs:75 | |
#12 0x00000000004c03cc in unstable::finally::Finally$$CLOSURE$::finally::h68c0ef0b98421709FpaB::v0.0 () | |
at /home/larsberg/servo-jack/src/components/main/css/matching.rs:47 | |
#13 0x00000000004cc616 in sync::RWLock::read::h482ba1d7b081b150qnaE::v0.0 () | |
at /home/larsberg/servo-jack/src/components/main/css/matching.rs:75 | |
#14 0x00000000004cc3d3 in arc::RWArc::read::h733101513ada6f4eoaaA::v0.0 () | |
at /home/larsberg/servo-jack/src/components/main/css/matching.rs:75 | |
#15 0x00000000004c4727 in fn17693 () at /home/larsberg/servo-jack/src/components/main/css/matching.rs:75 | |
#16 0x00007f05798751b8 in task::__extensions__::build_start_wrapper::anon::anon::expr_fn::a1 () | |
from /home/larsberg/servo-jack/build/x86_64-unknown-linux-gnu/src/compiler/rust/x86_64-unknown-linux-gnu/stage2/lib/rustc/x86_64-unknown-linux-gnu/lib/libgreen-83b1c0e5-0.9.so | |
#17 0x00007f0579bbb3f8 in rt::task::__extensions__::run::anon::expr_fn::av () | |
from /home/larsberg/servo-jack/build/x86_64-unknown-linux-gnu/src/compiler/rust/x86_64-unknown-linux-gnu/stage2/lib/rustc/x86_64-unknown-linux-gnu/lib/libstd-3e5aeb83-0.9.so | |
#18 0x00007f0579bc294c in rust_try () | |
from /home/larsberg/servo-jack/build/x86_64-unknown-linux-gnu/src/compiler/rust/x86_64-unknown-linux-gnu/stage2/lib/rustc/x86_64-unknown-linux-gnu/lib/libstd-3e5aeb83-0.9.so | |
#19 0x00007f0579bbb19d in rt::task::Task::run::hf7663b6e52130dcb3aar::v0.9 () | |
from /home/larsberg/servo-jack/build/x86_64-unknown-linux-gnu/src/compiler/rust/x86_64-unknown-linux-gnu/stage2/lib/rustc/x86_64-unknown-linux-gnu/lib/libstd-3e5aeb83-0.9.so | |
#20 0x00007f0579874bdc in task::__extensions__::build_start_wrapper::anon::expr_fn::aK () | |
from /home/larsberg/servo-jack/build/x86_64-unknown-linux-gnu/src/compiler/rust/x86_64-unknown-linux-gnu/stage2/lib/rustc/x86_64-unknown-linux-gnu/lib/libgreen-83b1c0e5-0.9.so | |
#21 0x0000000000000000 in ?? () | |
(gdb) disas 0x410456 | |
Dump of assembler code for function _ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E: | |
0x0000000000410370 <+0>: cmp %fs:0x70,%rsp | |
0x0000000000410379 <+9>: ja 0x410395 <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+37> | |
0x000000000041037b <+11>: movabs $0x48,%r10 | |
0x0000000000410385 <+21>: movabs $0x0,%r11 | |
0x000000000041038f <+31>: callq 0x5f7878 <__morestack> | |
0x0000000000410394 <+36>: retq | |
0x0000000000410395 <+37>: push %rbp | |
0x0000000000410396 <+38>: mov %rsp,%rbp | |
0x0000000000410399 <+41>: sub $0x40,%rsp | |
0x000000000041039d <+45>: mov %cl,%al | |
0x000000000041039f <+47>: mov %rsi,-0x8(%rbp) | |
0x00000000004103a3 <+51>: mov %rdx,-0x10(%rbp) | |
0x00000000004103a7 <+55>: mov %al,-0x11(%rbp) | |
0x00000000004103aa <+58>: mov -0x8(%rbp),%rsi | |
0x00000000004103ae <+62>: callq 0x410490 <_ZN4cast9transmute19hd02bef5c9e773cf0a34v0.0E> | |
0x00000000004103b3 <+67>: mov %rax,-0x20(%rbp) | |
0x00000000004103b7 <+71>: mov -0x10(%rbp),%rsi | |
0x00000000004103bb <+75>: callq 0x4104d0 <_ZN4cast9transmute19h25764bef9b802235a54v0.0E> | |
0x00000000004103c0 <+80>: mov %rax,-0x28(%rbp) | |
0x00000000004103c4 <+84>: movzbl -0x11(%rbp),%ecx | |
0x00000000004103c8 <+88>: mov %ecx,%eax | |
0x00000000004103ca <+90>: mov %rax,%rdx | |
0x00000000004103cd <+93>: sub $0x3,%rdx | |
0x00000000004103d1 <+97>: mov %rax,-0x38(%rbp) | |
0x00000000004103d5 <+101>: mov %rdx,-0x40(%rbp) | |
0x00000000004103d9 <+105>: ja 0x410461 <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+241> | |
0x00000000004103df <+111>: lea 0x96(%rip),%rax # 0x41047c | |
0x00000000004103e6 <+118>: mov -0x38(%rbp),%rcx | |
0x00000000004103ea <+122>: movslq (%rax,%rcx,4),%rdx | |
0x00000000004103ee <+126>: add %rax,%rdx | |
0x00000000004103f1 <+129>: jmpq *%rdx | |
0x00000000004103f3 <+131>: mov -0x20(%rbp),%rax | |
0x00000000004103f7 <+135>: mov -0x28(%rbp),%rcx | |
0x00000000004103fb <+139>: neg %rcx | |
0x00000000004103fe <+142>: lock xadd %rcx,(%rax) | |
0x0000000000410403 <+147>: mov %rcx,-0x30(%rbp) | |
0x0000000000410407 <+151>: jmp 0x41046b <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+251> | |
0x0000000000410409 <+153>: mov -0x20(%rbp),%rax | |
0x000000000041040d <+157>: mov -0x28(%rbp),%rcx | |
0x0000000000410411 <+161>: neg %rcx | |
0x0000000000410414 <+164>: lock xadd %rcx,(%rax) | |
0x0000000000410419 <+169>: mov %rcx,-0x30(%rbp) | |
0x000000000041041d <+173>: jmp 0x41046b <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+251> | |
0x000000000041041f <+175>: mov -0x20(%rbp),%rax | |
0x0000000000410423 <+179>: mov -0x28(%rbp),%rcx | |
0x0000000000410427 <+183>: neg %rcx | |
0x000000000041042a <+186>: lock xadd %rcx,(%rax) | |
0x000000000041042f <+191>: mov %rcx,-0x30(%rbp) | |
0x0000000000410433 <+195>: jmp 0x41046b <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+251> | |
0x0000000000410435 <+197>: mov -0x20(%rbp),%rax | |
0x0000000000410439 <+201>: mov -0x28(%rbp),%rcx | |
0x000000000041043d <+205>: neg %rcx | |
0x0000000000410440 <+208>: lock xadd %rcx,(%rax) | |
0x0000000000410445 <+213>: mov %rcx,-0x30(%rbp) | |
---Type <return> to continue, or q <return> to quit--- | |
0x0000000000410449 <+217>: jmp 0x41046b <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+251> | |
0x000000000041044b <+219>: mov -0x20(%rbp),%rax | |
0x000000000041044f <+223>: mov -0x28(%rbp),%rcx | |
0x0000000000410453 <+227>: neg %rcx | |
=> 0x0000000000410456 <+230>: lock xadd %rcx,(%rax) | |
0x000000000041045b <+235>: mov %rcx,-0x30(%rbp) | |
0x000000000041045f <+239>: jmp 0x41046b <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+251> | |
0x0000000000410461 <+241>: jmp 0x41044b <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+219> | |
0x0000000000410463 <+243>: jmp 0x4103f3 <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+131> | |
0x0000000000410465 <+245>: jmp 0x410409 <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+153> | |
0x0000000000410467 <+247>: jmp 0x41041f <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+175> | |
0x0000000000410469 <+249>: jmp 0x410435 <_ZN4sync7atomics10atomic_sub19h815d09af8c559e22a24v0.0E+197> | |
0x000000000041046b <+251>: mov -0x30(%rbp),%rsi | |
0x000000000041046f <+255>: callq 0x40e2c0 <_ZN4cast9transmute19hc2d10f03efbd0d69aA4v0.0E> | |
0x0000000000410474 <+260>: add $0x40,%rsp | |
0x0000000000410478 <+264>: pop %rbp | |
0x0000000000410479 <+265>: retq | |
End of assembler dump. | |
(gdb) info registers | |
rax 0x7f05749b4b91 139661407898513 | |
rbx 0x7f056000e9f0 139661062236656 | |
rcx 0xffffffffffffffff -1 | |
rdx 0x1 1 | |
rsi 0x1 1 | |
rdi 0x1 1 | |
rbp 0x7f056021c8e0 0x7f056021c8e0 | |
rsp 0x7f056021c8a0 0x7f056021c8a0 | |
r8 0x0 0 | |
r9 0x101010101010101 72340172838076673 | |
r10 0x4 4 | |
r11 0x7f0573e748b2 139661396101298 | |
r12 0x7f056868dda0 139661203266976 | |
r13 0x7f056001d1a0 139661062295968 | |
r14 0x7f056021d088 139661064392840 | |
r15 0x7f056868dd78 139661203266936 | |
rip 0x410456 0x410456 <sync::atomics::atomic_sub::h815d09af8c559e22a2::v0.0+230> | |
eflags 0x10297 [ CF PF AF SF IF RF ] | |
cs 0x33 51 | |
ss 0x2b 43 | |
ds 0x0 0 | |
es 0x0 0 | |
fs 0x0 0 | |
gs 0x0 0 | |
(gdb) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
(gdb) print /x 0x7f05749b4b91
$1 = 0x7f05749b4b91
(gdb) print /x *0x7f05749b4b91
$2 = 0x8ab74588
(gdb)