From: Max Krasnyansky <maxk@qualcomm.com>
To: LKML <linux-kernel@vger.kernel.org>
Cc: linux-rt-users@vger.kernel.org
Subject: linux v2.6.25.6.cpuisol1
Date: Tue, 10 Jun 2008 17:31:29 -0700 [thread overview]
Message-ID: <484F1CE1.3010701@qualcomm.com> (raw)
This is the latest version of my CPU isolation tree.
Git tree is available at:
git://git.kernel.org/pub/scm/linux/kernel/git/maxk/cpuisol-2.6.25.y.git
http://www.kernel.org/pub/scm/linux/kernel/git/maxk/cpuisol-2.6.25.y.git
Full patch is at:
http://kernel.org/pub/linux/kernel/people/maxk/cpuisol/patches/v2.6.25.6.cpuisol1.patch
In order to simplify overall system setup I wrote a simple tool for system
partitioning - "syspart". You can get the latest version from here
http://kernel.org/pub/linux/kernel/people/maxk/cpuisol/syspart/
git://git.kernel.org/pub/scm/linux/kernel/git/maxk/syspart.git
This tool takes care of setting up IRQ affinities and cpusets, moving kernel
and user space tasks, bring CPUs off/online, etc. Please note that you want to
disable daemons like "irqbalance" to avoid resource partitioning conflicts.
For more info see syspart/README.
--
I also have some sample kernel configs that have been tested and are know to
work. You can pick one of them as base for your kernel:
http://kernel.org/pub/linux/kernel/people/maxk/cpuisol/configs/
Required kernel features:
CONFIG_CGROUP
CONFIG_CPUSETS
CONFIG_CPU_HOTPLUG
Following features are required if you intend on chewing ~100% in the user
space SCHED_FIFO threads running on the isolated CPUs (note that OPROFILE is
known to not work for this use case):
CONFIG_SLUB or CONFIG_SLOB
You may also want to disable the following features in order to achieve the
lowest possible latency:
!CONFIG_HIGH_RES_TIMERS
!CONFIG_NO_HZ
!CONFIG_CPU_FREQ
And of course you want to refer to
http://rt.wiki.kernel.org/index.php/HOWTO:_Build_an_RT-application
for general guidelines on how to build RT applications.
---
This version is based on a completely different approach (compared to previous
cpuisol tree releases). Instead of the centralized cpu_isolation_map it's now
based on the existing kernel features like cpusets. The number of changes is
therefor very small.
Shortlog:
Max Krasnyansky (6):
sched: Fix memory leak in the cpu hotplug handing logic
sched: CPU hotplug events must not destroy scheduler domains created by
the cpusets
genirq: Expose default irq affinity mask (take 3)
sysctl: Add generic cpumask parser for sysctls
stopmachine: Introduce stopmachine_cpus sysctl
Linux 2.6.25.6.cpuisol1
sched: changes are simple bug fixes and are on their way into the mainline.
genirq: stuff has been ACKed in general is pending final ACK from genirq
maintainer.
stopmachine change is a temporary hack to allow for module insertion and removal.
Diffstat:
Documentation/IRQ-affinity.txt | 37 ++++++++++++++----
Documentation/filesystems/proc.txt | 29 +++++++++-----
Makefile | 2 -
arch/alpha/kernel/irq.c | 5 +-
include/linux/irq.h | 14 ++-----
include/linux/sysctl.h | 2 +
kernel/cpuset.c | 6 +++
kernel/irq/manage.c | 28 +++++++++++++-
kernel/irq/proc.c | 59 +++++++++++++++++++++++++++--
kernel/sched.c | 23 +++++++++++
kernel/stop_machine.c | 5 ++
kernel/sysctl.c | 73 +++++++++++++++++++++++++++++++++++
12 files changed, 244 insertions(+), 39 deletions(-)
Comments, questions, suggestions and bug reports are welcome.
Max
reply other threads:[~2008-06-11 0:31 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=484F1CE1.3010701@qualcomm.com \
--to=maxk@qualcomm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rt-users@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.