Summary: | [dtrace] panic: fatal double fault in fbt/nfs | ||
---|---|---|---|
Product: | Base System | Reporter: | Enji Cooper <ngie> |
Component: | kern | Assignee: | Mark Johnston <markj> |
Status: | Closed Not A Bug | ||
Severity: | Affects Some People | CC: | markj, rmacklem |
Priority: | --- | ||
Version: | CURRENT | ||
Hardware: | Any | ||
OS: | Any |
Description
Enji Cooper
![]() ![]() Could you provide the core file? Which test was running when the crash occurred? (For context, ngie provided me with the core file offline.) This appears to have been caused by a stack overflow. There's something strange about the way your kernel was compiled. In particular, stack frames are using way more space than they should be. For instance, we have: (kgdb) disas dtrace_disx86 Dump of assembler code for function dtrace_disx86: 0xffffffff822621a0 <dtrace_disx86+0>: push %rbp 0xffffffff822621a1 <dtrace_disx86+1>: mov %rsp,%rbp 0xffffffff822621a4 <dtrace_disx86+4>: push %rbx 0xffffffff822621a5 <dtrace_disx86+5>: sub $0x1318,%rsp <--- over 4KB! 0xffffffff822621ac <dtrace_disx86+12>: mov %rdi,-0x18(%rbp) 0xffffffff822621b0 <dtrace_disx86+16>: mov %esi,-0x1c(%rbp) 0xffffffff822621b3 <dtrace_disx86+19>: movl $0x0,-0x2c(%rbp) 0xffffffff822621ba <dtrace_disx86+26>: movl $0x0,-0x44(%rbp) 0xffffffff822621c1 <dtrace_disx86+33>: movl $0x1,-0x6c(%rbp) For comparison, I have: (kgdb) disas dtrace_disx86 Dump of assembler code for function dtrace_disx86: 0xffffffff81504930 <dtrace_disx86+0>: push %rbp 0xffffffff81504931 <dtrace_disx86+1>: mov %rsp,%rbp 0xffffffff81504934 <dtrace_disx86+4>: push %r15 0xffffffff81504936 <dtrace_disx86+6>: push %r14 0xffffffff81504938 <dtrace_disx86+8>: push %r13 0xffffffff8150493a <dtrace_disx86+10>: push %r12 0xffffffff8150493c <dtrace_disx86+12>: push %rbx 0xffffffff8150493d <dtrace_disx86+13>: sub $0x88,%rsp <--- more reasonable 0xffffffff81504944 <dtrace_disx86+20>: mov %esi,%r15d 0xffffffff81504947 <dtrace_disx86+23>: mov %rdi,%rax 0xffffffff8150494a <dtrace_disx86+26>: movl $0x0,-0x2c(%rbp) 0xffffffff81504951 <dtrace_disx86+33>: movl $0x0,-0x30(%rbp) Both kernels were compiled with clang 3.7.0. Make sure you don't have any local changes or settings that might be causing this. This is the result of a problem with the build environment that produced the kernel, not the kernel itself. |