Messages in this thread | | | Date | Fri, 10 Jan 2003 07:12:23 -0800 | From | William Lee Irwin III <> | Subject | Re: small migration thread fix |
| |
On Friday 10 January 2003 14:11, William Lee Irwin III wrote: >> I'm not mingo, but I can say this looks sane. My only question is >> whether there are more codepaths that need this kind of check, for >> instance, what happens if someone does set_cpus_allowed() to a cpumask >> with !(task->cpumask & cpu_online_map) ?
On Fri, Jan 10, 2003 at 03:29:33PM +0100, Erich Focht wrote: > The piece of code below was intended for that. I agree with Rusty's > comment, BUG() is too strong for that case. > #if 0 /* FIXME: Grab cpu_lock, return error on this case. --RR */ > new_mask &= cpu_online_map; > if (!new_mask) > BUG(); > #endif > Anyhow, changing the new_mask in this way is BAD, because the masks > are inherited. So when more CPUs come online, they remain excluded > from the mask of the process and it's children. > The fix suggested in the comments still has to be done...
I don't have much to add but another ack and a "hmm, maybe something could be done". My prior comments stand. I'd be very much obliged if you provide a fix for the set_cpus_allowed() issue. I very much rely upon you now to provide scheduler fixes and optimizations for large scale and/or NUMA machines these days.
Thanks, Bill - 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/
| |