Re: [Experimental CPU Hotplug PATCH] - Move migrate_all_tasks toCPU_DEAD handling

From: Nick Piggin
Date: Tue Apr 06 2004 - 10:07:22 EST


Srivatsa Vaddagiri wrote:
On Tue, Apr 06, 2004 at 07:26:06PM +1000, Nick Piggin wrote:

Also in my patch, the offline check should probably be done below
the check for if (cpu == this_cpu... because that should be a common
route.


Will this be true for wakeups which are triggered from expiring timers also? The timers on the dead CPU are migrated to other CPUs. When they fire, the timer fn runs on a different CPU and can try to wake up a
task 'n add it to dead cpu! So we probably need a unconditional cpu_is_offline
check in try_to_wake_up?


AFAIKS, no.

If this happens before migrate_all_tasks, there shouldn't be a
problem because migrate_all_tasks will move the woken task anyway.

It can't happen after migrate_all_tasks, because there is nothing
on the offline CPU to be woken up.

If you do need the check there, then my lazy migrate method is
unquestionably better, because this is the only thing it would
otherwise have to add to a fastpath. Right?
-
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/