From: Peter Zijlstra <peterz@infradead.org>
To: Ingo Molnar <mingo@elte.hu>
Cc: Frederic Weisbecker <fweisbec@gmail.com>,
Thomas Gleixner <tglx@tglx.de>,
LKML <linux-kernel@vger.kernel.org>,
rt-users <linux-rt-users@vger.kernel.org>,
Steven Rostedt <rostedt@goodmis.org>, Carsten Emde <ce@ceag.ch>,
Clark Williams <williams@redhat.com>,
rusty <rusty@rustcorp.com.au>
Subject: Re: [patch] generic-ipi: remove kmalloc, cleanup
Date: Thu, 12 Feb 2009 11:16:10 +0100 [thread overview]
Message-ID: <1234433770.23438.210.camel@twins> (raw)
In-Reply-To: <20090212100756.GA12790@elte.hu>
On Thu, 2009-02-12 at 11:07 +0100, Ingo Molnar wrote:
> * Peter Zijlstra <peterz@infradead.org> wrote:
>
> > On Thu, 2009-02-12 at 09:19 +0100, Ingo Molnar wrote:
> > > * Ingo Molnar <mingo@elte.hu> wrote:
> > >
> > > > hm, that's a complex one - we do kfree() from IPI context, [...]
> > >
> > > The patch below might do the trick - it offloads this to a softirq.
> > > Not tested yet.
> >
> > The simple fix is something like:
> >
> > ---
> > kernel/smp.c | 8 ++++++++
> > 1 files changed, 8 insertions(+), 0 deletions(-)
>
> ok, i made it unconditional (not just a PREEMPT_RT hac) and did the
> cleanup below on top of it.
>
> I dont think repeat, queued IPIs are all that interesting from a
> performance point of view. If they are, it will all be clearly
> bisectable.
Right, except I really don't like the smp_call_function_many() slow path
that's now the only path.
Rusty did that I think, but he also had some idea on how to fix it, I
think it boiled down to sticking a count in the call data instead of the
full cpumask.
So I'd rather we first fix that code, and then remove the kmalloc
all-together like you propose here.
> Ingo
>
> --------------->
> Subject: generic-ipi: remove kmalloc, cleanup
> From: Ingo Molnar <mingo@elte.hu>
>
> Now that we dont use the kmalloc() sequence anymore, remove
> CSD_FLAG_ALLOC and all its dependencies.
>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
> ---
> kernel/smp.c | 86 +++++++++++------------------------------------------------
> 1 file changed, 17 insertions(+), 69 deletions(-)
>
> Index: tip/kernel/smp.c
> ===================================================================
> --- tip.orig/kernel/smp.c
> +++ tip/kernel/smp.c
> @@ -17,8 +17,7 @@ __cacheline_aligned_in_smp DEFINE_RAW_SP
>
> enum {
> CSD_FLAG_WAIT = 0x01,
> - CSD_FLAG_ALLOC = 0x02,
> - CSD_FLAG_LOCK = 0x04,
> + CSD_FLAG_LOCK = 0x02,
> };
>
> struct call_function_data {
> @@ -85,15 +84,6 @@ static void generic_exec_single(int cpu,
> csd_flag_wait(data);
> }
>
> -static void rcu_free_call_data(struct rcu_head *head)
> -{
> - struct call_function_data *data;
> -
> - data = container_of(head, struct call_function_data, rcu_head);
> -
> - kfree(data);
> -}
> -
> /*
> * Invoked by arch to handle an IPI for call function. Must be called with
> * interrupts disabled.
> @@ -138,8 +128,6 @@ void generic_smp_call_function_interrupt
> smp_wmb();
> data->csd.flags &= ~CSD_FLAG_WAIT;
> }
> - if (data->csd.flags & CSD_FLAG_ALLOC)
> - call_rcu(&data->rcu_head, rcu_free_call_data);
> }
> rcu_read_unlock();
>
> @@ -190,8 +178,7 @@ void generic_smp_call_function_single_in
> } else if (data_flags & CSD_FLAG_LOCK) {
> smp_wmb();
> data->flags &= ~CSD_FLAG_LOCK;
> - } else if (data_flags & CSD_FLAG_ALLOC)
> - kfree(data);
> + }
> }
> /*
> * See comment on outer loop
> @@ -236,13 +223,11 @@ int smp_call_function_single(int cpu, vo
> /*
> * We are calling a function on a single CPU
> * and we are not going to wait for it to finish.
> - * We first try to allocate the data, but if we
> - * fail, we fall back to use a per cpu data to pass
> - * the information to that CPU. Since all callers
> - * of this code will use the same data, we must
> - * synchronize the callers to prevent a new caller
> - * from corrupting the data before the callee
> - * can access it.
> + * We use a per cpu data to pass the information to
> + * that CPU. Since all callers of this code will use
> + * the same data, we must synchronize the callers to
> + * prevent a new caller from corrupting the data before
> + * the callee can access it.
> *
> * The CSD_FLAG_LOCK is used to let us know when
> * the IPI handler is done with the data.
> @@ -252,15 +237,10 @@ int smp_call_function_single(int cpu, vo
> * will make sure the callee is done with the
> * data before a new caller will use it.
> */
> - data = NULL;
> - if (data)
> - data->flags = CSD_FLAG_ALLOC;
> - else {
> - data = &per_cpu(csd_data, me);
> - while (data->flags & CSD_FLAG_LOCK)
> - cpu_relax();
> - data->flags = CSD_FLAG_LOCK;
> - }
> + data = &per_cpu(csd_data, me);
> + while (data->flags & CSD_FLAG_LOCK)
> + cpu_relax();
> + data->flags = CSD_FLAG_LOCK;
> } else {
> data = &d;
> data->flags = CSD_FLAG_WAIT;
> @@ -321,8 +301,6 @@ void smp_call_function_many(const struct
> void (*func)(void *), void *info,
> bool wait)
> {
> - struct call_function_data *data;
> - unsigned long flags;
> int cpu, next_cpu;
>
> /* Can deadlock when called with interrupts disabled */
> @@ -347,43 +325,13 @@ void smp_call_function_many(const struct
> return;
> }
>
> - data = NULL;
> - if (unlikely(!data)) {
> - /* Slow path. */
> - for_each_online_cpu(cpu) {
> - if (cpu == smp_processor_id())
> - continue;
> - if (cpumask_test_cpu(cpu, mask))
> - smp_call_function_single(cpu, func, info, wait);
> - }
> - return;
> + /* Slow path. */
> + for_each_online_cpu(cpu) {
> + if (cpu == smp_processor_id())
> + continue;
> + if (cpumask_test_cpu(cpu, mask))
> + smp_call_function_single(cpu, func, info, wait);
> }
> -
> - spin_lock_init(&data->lock);
> - data->csd.flags = CSD_FLAG_ALLOC;
> - if (wait)
> - data->csd.flags |= CSD_FLAG_WAIT;
> - data->csd.func = func;
> - data->csd.info = info;
> - cpumask_and(to_cpumask(data->cpumask_bits), mask, cpu_online_mask);
> - cpumask_clear_cpu(smp_processor_id(), to_cpumask(data->cpumask_bits));
> - data->refs = cpumask_weight(to_cpumask(data->cpumask_bits));
> -
> - spin_lock_irqsave(&call_function_lock, flags);
> - list_add_tail_rcu(&data->csd.list, &call_function_queue);
> - spin_unlock_irqrestore(&call_function_lock, flags);
> -
> - /*
> - * Make the list addition visible before sending the ipi.
> - */
> - smp_mb();
> -
> - /* Send a message to all CPUs in the map */
> - arch_send_call_function_ipi_mask(to_cpumask(data->cpumask_bits));
> -
> - /* optionally wait for the CPUs to complete */
> - if (wait)
> - csd_flag_wait(&data->csd);
> }
> EXPORT_SYMBOL(smp_call_function_many);
>
next prev parent reply other threads:[~2009-02-12 10:14 UTC|newest]
Thread overview: 275+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-11 22:43 [Announce] 2.6.29-rc4-rt1 Thomas Gleixner
2009-02-12 0:50 ` Frederic Weisbecker
2009-02-12 2:12 ` Frederic Weisbecker
2009-02-12 8:18 ` Ingo Molnar
2009-02-12 8:19 ` [patch] rt: fix ipi kfree(), introduce IPI_SOFTIRQ Ingo Molnar
2009-02-12 8:22 ` Ingo Molnar
2009-02-12 8:27 ` Ingo Molnar
2009-02-12 9:22 ` Peter Zijlstra
2009-02-12 10:07 ` [patch] generic-ipi: remove kmalloc, cleanup Ingo Molnar
2009-02-12 10:16 ` Peter Zijlstra [this message]
2009-02-12 12:09 ` Peter Zijlstra
2009-02-12 12:36 ` Peter Zijlstra
2009-02-12 15:43 ` Steven Rostedt
2009-02-12 15:57 ` Peter Zijlstra
2009-02-13 21:16 ` Rusty Russell
2009-02-13 23:48 ` Peter Zijlstra
2009-02-16 7:16 ` Rusty Russell
2009-02-16 9:57 ` Peter Zijlstra
2009-02-12 14:34 ` Frederic Weisbecker
2009-02-12 14:42 ` Peter Zijlstra
2009-02-12 10:50 ` [patch] sched: cpu hotplug fix Ingo Molnar
2009-02-12 10:16 ` [patch] rt: res_counter fix Ingo Molnar
2009-02-12 10:21 ` [patch] rt: res_counter fix, v2 Ingo Molnar
2009-02-12 10:46 ` KAMEZAWA Hiroyuki
2009-02-12 11:28 ` Ingo Molnar
2009-02-12 12:35 ` KAMEZAWA Hiroyuki
2009-02-12 16:58 ` Balbir Singh
2009-02-12 17:29 ` Peter Zijlstra
2009-02-12 23:56 ` KAMEZAWA Hiroyuki
2009-02-13 0:29 ` KAMEZAWA Hiroyuki
2009-02-12 14:28 ` Frederic Weisbecker
2009-02-12 14:41 ` Peter Zijlstra
2009-02-12 14:46 ` Ingo Molnar
2009-02-12 14:50 ` Frederic Weisbecker
2009-02-12 14:58 ` Peter Zijlstra
2009-02-12 14:51 ` Peter Zijlstra
2009-02-12 2:55 ` [Announce] 2.6.29-rc4-rt1 Clark Williams
2009-02-12 8:38 ` [patch] irq threading: fix PF_HARDIRQ definition Ingo Molnar
2009-02-12 8:42 ` Ingo Molnar
2009-02-12 16:50 ` Clark Williams
2009-02-12 22:56 ` [Announce] 2.6.29-rc4-rt2 Thomas Gleixner
2009-02-13 0:48 ` Frederic Weisbecker
2009-02-13 2:16 ` Frederic Weisbecker
2009-02-13 3:09 ` Frederic Weisbecker
2009-02-13 7:26 ` [patch] rt: sysprof hrtimer fix Ingo Molnar
2009-02-13 12:04 ` Frederic Weisbecker
2009-02-13 12:49 ` Ingo Molnar
2009-02-13 20:03 ` Frederic Weisbecker
2009-02-19 18:44 ` [Announce] 2.6.29-rc4-rt2 Thomas Meyer
2009-02-19 20:50 ` Peter Zijlstra
2009-02-20 6:32 ` Thomas Meyer
2009-02-20 7:49 ` Peter Zijlstra
2009-02-20 15:09 ` Thomas Meyer
2009-02-20 16:17 ` Ingo Molnar
2009-02-20 22:25 ` Sven-Thorsten Dietrich
2009-02-20 22:54 ` Peter Zijlstra
2009-02-21 0:57 ` Sven-Thorsten Dietrich
2009-02-21 17:04 ` Thomas Meyer
2009-02-21 17:19 ` Frederic Weisbecker
2009-02-22 13:20 ` Thomas Meyer
2009-02-23 19:44 ` [Announce] 2.6.29-rc6-rt2 Thomas Gleixner
2009-02-24 17:51 ` Thomas Gleixner
2009-02-24 17:57 ` [Announce] 2.6.29-rc6-rt3 Thomas Gleixner
2009-02-25 19:34 ` Thomas Meyer
2009-02-25 18:43 ` Peter Zijlstra
2009-02-26 18:46 ` Thomas Meyer
2009-03-12 19:17 ` [Announce] 2.6.29-rc7-rt1 Thomas Gleixner
2009-03-12 20:43 ` Tim Sander
2009-03-13 0:34 ` Uwe Kleine-König
2009-03-13 1:04 ` some ARM fixes for 2.6.29-rc7-rt1 Uwe Kleine-König
2009-03-15 6:48 ` Uwe Kleine-König
2009-03-20 0:31 ` [Announce] 2.6.29-rc78rt1 Thomas Gleixner
2009-03-20 16:31 ` Cliff Brake
2009-03-20 17:48 ` Thomas Gleixner
2009-03-20 17:45 ` [Announce] 2.6.29-rc8-rt2 Thomas Gleixner
2009-03-20 19:19 ` Will Schmidt
2009-03-20 19:25 ` Ingo Molnar
2009-03-23 16:26 ` [Announce] 2.6.29-rc8-rt3 Thomas Gleixner
2009-03-24 11:04 ` Frederic Weisbecker
2009-03-24 21:07 ` Uwe Kleine-König
2009-03-25 20:59 ` [Announce] 2.6.29-rt1 Thomas Gleixner
2009-03-25 21:05 ` Jaswinder Singh Rajput
2009-03-25 21:09 ` Thomas Gleixner
2009-03-26 7:52 ` GeunSik Lim
2009-03-26 8:02 ` GeunSik Lim
2009-04-02 0:17 ` [Announce] 2.6.29-rt2 Thomas Gleixner
2009-04-02 16:02 ` Will Schmidt
2009-04-02 16:45 ` Thomas Gleixner
2009-04-02 17:24 ` Will Schmidt
2009-04-03 9:43 ` Peter Zijlstra
2009-04-03 15:30 ` Will Schmidt
2009-04-03 17:21 ` [Announce] 2.6.29.1-rt4 Thomas Gleixner
2009-04-03 23:04 ` Fernando Lopez-Lezcano
2009-04-04 4:30 ` Thomas Gleixner
2009-04-04 6:57 ` Fernando Lopez-Lezcano
2009-04-05 13:53 ` Thomas Gleixner
2009-04-05 21:49 ` Fernando Lopez-Lezcano
2009-04-05 22:02 ` Thomas Gleixner
2009-04-05 23:10 ` Fernando Lopez-Lezcano
2009-04-06 19:54 ` Thomas Gleixner
2009-04-07 16:52 ` Fernando Lopez-Lezcano
2009-04-07 16:58 ` Thomas Gleixner
2009-04-07 18:13 ` Fernando Lopez-Lezcano
2009-04-07 17:14 ` Fernando Lopez-Lezcano
2009-04-05 3:28 ` GeunSik Lim
2009-04-05 8:47 ` Thomas Gleixner
2009-04-05 8:53 ` Thomas Gleixner
2009-04-08 17:49 ` [Announce] 2.6.29.1-rt5 Thomas Gleixner
2009-04-09 18:53 ` [Announce] 2.6.29.1-rt6 Thomas Gleixner
2009-04-10 8:12 ` GeunSik Lim
2009-04-10 22:05 ` [Announce] 2.6.29.1-rt7 Thomas Gleixner
2009-04-18 10:13 ` [Announce] 2.6.29.1-rt8 Thomas Gleixner
2009-04-21 1:47 ` [BUG] 2.6.29.1-rt8, undefined reference to hrtimer_wait_for_timer Wu Zhangjin
2009-04-25 13:03 ` [Announce] 2.6.29.1-rt9 Thomas Gleixner
2009-04-28 22:39 ` [Announce] 2.6.29.2-rt10 Thomas Gleixner
2009-05-01 21:53 ` Thomas Gleixner
2009-05-12 23:27 ` [Announce] 2.6.29.3-rt12 Thomas Gleixner
2009-05-13 0:16 ` Hugo Vincent
2009-05-13 10:19 ` Thomas Gleixner
2009-05-13 10:24 ` Peter Zijlstra
2009-05-13 11:05 ` Thomas Gleixner
2009-05-22 13:02 ` [Announce] 2.6.29.4-rt15 Thomas Gleixner
2009-05-25 13:47 ` 2.6.29.4-rt16 Thomas Gleixner
2009-06-03 4:55 ` 2.6.29.4-rt16 GeunSik Lim
2009-06-10 17:02 ` [Announce] 2.6.29.4-rt17 Thomas Gleixner
2009-06-12 17:31 ` [Announce] 2.6.29.4-rt18 Thomas Gleixner
2009-06-15 9:19 ` 2.6.29.4-rt19 Thomas Gleixner
2009-06-17 8:45 ` [ANNOUNCE] 2.6.29.5-rt21 Thomas Gleixner
2009-06-23 12:30 ` [ANNOUNCE] 2.6.29.5-rt22 Thomas Gleixner
2009-07-09 18:25 ` [ANNOUNCE] 2.6.29.6-rt23 Thomas Gleixner
2009-07-10 18:03 ` Fernando Lopez-Lezcano
2009-07-10 18:29 ` Thomas Gleixner
2009-07-11 0:17 ` Fernando Lopez-Lezcano
2009-07-14 9:12 ` Jaswinder Singh Rajput
2009-08-11 10:52 ` Jan Engelhardt
2009-09-12 9:44 ` Jan Engelhardt
2009-07-30 0:48 ` [ANNOUNCE] 2.6.31-rc4-rt1 Thomas Gleixner
2009-07-30 9:56 ` Tim Blechmann
2009-07-30 23:04 ` Darren Hart
2009-07-30 23:20 ` Darren Hart
2009-07-31 14:12 ` Clark Williams
2009-07-31 23:22 ` Frederic Weisbecker
2009-08-01 0:42 ` Darren Hart
2009-08-01 1:20 ` Frederic Weisbecker
2009-08-01 9:48 ` Thomas Meyer
2009-08-05 1:30 ` john stultz
2009-08-05 6:06 ` gowrishankar
2009-08-05 13:32 ` Clark Williams
2009-08-06 6:46 ` [ANNOUNCE] 2.6.31-rc4-rt1 (problem with CONFIG_SYSFS_DEPRECATED_V2) gowrishankar
2009-08-06 14:36 ` Clark Williams
2009-08-06 14:46 ` Sven-Thorsten Dietrich
2009-08-06 14:55 ` John Kacur
2009-08-06 16:39 ` gowrishankar
2009-08-05 19:20 ` [ANNOUNCE] 2.6.31-rc4-rt1 Will Schmidt
2009-08-11 18:09 ` Thomas Gleixner
2009-08-12 20:45 ` Will Schmidt
2009-08-13 7:30 ` Thomas Gleixner
2009-08-13 15:04 ` Will Schmidt
2009-08-07 4:26 ` Sripathi Kodi
2009-08-07 14:30 ` Darren Hart
2009-08-07 20:39 ` Uwe Kleine-König
2009-08-07 20:42 ` [PATCH 1/6] ucb1x00: include linux/semaphore.h Uwe Kleine-König
2009-08-07 20:42 ` [PATCH 2/6] s3c2443-ac97: convert semaphore to mutex Uwe Kleine-König
2009-08-08 7:57 ` Mark Brown
2009-08-07 20:42 ` [PATCH 3/6] [ARM] msm: include linux/cache.h in proc_comm.c Uwe Kleine-König
2009-08-07 20:42 ` [PATCH 4/6] [ARM] ixp2000: fix type of ixp2000_timer_interrupt Uwe Kleine-König
2009-08-07 20:42 ` [PATCH 5/6] [NET] ixp2000/enp2611: don't set non-existent member get_stats Uwe Kleine-König
2009-08-10 4:49 ` David Miller
2009-08-10 9:40 ` Uwe Kleine-König
2009-08-10 15:00 ` David Miller
2009-08-07 20:42 ` [PATCH 6/6] [ARM] Use atomic_spin_lock/atomic_spin_unlock for irqdesc lock Uwe Kleine-König
2009-08-07 20:54 ` Uwe Kleine-König
2009-08-07 20:55 ` Uwe Kleine-König
2009-08-09 9:36 ` [PATCH RT 7/6] include linux/interrupt.h in mm/bounce.c Uwe Kleine-König
2009-08-09 9:36 ` [PATCH RT 8/6] [ARM, WATCHDOG] davinci: include mach/timex.h in davinci_wdt.c Uwe Kleine-König
2009-08-09 9:36 ` [PATCH RT 9/6] [RFH] Build failure on 2.6.31-rc4-rt1 in mm/highmem.c Uwe Kleine-König
2009-08-13 21:34 ` [PATCH] [RFC, RT] fix kmap_high_get Uwe Kleine-König
2009-08-14 14:02 ` [PATCH -rt] Fix kmap_high_get() Peter Zijlstra
2009-08-14 15:58 ` Nicolas Pitre
2009-08-14 20:13 ` Uwe Kleine-König
2009-08-09 9:43 ` [PATCH RT 8/6] [ARM, WATCHDOG] davinci: include mach/timex.h in davinci_wdt.c Russell King - ARM Linux
2009-08-10 16:48 ` Kevin Hilman
2009-08-10 17:26 ` Russell King - ARM Linux
2009-08-10 21:04 ` Kevin Hilman
2009-08-10 22:02 ` Russell King - ARM Linux
2009-08-13 15:06 ` Kevin Hilman
2009-08-16 14:08 ` Wim Van Sebroeck
2009-08-16 20:41 ` [ANNOUNCE] 2.6.31-rc6-rt2 Thomas Gleixner
2009-08-18 20:03 ` [ANNOUNCE] 2.6.31-rc6-rt4 Thomas Gleixner
2009-08-19 21:48 ` [ANNOUNCE] 2.6.31-rc6-rt5 Thomas Gleixner
2009-08-20 2:19 ` john stultz
2009-08-20 15:29 ` Dinakar Guniguntala
2009-08-21 21:26 ` [ANNOUNCE] 2.6.31-rc6-rt6 Thomas Gleixner
2009-08-26 17:23 ` [ANNOUNCE] 2.6.31-rc7-rt8 Thomas Gleixner
2009-08-27 11:03 ` Kevin Hilman
2009-08-28 21:36 ` Thomas Gleixner
2009-09-15 21:11 ` [ANNOUNCE] 2.6.31-rt10 Thomas Gleixner
2009-09-15 22:30 ` Thomas Gleixner
2009-09-18 22:39 ` [ANNOUNCE] 2.6.31-rt11 Thomas Gleixner
2009-09-19 4:34 ` Jaswinder Singh Rajput
2009-09-19 13:38 ` Steven Rostedt
2009-09-19 15:01 ` Jaswinder Singh Rajput
2009-09-20 23:22 ` Jon Masters
2009-09-20 23:34 ` Mark Knecht
2009-09-22 18:31 ` Darren Hart
2009-09-22 19:01 ` Clark Williams
2009-09-23 16:18 ` Darren Hart
2009-09-23 15:39 ` Jan Blunck
2009-09-23 16:25 ` Thomas Gleixner
2009-09-24 15:16 ` Jan Blunck
2009-09-23 21:33 ` Will Schmidt
2009-10-06 10:15 ` [ANNOUNCE] 2.6.31.2-rt13 Thomas Gleixner
2009-10-06 18:23 ` Remy Bohmer
2009-10-06 19:23 ` Thomas Gleixner
2009-10-06 20:07 ` Thomas Gleixner
2009-10-07 7:13 ` Remy Bohmer
2009-10-13 15:46 ` Remy Bohmer
2009-10-13 17:11 ` Thomas Gleixner
2009-10-14 10:02 ` [ANNOUNCE] 2.6.31.4-rt14 Thomas Gleixner
2009-11-04 2:13 ` Fernando Lopez-Lezcano
2009-11-04 8:38 ` Uwe Kleine-König
2009-11-05 19:33 ` Fernando Lopez-Lezcano
2009-11-05 19:41 ` Thomas Gleixner
2009-11-05 19:44 ` Fernando Lopez-Lezcano
2009-11-06 16:46 ` [ANNOUNCE] 2.6.31.5-rt17 Thomas Gleixner
2009-11-10 12:28 ` [ANNOUNCE] 2.6.31.6-rt19 Thomas Gleixner
2010-01-21 21:23 ` [ANNOUNCE] 2.6.31.12-rt20 Thomas Gleixner
2010-01-25 10:33 ` ARM fixes for 2.6.31.12-rt20 Uwe Kleine-König
2010-01-25 10:44 ` [PATCH] Rework kmap_high_get after kmap locking is gone Uwe Kleine-König
2010-01-25 12:45 ` ARM fixes for 2.6.31.12-rt20 Thomas Gleixner
2010-01-25 13:07 ` Uwe Kleine-König
2010-02-18 16:54 ` [ANNOUNCE] 2.6.31.12-rt21 Thomas Gleixner
2010-02-19 8:22 ` Xavier Miller
2010-02-21 23:24 ` [ANNOUNCE] 2.6.33-rc8-rt1 Thomas Gleixner
2010-02-22 11:11 ` John Kacur
2010-02-22 11:28 ` Thomas Gleixner
2010-02-22 12:23 ` John Kacur
2010-02-22 12:35 ` Luis Claudio R. Goncalves
2010-02-22 15:16 ` Thomas Gleixner
2010-02-22 15:53 ` John Kacur
2010-02-22 16:12 ` John Kacur
2010-02-24 1:08 ` GeunSik Lim
2010-02-24 1:19 ` Dhaval Giani
2010-02-24 14:43 ` GeunSik Lim
2010-02-24 15:09 ` Thomas Gleixner
2010-02-24 16:52 ` GeunSik Lim
2010-02-24 17:05 ` GeunSik Lim
2010-02-24 17:40 ` GeunSik Lim
2010-02-24 21:46 ` GeunSik Lim
2010-02-24 17:52 ` Thomas Gleixner
2010-02-24 21:54 ` GeunSik Lim
2010-02-24 4:40 ` Sujit K M
2010-02-22 13:27 ` [patch] latency_hist: fix small memory leak Dan Carpenter
2010-02-24 7:05 ` Carsten Emde
2010-02-22 13:29 ` [ANNOUNCE] 2.6.33-rc8-rt1 Dan Carpenter
2010-02-24 7:15 ` Carsten Emde
2010-02-24 12:20 ` 2.6.33-rc8-rt1 on Beagle Chatterjee, Amit
2010-02-25 11:06 ` Chatterjee, Amit
2010-03-01 15:06 ` Uwe Kleine-König
2010-03-01 16:14 ` Thomas Gleixner
2010-02-22 13:36 ` [ANNOUNCE] 2.6.33-rc8-rt1 Dan Carpenter
2010-02-22 15:00 ` Thomas Gleixner
2010-02-23 9:46 ` gowrishankar
2010-02-23 21:58 ` Arnaldo Carvalho de Melo
2010-02-23 19:01 ` [ANNOUNCE] 2.6.31.12-rt21 Fernando Lopez-Lezcano
2010-02-23 20:12 ` Peter Zijlstra
2009-09-02 15:25 ` [ANNOUNCE] 2.6.31-rc7-rt8 Wu Zhangjin
2009-08-18 21:04 ` [ANNOUNCE] 2.6.31-rc6-rt2 Will Schmidt
2009-08-18 21:14 ` Thomas Gleixner
2009-08-18 23:12 ` Will Schmidt
2009-08-19 17:12 ` Will Schmidt
2009-08-18 22:31 ` john stultz
2009-08-18 22:50 ` john stultz
2009-08-19 0:17 ` john stultz
2009-07-10 18:06 ` [ANNOUNCE] 2.6.29.5-rt22 Fernando Lopez-Lezcano
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=1234433770.23438.210.camel@twins \
--to=peterz@infradead.org \
--cc=ce@ceag.ch \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rt-users@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=rostedt@goodmis.org \
--cc=rusty@rustcorp.com.au \
--cc=tglx@tglx.de \
--cc=williams@redhat.com \
/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 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).