Messages in this thread | | | Subject | Re: [PATCH 1/2] x86_64 nmi_watchdog: Make check_nmi_watchdog static | From | (Eric W. Biederman) | Date | Tue, 04 Oct 2005 10:01:28 -0600 |
| |
Andi Kleen <ak@suse.de> writes:
> On Tuesday 04 October 2005 17:26, Eric W. Biederman wrote: >> Andi Kleen <ak@suse.de> writes: >> > On Tuesday 04 October 2005 17:11, Eric W. Biederman wrote: >> >> By using a late_initcall as i386 does we don't need to call >> >> check_nmi_watchdog manually after SMP startup, and we don't >> >> need different code paths for SMP and non SMP. >> >> >> >> This paves the way for moving apic initialization into init_IRQ, >> >> where it belongs. >> > >> > I don't like it. I want to see a clear message in the log when >> > the NMI watchdog doesn't work and with your patch that comes too late. >> >> Why is it to late? > > It's after too much of the boot. e.g. consider analyzing log with a boot hang. > It's important to know if the NMI watchdog runs or not. For that it is > best when the test of it happens as early as possible.
That make sense.
>> > -Andi (who has rejected similar patches before) >> >> Would it be more appropriate to make this a per cpu check? > > That would be fine as long as it's as early as possible. > But I suspect you'll always need special cases for the BP > because it needs the timer running first.
Well a special call site certainly but I can probably get away with a single function called from the appropriate CPU. I might even be able to remove nmi_cpu_busy :)
It will take me a bit to get my head back into that part of the code. late_initcall was a nice solution from a correctness and simplicity point of view. But obviously it had other issues :)
There is the whole late_timer_init() which is probably where the test needs to happen for the boot processor.
Eric - 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/
| |