Re: nmi_watchdog=2 - Oops with 2.6.8

From: Philippe Elie
Date: Wed Aug 25 2004 - 01:12:22 EST


On Tue, 24 Aug 2004 at 18:42 +0000, Zarakin wrote:

> Hi,
>
> My Gentoo machine will not boot with nmi_watchdog=2 parameter - I get an
> oops at clear_msr_range.
>
> Handwritten oops Info:
> CPU 0
> EIP: 0060: [<0xc0110d4b>] Not tainted
> EIP is at clear_msr_range+0x18/0x25
> eax: 0 ebx:1f ecx: 3ba edx: 0
> esi: 3a0 edi: 1a ebp:0 esp: d7d83f74
> ds: 7b es: 7b ss: 68
>
> Dump of assembler code for function clear_msr_range:
> 0xc0110d33 <clear_msr_range+0>: push %edi
> 0xc0110d34 <clear_msr_range+1>: xor %edi,%edi
> 0xc0110d36 <clear_msr_range+3>: push %esi
> 0xc0110d37 <clear_msr_range+4>: push %ebx
> 0xc0110d38 <clear_msr_range+5>: mov 0x14(%esp,1),%ebx
> 0xc0110d3c <clear_msr_range+9>: mov 0x10(%esp,1),%esi
> 0xc0110d40 <clear_msr_range+13>: cmp %ebx,%edi
> 0xc0110d42 <clear_msr_range+15>: jae 0xc0110d54
> 0xc0110d44 <clear_msr_range+17>: xor %eax,%eax
> 0xc0110d46 <clear_msr_range+19>: lea (%edi,%esi,1),%ecx
> 0xc0110d49 <clear_msr_range+22>: mov %eax,%edx
> 0xc0110d4b <clear_msr_range+24>: wrmsr

Intel removed MSR 0x3ba/0x3bb (MSR_IQ_ESCR0 and 1) in prescott processor
(family 15 model 3). I'm going to sleep, if nobody beat me I'll try to
provide a patch, see nmi.c:setup_p4_watchdog() --> clear_msr_range(0x3A0, 31);

This probably break oprofile too, patch will be a bit less obvious

regards,
phe
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/