Messages in this thread | | | Date | Sun, 23 Jan 2005 00:18:06 -0800 | From | Andrew Morton <> | Subject | Re: Patch to fix race between the NMI code and the CMOS clock |
| |
Corey Minyard <minyard@acm.org> wrote: > > This patch fixes a race between the CMOS clock setting and the NMI > code. The NMI code indiscriminatly sets index registers and values > in the same place the CMOS clock is set. If you are setting the > CMOS clock and an NMI occurs, Bad values could be written to or > read from the CMOS RAM, or the NMI operation might not occur > correctly. > > Fixing this requires creating a special lock so the NMI code can > know its CPU owns the lock an "do the right thing" in that case.
hm, tricky patch. I can't see any holes in it. The volatile variable is awkward but should be OK on x86 and I can see the need for it.
There's a preposterous amount of inlining happening in this code. Hence your patch took the size of drivers/char/rtc.o from
text data bss dec hex filename 3657 540 8 4205 106d drivers/char/rtc.o to 5419 540 8 5967 174f drivers/char/rtc.o
Do you think you could take a look at uninlining everything sometime? - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |