Subject: Re: [PATCH] powerpc/powernv: Support OPAL requested heartbeat

From: Benjamin Herrenschmidt <[email-masked]>
Date: Fri, 14 Nov 2014 15:26:34 +1100

On Fri, 2014-11-14 at 14:01 +1100, Alistair Popple wrote:
> Hi Ben,
> 
> On Wed, 12 Nov 2014 17:03:14 Benjamin Herrenschmidt wrote:
> 
> <snip>
> 
> > +
> > +static int kopald(void *unused)
> > +{
> > +	set_freezable();
> > +	do {
> > +		try_to_freeze();
> > +		opal_poll_events(NULL);
> 
> Do we need to check for outstanding events (and call opal_do_notifier)? The 
> Linux OPAL-IPMI interface signals an event which the interrupt handler 
> (opal_interrupt) checks for, but if interrupts aren't functional no event will 
> be signalled and hence the Linux IPMI layer won't get a response.
> 
> It's probably only an issue for lab bring up though as I would expect 
> interrupts to generally be working...

Well, it would somewhat double up with the OCC interrupt ... OPAL will
sent a local OCC interrupt if we change the event mask as a result of a
call that isn't opal_handle_interrupts() ... but yes, I suppose if that
doesn't work either... though this is not known to be problematic unless
the external one.

> > +		msleep_interruptible(opal_heartbeat);
> > +	} while (!kthread_should_stop());
> > +
> > +	return 0;
> > +}
> > +
> 
> Regards,
> 
> Alistair