All of lore.kernel.org
 help / color / mirror / Atom feed
From: Corey Minyard <minyard@acm.org>
To: Andi Kleen <ak@suse.de>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Race betwen the NMI handler and the RTC clock in practially all kernels
Date: Mon, 25 Oct 2004 14:50:27 -0500	[thread overview]
Message-ID: <417D5903.6090106@acm.org> (raw)
In-Reply-To: <p73u0sik2fa.fsf@verdi.suse.de>

According to the comments in 2.4, this code causes the NMI to be 
re-asserted if another NMI occurred while the NMI handler was running.  
I have no idea how twiddling with these CMOS registers causes this to 
happen, but that is supposed to be the intent.  I don't think it has 
anything to do with delays.

I would like to know what this code really does before removing it.

-Corey

Andi Kleen wrote:

>Corey Minyard <minyard@acm.org> writes:
>
>  
>
>>I had a customer on x86 notice that sometimes offset 0xf in the CMOS
>>RAM was getting set to invalid values.  Their BIOS used this for
>>information about how to boot, and this caused the BIOS to lock up.
>>
>>They traced it down to the following code in arch/kernel/traps.c (now
>>in include/asm-i386/mach-default/mach_traps.c):
>>
>>    outb(0x8f, 0x70);
>>    inb(0x71);              /* dummy */
>>    outb(0x0f, 0x70);
>>    inb(0x71);              /* dummy */
>>    
>>
>
>Just use a different dummy register, like 0x80 which is normally used
>for delaying IO (I think that is what the dummy access does) 
>
>But I'm pretty sure this NMI handling is incorrect anyways, its
>use of bits doesn't match what the datasheets say of modern x86
>chipsets say. Perhaps it would be best to just get rid of 
>that legacy register twiddling completely.
>
>I will also remove it from x86-64.
>
>-Andi
>  
>


  reply	other threads:[~2004-10-25 20:00 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <417D2305.3020209@acm.org.suse.lists.linux.kernel>
2004-10-25 19:44 ` Race betwen the NMI handler and the RTC clock in practially all kernels Andi Kleen
2004-10-25 19:50   ` Corey Minyard [this message]
2004-10-25 20:14     ` Andi Kleen
2004-10-25 20:15     ` linux-os
2004-10-25 20:07   ` Maciej W. Rozycki
2004-10-25 20:17     ` Andi Kleen
2004-10-25 20:41       ` Race betwen the NMI handler and the RTC clock in practially all kernels II Andi Kleen
2004-10-25 21:00         ` Maciej W. Rozycki
2004-10-25 22:04           ` Corey Minyard
2004-10-25 23:40             ` Maciej W. Rozycki
2004-10-26  2:50               ` Corey Minyard
2004-10-26 12:01             ` linux-os
2004-10-25 20:47       ` Race betwen the NMI handler and the RTC clock in practially all kernels Maciej W. Rozycki
2004-10-25 20:11   ` linux-os
2004-10-25 20:23     ` Andi Kleen
2004-10-25 16:00 Corey Minyard
2004-10-26 13:56 ` Corey Minyard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=417D5903.6090106@acm.org \
    --to=minyard@acm.org \
    --cc=ak@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.