Messages in this thread | | | Subject | Re: Inquiry: Should we remove "isolcpus= kernel boot option? (may have realtime uses) | From | Peter Zijlstra <> | Date | Wed, 04 Jun 2008 20:56:34 +0200 |
| |
On Wed, 2008-06-04 at 11:29 -0700, Max Krasnyansky wrote: > > Paul Jackson wrote: > > Andi wrote: > >> Right now the system boot could put pages from some daemon in there before any > >> cpusets are set up and there's no easy way to get them away again > > > > We (SGI) routinely handle that need with a custom init program, > > invoked with the init= parameter to the booting kernel, which > > sets up cpusets and then invokes the normal (real) init program > > in a cpuset configured to exclude those CPUs and nodes which we > > want to remain unloaded. For example, on a 256 CPU, 64 node > > system, we might have init running on a single node of 4 CPUs, > > and leave the remaining 63 nodes and 252 CPUs isolated from all > > the usual user level daemons started by init. > > > > There is no need for additional kernel changes to accomplish this. > > You do not even need to replace /sbin/init for this, no ? > Simply installing custom > /etc/init.d/create_cpusets > with priority 0 > # chkconfig: 12345 0 99 > will do the job. > > That script will move init itself into the appropriate cpuset and from then on > everything will inherit it.
The advantage of using a replacement /sbin/init is that you execute before the rest of userspace, unlike what you propose.
| |