Hi,
I am running a kernel (Suse Enterprise 9 with SP3) and it is hanging
somewhere in the kernel. By hooking up HDT from AMD, I got a the
assembly dump of the routine which causes the infinite loop. How
should I map the addresses dumped by HDT in the format SEG:Offset
(e.g,
0033:00000000_00400C18 mov esi,[loc_0000000000501a64h]
0033:00000000_00400C1E test esi,esi
0033:00000000_00400C20 jz loc_0000000000400c30h
...etc)
to kernel virtual address space?
Regards,
Om.
On 9/5/06, Om Narasimhan <[email protected]> wrote:
> Hi,
> I am running a kernel (Suse Enterprise 9 with SP3) and it is hanging
> somewhere in the kernel. By hooking up HDT from AMD, I got a the
> assembly dump of the routine which causes the infinite loop. How
> should I map the addresses dumped by HDT in the format SEG:Offset
> (e.g,
> 0033:00000000_00400C18 mov esi,[loc_0000000000501a64h]
> 0033:00000000_00400C1E test esi,esi
> 0033:00000000_00400C20 jz loc_0000000000400c30h
> ...etc)
> to kernel virtual address space?
I don't know about your HDT (never used one) but have you already
tried the regular debug paths (nmi watchdog/sysrq/crashdump/kdb) that
SLES9 has?
Thanks,
Keith
On 9/5/06, Keith Mannthey <[email protected]> wrote:
> On 9/5/06, Om Narasimhan <[email protected]> wrote:
> > Hi,
> > I am running a kernel (Suse Enterprise 9 with SP3) and it is hanging
> > somewhere in the kernel. By hooking up HDT from AMD, I got a the
> > assembly dump of the routine which causes the infinite loop. How
> > should I map the addresses dumped by HDT in the format SEG:Offset
> > (e.g,
> > 0033:00000000_00400C18 mov esi,[loc_0000000000501a64h]
> > 0033:00000000_00400C1E test esi,esi
> > 0033:00000000_00400C20 jz loc_0000000000400c30h
> > ...etc)
> > to kernel virtual address space?
>
> I don't know about your HDT (never used one) but have you already
> tried the regular debug paths (nmi watchdog/sysrq/crashdump/kdb) that
> SLES9 has?
No. Thanks. I would try Sysrq and kdb. HDT does not make much sense at
this stage without all those. Thanks for reminding that.
Regards,
Om.
"Om Narasimhan" <[email protected]> writes:
> Hi,
> I am running a kernel (Suse Enterprise 9 with SP3) and it is hanging
> somewhere in the kernel. By hooking up HDT from AMD, I got a the
> assembly dump of the routine which causes the infinite loop. How
> should I map the addresses dumped by HDT in the format SEG:Offset
> (e.g,
> 0033:00000000_00400C18 mov esi,[loc_0000000000501a64h]
> 0033:00000000_00400C1E test esi,esi
> 0033:00000000_00400C20 jz loc_0000000000400c30h
> ...etc)
> to kernel virtual address space?
The tool should be able to show you virtual addresses. Those are the virtual
addresses the kernel uses.
-Andi
> Hi,
> I am running a kernel (Suse Enterprise 9 with SP3) and it is hanging
> somewhere in the kernel. By hooking up HDT from AMD, I got a the
> assembly dump of the routine which causes the infinite loop. How
As long as interrupts are not disabled, sysrq+t should show you the EIP
where it loops.
> should I map the addresses dumped by HDT in the format SEG:Offset
> (e.g,
> 0033:00000000_00400C18 mov esi,[loc_0000000000501a64h]
> 0033:00000000_00400C1E test esi,esi
> 0033:00000000_00400C20 jz loc_0000000000400c30h
> ...etc)
> to kernel virtual address space?
Jan Engelhardt
--