Re: Inquiry: Should we remove "isolcpus= kernel boot option? (mayhave realtime uses)

From: Max Krasnyanskiy
Date: Tue Jun 03 2008 - 19:48:31 EST


I would really appreciate some way to keep the kernel from using a CPU at all to do fault isolation. If possible not even booting it.
How does isolcpu= boot option helps in this case ?
I suppose the closes option is maxcpus=. We can probably add ignorecpus= or
something to handle your use case but it has nothing to do with isolcpus=.

btw Ingo, I just realized that maxcpu= option is exactly what you need.
Here is how you can use it.
Boot your system with maxcpus=1. That way the kernel will only bring up processor 0. I'm assuming cpu0 is "good" otherwise your system is totally busted :). Other cpus will stay off-line and will not be initialized.
Then once the system boots you can selectively bring "good" processors online by doing
echo 1 > /sys/devices/system/cpu/cpuN/online

This actually solves the case you're talking about (ie ignoring bad processors) instead of partially covering it with isolcpus=.

Dimitri, you can probably use that too. ie Boot the thing with most CPUs offline and then bring them online. That way you'll know for sure that no timers, works, hard-/soft-irqs, etc are running on them.

So I expect two ACKs for isolcpu= removal from both of you, in bold please :)

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