Re: [PATCH] watchdog: touch_nmi_watchdog should only touch localcpu not every one

From: Don Zickus
Date: Mon Nov 08 2010 - 08:38:45 EST


On Fri, Nov 05, 2010 at 12:58:55PM -0700, Andrew Morton wrote:
> On Fri, 5 Nov 2010 15:51:18 +0200
> Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx> wrote:
>
> > On (11/04/10 21:18), Don Zickus wrote:
> > > void touch_nmi_watchdog(void)
> > > {
> > > + /*
> > > + * Using __raw here because some code paths have
> > > + * preemption enabled. If preemption is enabled
> > > + * then interrupts should be enabled too, in which
> > > + * case we shouldn't have to worry about the watchdog
> > > + * going off.
> > > + */
> > > + __raw_get_cpu_var(watchdog_nmi_touch) = true;
> > > +
> > > + touch_softlockup_watchdog();
> > > +}
> > > +EXPORT_SYMBOL(touch_nmi_watchdog);
> > > +
> > > +void touch_all_nmi_watchdogs(void)
> > > +{
> > > if (watchdog_enabled) {
> > > unsigned cpu;
> > >
> > > @@ -151,7 +166,7 @@ void touch_nmi_watchdog(void)
> > > }
> > > touch_softlockup_watchdog();
> > > }
> > > -EXPORT_SYMBOL(touch_nmi_watchdog);
> > > +EXPORT_SYMBOL(touch_all_nmi_watchdogs);
> > >
> >
> > Hello,
> > Seems like no one is actually calling touch_all_nmi_watchdogs, as for now.
> > Right?
>
> Yes, there doesn't seem a lot of point in adding the interface unless
> we have callers.

Yeah I wasn't sure how to deal with that. It didn't seem like any of the
callers was relying on the fact that touch_nmi_watchdog() touched
everyone. I just provided it as an option in case I misread someone's use
of the touch_nmi_watchdog.

I'll repost and remove it then.

Thanks for the feedback.

Cheers,
Don
--
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/