For networking platforms we need to provide one isolated CPU per user space data plane thread. These CPUs should not be interrupted by kernel at all unless userspace has requested for some syscalls. And so must live in isolated mode. Currently, there are background kernel activities that are running on almost every CPU, like: timers/hrtimers/watchdogs/etc, and these are required to be migrated to other CPUs. This patchset tries to migrate un-pinned timers away in the first attempt. And support for migrating others like hrtimers/workqueues/etc would be added later. This has only went through basic testing currently on ARM Samsung Exynos board which only has two CPUs. Separate cpusets were created for these two CPUs and then timers were migrated from one cpuset to other. This option was earlier suggested by Peter Z. here. https://lkml.org/lkml/2014/1/15/186 Please provide your inputs on how this can be improved.. Viresh Kumar (4): timer: track pinned timers with TIMER_PINNED flag timer: don't migrate pinned timers timer: create timer_quiesce_cpu() for cpusets.quiesce option cpuset: Add cpusets.quiesce option include/linux/timer.h | 10 +++--- kernel/cpuset.c | 56 +++++++++++++++++++++++++++++++ kernel/timer.c | 92 +++++++++++++++++++++++++++++++++++++++++---------- 3 files changed, 136 insertions(+), 22 deletions(-) -- 1.7.12.rc2.18.g61b472e -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html