> I don't think that's a good idea for two reasons:
>
> * If the oprofile code is only using the counter that the NMI
> watchdog is not using, it will silently cause the NMI watchdog to
> stop working. I know that's not the case now, but it could be in
> the future.
Uh, this is fine. We always call the NMI watchdog handler, so it will
see apic irqs get stuck, and work anyway.
> * The oprofile code will always reset the counter, so the NMI
> watchdog will never see the timeout, so it doesn't matter.
wrong. If we are using counters 0 and 1, and 1 overflows, oprofile
resets that, then 0 overflows, the NMI watchdog will see it and
incorrectly reset it. You HAVE to avoid the reset - you can test it if
you don't believe me.
> It's currently kind of an unnatural relationship. IMHO, it would be
> better to have a separate handler for the perf counters that they both
> use. But that's beyond the scope of this right now.
Yes.
> +/* This is for I/O APIC, until we can figure out how to tell if it's from the
> + I/O APIC. If the NMI was not handled before now, we handle it. */
> +static int dummy_watchdog_reset(int handled)
> +{
> + return !handled;
> +}
And if it was handled previously, you reset it to not handled ? Uh ?
regards
john
-
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/