cgroups.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC 0/4] Migrate timers away from cpuset on setting cpuset.quiesce
@ 2014-03-20 13:48 Viresh Kumar
  2014-03-20 13:48 ` [RFC 1/4] timer: track pinned timers with TIMER_PINNED flag Viresh Kumar
                   ` (4 more replies)
  0 siblings, 5 replies; 19+ messages in thread
From: Viresh Kumar @ 2014-03-20 13:48 UTC (permalink / raw)
  To: tglx-hfZtesqFncYOwBW4kG4KsQ, fweisbec-Re5JQEeQqe8AvxtiuMwx3w,
	peterz-wEGCiKHe2LqWVfeAwA7xHQ, mingo-DgEjT+Ai2ygdnm+yROfE0A,
	tj-DgEjT+Ai2ygdnm+yROfE0A, lizefan-hv44wF8Li93QT0dZR+AlfA
  Cc: linaro-kernel-cunTk1MwBs8s++Sfvej+rw,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	cgroups-u79uwXL29TY76Z2rM5mHXA, Viresh Kumar

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

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2014-04-25  5:21 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-20 13:48 [RFC 0/4] Migrate timers away from cpuset on setting cpuset.quiesce Viresh Kumar
2014-03-20 13:48 ` [RFC 1/4] timer: track pinned timers with TIMER_PINNED flag Viresh Kumar
2014-03-20 13:48 ` [RFC 2/4] timer: don't migrate pinned timers Viresh Kumar
     [not found]   ` <3fa0ea3a19a51ae2797a25e281763451ad8d2844.1395322529.git.viresh.kumar-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2014-03-31 15:56     ` Kevin Hilman
     [not found]       ` <7htxae5plh.fsf-4poPxKt068f/PtFMR13I2A@public.gmane.org>
2014-04-01  4:32         ` Viresh Kumar
     [not found]           ` <CAKohpokYfdY+40kmhgrC6Yr9vfv4GtAW2Ph3+=57YbfmJsnU9w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-04 15:15             ` Kevin Hilman
2014-03-20 13:49 ` [RFC 3/4] timer: create timer_quiesce_cpu() for cpusets.quiesce option Viresh Kumar
2014-03-20 13:49 ` [RFC 4/4] cpuset: Add " Viresh Kumar
     [not found]   ` <e643acf71086db239254d44c77d4966b2a4a01e5.1395322529.git.viresh.kumar-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2014-03-27  2:47     ` Li Zefan
     [not found]       ` <53339153.70708-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2014-03-27  4:29         ` Viresh Kumar
     [not found] ` <cover.1395322529.git.viresh.kumar-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2014-04-24  7:25   ` [RFC 0/4] Migrate timers away from cpuset on setting cpuset.quiesce Daniel Sangorrin
     [not found]     ` <201404240725.s3O7PrUv003720-g3qfMnKXm6lL9jVzuh4AOg@public.gmane.org>
2014-04-24  7:43       ` Viresh Kumar
     [not found]         ` <CAKohpokt-O3BAGMzE_=heVBZQOwp0C7eT8ZA2485DgNi3+Xcqg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-24  8:31           ` Daniel Sangorrin
     [not found]             ` <201404240832.s3O8WHd0011014-g3qfMnKXm6lL9jVzuh4AOg@public.gmane.org>
2014-04-24  8:41               ` Viresh Kumar
2014-04-24  9:24                 ` Daniel Sangorrin
2014-04-24  9:30                   ` Viresh Kumar
     [not found]                     ` <CAKohponA4-cm2_FB=8R8aVEWNhtUfOUebcfzn7W+XR0zKHCtxw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-25  0:31                       ` Daniel Sangorrin
     [not found]                         ` <201404250031.s3P0V2DY022219-g3qfMnKXm6lL9jVzuh4AOg@public.gmane.org>
2014-04-25  4:51                           ` Viresh Kumar
     [not found]                             ` <CAKohpomQH01gCeUfqFFeHVNX7N7CSyo7zdj3LGBv9=U=cE46EA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-25  5:21                               ` Daniel Sangorrin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).