panic in softdep_slowdown()
Neel Natu
neelnatu at gmail.com
Wed Jan 28 19:54:47 UTC 2015
Hi Gleb,
On Wed, Jan 28, 2015 at 11:33 AM, Gleb Smirnoff <glebius at freebsd.org> wrote:
> On Wed, Jan 28, 2015 at 09:04:42PM +0200, Konstantin Belousov wrote:
> K> > I can't see where integer divide fault can happen with stat_flush_threads=1 :(
> K>
> K> Look at the exact asm instruction which faulted, also look at the registers
> K> content.
> K>
> K> It might be hypervisor bug, after all.
>
> Yes, for me it looks like it. %edx should be one as well as -0x44(%rbp).
>
> 0xffffffff80895d43 <softdep_slowdown+435>: mov -0x20(%rbp),%ecx
> 0xffffffff80895d46 <softdep_slowdown+438>: mov %ecx,%edx
> 0xffffffff80895d48 <softdep_slowdown+440>: shr $0x1f,%edx
> 0xffffffff80895d4b <softdep_slowdown+443>: add %edx,%ecx
> 0xffffffff80895d4d <softdep_slowdown+445>: sar %ecx
> 0xffffffff80895d4f <softdep_slowdown+447>: mov 0xffffffff80ee24c8,%edx
> 0xffffffff80895d56 <softdep_slowdown+454>: mov %rax,-0x40(%rbp)
> 0xffffffff80895d5a <softdep_slowdown+458>: mov %ecx,%eax
> 0xffffffff80895d5c <softdep_slowdown+460>: mov %edx,-0x44(%rbp)
> 0xffffffff80895d5f <softdep_slowdown+463>: cltd
> 0xffffffff80895d60 <softdep_slowdown+464>: mov -0x44(%rbp),%ecx
> 0xffffffff80895d63 <softdep_slowdown+467>: idiv %ecx
>
> (kgdb) p &stat_flush_threads
> $5 = (int *) 0xffffffff80ee24c8
> (kgdb) info registers
> rax 0x12b86 76678
> rbx 0x4 4
> rcx 0x0 0
> rdx 0x0 0
> rsi 0x3e8 1000
> rdi 0x99 153
> rbp 0xfffffe001eb5f2b0 0xfffffe001eb5f2b0
> ...
> (kgdb) p *(int *)($rbp - 0x44)
> $4 = 0
> (kgdb) p *(int *)($rbp - 0x40)
> $8 = 0
> (kgdb) p &max_softdeps_hard
> $11 = (int *) 0xfffffe001eb5f290
> (kgdb) p (int *)($rbp - 0x20)
> $12 = (int *) 0xfffffe001eb5f290
> (kgdb) p max_softdeps_hard
> $10 = 153357
>
Can you upload the core file and the kernel someplace that I can access?
best
Neel
> --
> Totus tuus, Glebius.
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
More information about the freebsd-current
mailing list