lkml.org 
[lkml]   [2004]   [Jan]   [20]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateMon, 19 Jan 2004 23:54:09 -0800
FromTim Hockin <>
SubjectRe: CPU Hotplug: Hotplug Script And SIGPWR
On Tue, Jan 20, 2004 at 06:45:37PM +1100, Nick Piggin wrote:
> >I guess a hotplug script MAY fail.  I don't think it's a good idea to make
> >your CPU hotplug script fail.  May and Misght are different.  It's up to 
> >the
> >implementor whether the script can get into a failure condition.
> >
> 
> Sorry bad wording. The script may fail to be executed.

Under what conditions?  Not arbitrary entropy, surely.  If a hotplug script
is present and does not blow up, it should be safe to assume it will be run
upon an event being delivered.  If not, we have a WAY bigger problem :)

> >What if <which> process needs guaranteed scheduling latency?  Do we really
> >_guarantee_ scheduling latency *anywhere*?
> 
> We do guarantee that a realtime task won't be blocked waiting for
> a hotplug script to fault in and start it up again (which may not
> happen). Not sure how important this issue is.

We have a conflict of priority here.  If an RT task is affined to CPU A and
CPU A gets yanked out, what do we do?

Obviously the RT task can't keep running as it was.  It was affined to A.
Maybe for a good reason.  I see we have a few choices here:

* re-affine it automatically, thereby silently undoing the explicit
  affinity.
* violate it's RT scheduling by not running it until it has been re-affined
  or CPU A returns to the pool/

Sending it a SIGPWR means you have to run it on a different CPU that it was
affined to, which is already a violation.

Basically, RT tasks + CPU affinity + hotplug CPUs do not play nicely
together.  I don't see much that can be done to solve that.  With the
procstate stuff I did, and with planned CPU unplugs we *do* have time before
the CPU really goes offline in which to act.  With unplanned CPU offlining,
we don't.

-
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/

\
 
 \ /
  Last update: 2005-03-22 14:00    [from the cache]
©2003-2008