[QUERY]: Is using CPU hotplug right for isolating CPUs?

From: Viresh Kumar
Date: Wed Jan 15 2014 - 04:27:42 EST


Hi Again,

I am now successful in isolating a CPU completely using CPUsets,
NO_HZ_FULL and CPU hotplug..

My setup and requirements for those who weren't following the
earlier mails:

For networking machines it is required to run data plane threads on
some CPUs (i.e. one thread per CPU) and these CPUs shouldn't be
interrupted by kernel at all.

Earlier I tried CPUSets with NO_HZ by creating two groups with
load_balancing disabled between them and manually tried to move
all tasks out to CPU0 group. But even then there were interruptions
which were continuously coming on CPU1 (which I am trying to
isolate). These were some workqueue events, some timers (like
prandom), timer overflow events (As NO_HZ_FULL pushes hrtimer
to long ahead in future, 450 seconds, rather than disabling them
completely, and these hardware timers were overflowing their
counters after 90 seconds on Samsung Exynos board).

So after creating CPUsets I hotunplugged CPU1 and added it back
immediately. This moved all these interruptions away and now
CPU1 is running my single thread ("stress") for ever.

Now my question is: Is there anything particularly wrong about using
hotplugging here ? Will that lead to a disaster :)

Thanks in Advance.

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