Re: Preemption Broken: centrino_target busted under SMP on 2.6.20.4

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Andrew Morton
Date: Monday, April 9, 2007 - 7:41 pm

On Mon, 9 Apr 2007 22:31:08 -0400 Dave Jones <davej@redhat.com> wrote:


set_cpus_allowed() will only sleep in special circumstances: when we're
telling the target task that it is not allwed to run on a CPU upon which it
is presently executing.  So it needs to be synchronously migrated off that
CPU, which requires that the set_cpus_allowed() caller block.

You're probably just not hitting that case.

Probably we should have a might_sleep() in set_cpus_allowed(), although
there might be callers who are guaranteeed to never hit that case and who
might legitimately want special treatment to avoid the warning.


Yeah, I get a lot of patches like that.
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: Preemption Broken: centrino_target busted under SMP o ..., Andrew Morton, (Mon Apr 9, 7:41 pm)