From: Ingo Molnar <mingo@elte.hu>
To: linux-kernel@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>,
John Stultz <johnstul@us.ibm.com>,
"Paul E. McKenney" <paulmck@us.ibm.com>,
Dipankar Sarma <dipankar@in.ibm.com>,
Arjan van de Ven <arjan@infradead.org>
Subject: 2.6.18-rt1
Date: Wed, 20 Sep 2006 16:19:07 +0200 [thread overview]
Message-ID: <20060920141907.GA30765@elte.hu> (raw)
I'm pleased to announce the 2.6.18-rt1 tree, which can be downloaded
from the usual place:
http://redhat.com/~mingo/realtime-preempt/
This port to the 2.6.18 codebase was very complex (given that 5 major
features moved from -rt into 2.6.18: rtmutex, pi-futex, genirq, gtod and
lockdep), so it took quite some time to finish, but in exchange it
includes nice new features and also lots of bugfixes.
In particular, a nasty softirq performance bug has been fixed, which
caused the "5x slowdown under TCP" bug reported to lkml - those TCP
performance figures are now on par with vanilla performance.
The biggest new features are:
- Dynticks (a tickless kernel). This is a new feature we implemented
ontop of hrtimers for the -hrt patchqueue and now we merged it to -rt
too. There's a new config option: CONFIG_NO_HZ, which if enabled,
produces a system with fewer timer interrupts. Currently i686 and
x86_64 are tested, but in general a hrtimers-ready platform needs
minimal changes to support dynticks too. (from Thomas Gleixner and
me, the x86_64 port is from Arjan van de Ven)
- Timer expiry statistics feature from Thomas Gleixner:
CONFIG_TIMER_STATS. Enable/disable via "echo 1[0] > /proc/tstats",
display via "cat /proc/stats".
This kernel feature tracks the starting site (and expiry function) of
expired timers (both timer_list timers and hrtimers), and the number
of times they expired. This is a nice tool for those who'd like to
minimize the amount of timer ticks on their battery-based systems.
Sample output:
Timerstats sample period: 3.888770 s
12, 0 swapper hrtimer_stop_sched_tick (hrtimer_sched_tick)
15, 1 swapper hcd_submit_urb (rh_timer_func)
4, 959 kedac schedule_timeout (process_timeout)
1, 0 swapper page_writeback_init (wb_timer_fn)
28, 0 swapper hrtimer_stop_sched_tick (hrtimer_sched_tick)
22, 2948 IRQ 4 tty_flip_buffer_push (delayed_work_timer_fn)
3, 3100 bash schedule_timeout (process_timeout)
1, 1 swapper queue_delayed_work_on (delayed_work_timer_fn)
1, 1 swapper queue_delayed_work_on (delayed_work_timer_fn)
1, 1 swapper neigh_table_init_no_netlink (neigh_periodic_timer)
1, 2292 ip __netdev_watchdog_up (dev_watchdog)
1, 23 events/1 do_cache_clean (delayed_work_timer_fn)
90 total events, 30.0 events/sec
- There's also a new runtime-configurable kernel option under
/proc/sys/kernel/timeout_granularity that allows the coarser expiry
of timer_list timers, and hence better batching of timer expiry.
(hrtimers are not affected) The value of this option gives a
'multiplier' to the standard HZ granularity.
- Lock validator ported to -rt: it now checks all the sleeping lock
variants in -rt too. This helps us catch not only deadlocks but also
raw-lock candidates, sooner than before.
- The latest High Resolution Timers queue from Thomas Gleixner with
initial support for ARM and PPC. (Kevin Hilman, Deepak Saksena,
Sergei Shtylyov)
- The latest GTOD (Generic Time Of Day) queue from John Stultz,
including NTP cleanups from Roman Zippel.
- The latest genirq queue: more irq-chip-ization of i686 and x86_64,
MSI cleanups from Eric W. Biederman et al.
- The latest preemptible-RCU queue from Paul E McKenney and Dipankar
Sarma.
- (assorted fixes and improvements.)
Right now i686 and x86_64 are boot-tested, and ARM is compile-tested.
The other architectures likely wont even build yet. This being the first
2.6.18 based release of -rt, some tester caution is called for.
to build a 2.6.18-rt1 tree, the following patches should be applied:
http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2
http://redhat.com/~mingo/realtime-preempt/patch-2.6.18-rt1
as usual, bugreports, fixes and suggestions are welcome,
Ingo
next reply other threads:[~2006-09-20 14:27 UTC|newest]
Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-20 14:19 Ingo Molnar [this message]
2006-09-20 16:50 ` 2.6.18-rt1 Gene Heskett
2006-09-20 16:58 ` 2.6.18-rt1 Ingo Molnar
2006-09-20 17:33 ` 2.6.18-rt1 Gene Heskett
2006-09-20 18:34 ` 2.6.18-rt1 Gene Heskett
2006-09-20 17:00 ` 2.6.18-rt1 Daniel Walker
2006-09-20 17:38 ` 2.6.18-rt1 Paul E. McKenney
2006-09-20 17:41 ` 2.6.18-rt1 Daniel Walker
2006-09-20 18:23 ` 2.6.18-rt1 Gene Heskett
2006-09-20 18:25 ` 2.6.18-rt1 Paul E. McKenney
2006-09-20 18:34 ` 2.6.18-rt1 Daniel Walker
2006-09-20 20:06 ` 2.6.18-rt1 Paul E. McKenney
2006-09-20 21:38 ` 2.6.18-rt1 Gene Heskett
2006-09-20 20:17 ` 2.6.18-rt1 Gene Heskett
2006-09-20 18:36 ` 2.6.18-rt1 Gene Heskett
2006-09-20 18:47 ` 2.6.18-rt1 Thomas Gleixner
2006-09-20 19:20 ` 2.6.18-rt1 Thomas Gleixner
2006-09-20 19:46 ` 2.6.18-rt1 Ingo Molnar
2006-09-20 20:19 ` 2.6.18-rt1 Daniel Walker
2006-09-20 20:14 ` 2.6.18-rt1 Ingo Molnar
2006-09-20 20:31 ` 2.6.18-rt1 Daniel Walker
2006-09-21 19:02 ` 2.6.18-rt1 Ingo Molnar
2006-09-21 19:18 ` 2.6.18-rt1 Daniel Walker
2006-09-22 14:42 ` 2.6.18-rt1 Daniel Walker
2006-09-27 8:36 ` 2.6.18-rt1 Ingo Molnar
2006-09-21 8:04 ` 2.6.18-rt1 Deepak Saxena
2006-09-21 8:04 ` 2.6.18-rt1 Ingo Molnar
2006-09-21 8:24 ` 2.6.18-rt1 Deepak Saxena
2006-09-22 2:19 ` 2.6.18-rt1 john cooper
2006-09-22 6:36 ` 2.6.18-rt1 Lennert Buytenhek
2006-09-22 11:56 ` 2.6.18-rt1 Ingo Molnar
2006-09-27 13:10 ` 2.6.18-rt4 john cooper
2006-09-27 13:09 ` 2.6.18-rt4 Ingo Molnar
2006-09-20 18:56 ` 2.6.18-rt1 K.R. Foley
2006-09-20 19:49 ` 2.6.18-rt1 Ingo Molnar
2006-09-20 20:33 ` 2.6.18-rt1 K.R. Foley
2006-09-20 20:41 ` 2.6.18-rt1 Thomas Gleixner
2006-09-20 20:50 ` 2.6.18-rt1 K.R. Foley
2006-09-21 19:16 ` 2.6.18-rt1 john stultz
2006-09-22 2:18 ` 2.6.18-rt1 K.R. Foley
2006-09-22 11:58 ` 2.6.18-rt1 Ingo Molnar
2006-09-28 0:42 ` 2.6.18-rt1 john stultz
2006-09-28 22:48 ` 2.6.18-rt1 john stultz
2006-09-29 2:09 ` 2.6.18-rt1 K.R. Foley
2006-09-29 12:24 ` 2.6.18-rt1 Ingo Molnar
2006-09-29 12:40 ` 2.6.18-rt1 Ingo Molnar
2006-09-20 19:58 ` 2.6.18-rt1 Thomas Gleixner
2006-09-20 20:34 ` 2.6.18-rt1 K.R. Foley
2006-09-20 19:38 ` 2.6.18-rt1 Mark Knecht
2006-09-20 20:27 ` 2.6.18-rt1 Mark Knecht
2006-09-22 14:14 ` 2.6.18-rt1 Lee Revell
2006-09-20 20:54 ` 2.6.18-rt1 Michal Piotrowski
2006-09-20 22:07 ` 2.6.18-rt1 Michal Piotrowski
2006-09-20 22:26 ` 2.6.18-rt1 Michal Piotrowski
2006-09-21 6:56 ` [PATCH] move put_task_struct() reaping into a thread [Re: 2.6.18-rt1] Bill Huey
2006-09-21 6:54 ` Ingo Molnar
2006-09-21 7:18 ` Bill Huey
2006-09-21 7:16 ` Ingo Molnar
2006-09-21 7:32 ` Bill Huey
2006-09-21 7:29 ` Ingo Molnar
2006-09-21 7:48 ` Bill Huey
2006-09-21 7:56 ` Ingo Molnar
2006-09-21 8:13 ` Bill Huey
2006-09-21 12:23 ` Esben Nielsen
2006-09-21 12:56 ` Ingo Molnar
2006-09-21 7:27 ` Bill Huey
2006-09-21 7:22 ` Ingo Molnar
2006-09-21 7:35 ` Bill Huey
2006-09-21 7:31 ` Ingo Molnar
2006-09-21 7:52 ` Bill Huey
2006-09-27 2:55 ` Eric W. Biederman
2006-09-27 5:08 ` Bill Huey
2006-09-27 6:02 ` Eric W. Biederman
2006-09-27 6:34 ` Bill Huey
2006-09-27 7:29 ` Eric W. Biederman
2006-09-27 9:01 ` Ingo Molnar
2006-09-27 13:59 ` Eric W. Biederman
2006-09-27 14:06 ` Ingo Molnar
2006-09-27 16:18 ` Paul E. McKenney
2006-09-27 9:08 ` Ingo Molnar
2006-09-27 9:09 ` Bill Huey
2006-09-27 9:05 ` Ingo Molnar
2006-09-27 20:28 ` Esben Nielsen
2006-09-27 8:57 ` Ingo Molnar
2006-09-27 9:14 ` Bill Huey
2006-09-27 9:15 ` Ingo Molnar
2006-09-25 9:53 ` 2.6.18-rt1 Florian Schmidt
2006-09-26 7:57 ` 2.6.18-rt1 Florian Schmidt
2006-09-25 16:12 ` 2.6.18-rt1 Mike Kravetz
2006-09-27 8:34 ` 2.6.18-rt1 Ingo Molnar
2006-09-30 18:06 ` 2.6.18-rt1 Lee Revell
2006-09-30 18:18 ` 2.6.18-rt1 Dipankar Sarma
2006-09-30 18:25 ` 2.6.18-rt1 Lee Revell
2006-10-13 21:18 ` 2.6.18-rt1 Karsten Wiese
2006-10-13 21:20 ` 2.6.18-rt1 Lee Revell
2006-10-13 21:24 ` 2.6.18-rt1 Dipankar Sarma
2006-10-13 22:12 ` 2.6.18-rt1 Lee Revell
2006-10-13 22:16 ` 2.6.18-rt1 Dipankar Sarma
2006-10-17 14:46 ` 2.6.18-rt1 Lee Revell
2006-10-18 8:34 ` 2.6.18-rt1 Ingo Molnar
2006-10-18 7:12 ` 2.6.18-rt1 Ingo Molnar
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=20060920141907.GA30765@elte.hu \
--to=mingo@elte.hu \
--cc=arjan@infradead.org \
--cc=dipankar@in.ibm.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=paulmck@us.ibm.com \
--cc=tglx@linutronix.de \
/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.