Date: Sat, 30 Jul 2011 13:15:12 -0700 From: maestro something <maestro82@gmail.com> To: Kostik Belousov <kostikbel@gmail.com> Cc: freebsd-stable@freebsd.org, Andriy Gapon <avg@freebsd.org> Subject: Re: dtrace ustack kernel panic Message-ID: <CAJ_JOqtofEjt-jiZBiLKW--fY0sdiHvF36baS3Qxc8ubmQMazg@mail.gmail.com> In-Reply-To: <20110730192646.GC17489@deviant.kiev.zoral.com.ua> References: <CAJ_JOqvEmXBTBABhUcJ66=bh9%2B8S%2BC9v30hXxVZiCXuEpGPJ1A@mail.gmail.com> <4E2E9F60.1060808@FreeBSD.org> <CAJ_JOqszViwLi6TeQxAxeX2Mte5eBPsGJpjQPVOQs2BOwAq9JQ@mail.gmail.com> <4E33B7CF.90200@FreeBSD.org> <CAJ_JOqt4VdgJm3NnB1KUf1RFuk75nu6-Rh=Bqb53h5TAEzB0%2BA@mail.gmail.com> <4E344D15.1040508@FreeBSD.org> <CAJ_JOqvCDE1Zcv4jz14rtZu5_NmqfY04tz91uy76WnaW2trO7Q@mail.gmail.com> <CAJ_JOqu2SR2n1Cm__3x3rfcJpYY=ihnoE9oyuKeNmKGuUGgnGA@mail.gmail.com> <20110730192646.GC17489@deviant.kiev.zoral.com.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, This is i386, right ? > I think the cause is that assembler routine panic_trigger does not > establish the standard i386 frame. Basically, you need either this, > or dwarf annotations, for gdb to be able to walk over the frame. > > You need to add the standard prologue > pushl %ebp > movl %esp,%ebp > and standard epilogue > leave > to the function. No idea whether it will continue to operate correctly > after. > my panic_trigger looks like this now: /* int panic_trigger(int *tp) */ ENTRY(panic_trigger) pushl %ebp movl %esp,%ebp xorl %eax, %eax movl $0xdefacedd, %edx lock xchgl %edx, (%edi) cmpl $0, %edx je 0f movl $0, %eax leave ret 0: movl $1, %eax leave ret END(panic_trigger) same result, (actually too same as the address in the stack trace is still the same, is that possible?) cheers --m
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ_JOqtofEjt-jiZBiLKW--fY0sdiHvF36baS3Qxc8ubmQMazg>