All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai] [PATCH] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
@ 2015-08-26 17:01 Henning Schild
  2015-08-26 18:32 ` Jan Kiszka
  0 siblings, 1 reply; 8+ messages in thread
From: Henning Schild @ 2015-08-26 17:01 UTC (permalink / raw)
  To: xenomai

vector_irq must not contain the same irq number for two different
vectors because ipipe dispatches based on irq numbers.
For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
inserts a new entry in vector_irq. To ensure the required uniqueness
we have to make sure Linux will never make a vector point to irq number
IRQ_MOVE_CLEANUP_VECTOR.

Before that patch ipipe did dispatch device interrupts that happened to
receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the cleanup function, the
device effectively lost its interrupts. Up to 3.18 that was no problem
since the allocator did not hand out the number ipipe failed to reserve.

Signed-off-by: Henning Schild <henning.schild@siemens.com>
---
 arch/x86/kernel/irqinit.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
index e850981..5ca0ec7 100644
--- a/arch/x86/kernel/irqinit.c
+++ b/arch/x86/kernel/irqinit.c
@@ -143,9 +143,12 @@ static void __init smp_intr_init(void)
 	/* Low priority IPI to cleanup after moving an irq */
 	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR, irq_move_cleanup_interrupt);
 	set_bit(IRQ_MOVE_CLEANUP_VECTOR, used_vectors);
+#ifdef CONFIG_IPIPE
+	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR != irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0));
 	for_each_possible_cpu(cpu)
 		per_cpu(vector_irq, cpu)[IRQ_MOVE_CLEANUP_VECTOR] =
 			IRQ_MOVE_CLEANUP_VECTOR;
+#endif
 
 	/* IPI used for rebooting/stopping */
 	alloc_intr_gate(REBOOT_VECTOR, reboot_interrupt);
-- 
2.4.6



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

* Re: [Xenomai] [PATCH] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
  2015-08-26 17:01 [Xenomai] [PATCH] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR Henning Schild
@ 2015-08-26 18:32 ` Jan Kiszka
  2015-08-27  8:42   ` Henning Schild
  0 siblings, 1 reply; 8+ messages in thread
From: Jan Kiszka @ 2015-08-26 18:32 UTC (permalink / raw)
  To: Henning Schild, xenomai

On 2015-08-26 19:01, Henning Schild wrote:
> vector_irq must not contain the same irq number for two different
> vectors because ipipe dispatches based on irq numbers.
> For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
> inserts a new entry in vector_irq. To ensure the required uniqueness
> we have to make sure Linux will never make a vector point to irq number
> IRQ_MOVE_CLEANUP_VECTOR.
> 
> Before that patch ipipe did dispatch device interrupts that happened to
> receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the cleanup function, the
> device effectively lost its interrupts. Up to 3.18 that was no problem
> since the allocator did not hand out the number ipipe failed to reserve.
> 
> Signed-off-by: Henning Schild <henning.schild@siemens.com>
> ---
>  arch/x86/kernel/irqinit.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
> index e850981..5ca0ec7 100644
> --- a/arch/x86/kernel/irqinit.c
> +++ b/arch/x86/kernel/irqinit.c
> @@ -143,9 +143,12 @@ static void __init smp_intr_init(void)
>  	/* Low priority IPI to cleanup after moving an irq */
>  	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR, irq_move_cleanup_interrupt);
>  	set_bit(IRQ_MOVE_CLEANUP_VECTOR, used_vectors);
> +#ifdef CONFIG_IPIPE
> +	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR != irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0));
>  	for_each_possible_cpu(cpu)
>  		per_cpu(vector_irq, cpu)[IRQ_MOVE_CLEANUP_VECTOR] =
>  			IRQ_MOVE_CLEANUP_VECTOR;
> +#endif

Looks like you picked up the instrumentation hunk instead of the actual
fix. ;)

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux


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

* Re: [Xenomai] [PATCH] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
  2015-08-26 18:32 ` Jan Kiszka
@ 2015-08-27  8:42   ` Henning Schild
  2015-08-27  9:12     ` Gilles Chanteperdrix
  0 siblings, 1 reply; 8+ messages in thread
From: Henning Schild @ 2015-08-27  8:42 UTC (permalink / raw)
  To: Jan Kiszka; +Cc: xenomai

On Wed, 26 Aug 2015 20:32:57 +0200
Jan Kiszka <jan.kiszka@siemens.com> wrote:

> On 2015-08-26 19:01, Henning Schild wrote:
> > vector_irq must not contain the same irq number for two different
> > vectors because ipipe dispatches based on irq numbers.
> > For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
> > inserts a new entry in vector_irq. To ensure the required uniqueness
> > we have to make sure Linux will never make a vector point to irq
> > number IRQ_MOVE_CLEANUP_VECTOR.
> > 
> > Before that patch ipipe did dispatch device interrupts that
> > happened to receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the
> > cleanup function, the device effectively lost its interrupts. Up to
> > 3.18 that was no problem since the allocator did not hand out the
> > number ipipe failed to reserve.
> > 
> > Signed-off-by: Henning Schild <henning.schild@siemens.com>
> > ---
> >  arch/x86/kernel/irqinit.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
> > index e850981..5ca0ec7 100644
> > --- a/arch/x86/kernel/irqinit.c
> > +++ b/arch/x86/kernel/irqinit.c
> > @@ -143,9 +143,12 @@ static void __init smp_intr_init(void)
> >  	/* Low priority IPI to cleanup after moving an irq */
> >  	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR,
> > irq_move_cleanup_interrupt); set_bit(IRQ_MOVE_CLEANUP_VECTOR,
> > used_vectors); +#ifdef CONFIG_IPIPE
> > +	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR !=
> > irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0));
> > for_each_possible_cpu(cpu) per_cpu(vector_irq,
> > cpu)[IRQ_MOVE_CLEANUP_VECTOR] = IRQ_MOVE_CLEANUP_VECTOR;
> > +#endif
> 
> Looks like you picked up the instrumentation hunk instead of the
> actual fix. ;)

Does it? No that is the fix. Alloc the irq number before using it and
BUG if that fails.

Henning


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

* Re: [Xenomai] [PATCH] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
  2015-08-27  8:42   ` Henning Schild
@ 2015-08-27  9:12     ` Gilles Chanteperdrix
  2015-08-27  9:15       ` Jan Kiszka
  2015-08-27  9:39       ` [Xenomai] [PATCHv2] " Henning Schild
  0 siblings, 2 replies; 8+ messages in thread
From: Gilles Chanteperdrix @ 2015-08-27  9:12 UTC (permalink / raw)
  To: Henning Schild; +Cc: Jan Kiszka, xenomai

On Thu, Aug 27, 2015 at 10:42:48AM +0200, Henning Schild wrote:
> On Wed, 26 Aug 2015 20:32:57 +0200
> Jan Kiszka <jan.kiszka@siemens.com> wrote:
> 
> > On 2015-08-26 19:01, Henning Schild wrote:
> > > vector_irq must not contain the same irq number for two different
> > > vectors because ipipe dispatches based on irq numbers.
> > > For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
> > > inserts a new entry in vector_irq. To ensure the required uniqueness
> > > we have to make sure Linux will never make a vector point to irq
> > > number IRQ_MOVE_CLEANUP_VECTOR.
> > > 
> > > Before that patch ipipe did dispatch device interrupts that
> > > happened to receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the
> > > cleanup function, the device effectively lost its interrupts. Up to
> > > 3.18 that was no problem since the allocator did not hand out the
> > > number ipipe failed to reserve.
> > > 
> > > Signed-off-by: Henning Schild <henning.schild@siemens.com>
> > > ---
> > >  arch/x86/kernel/irqinit.c | 3 +++
> > >  1 file changed, 3 insertions(+)
> > > 
> > > diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
> > > index e850981..5ca0ec7 100644
> > > --- a/arch/x86/kernel/irqinit.c
> > > +++ b/arch/x86/kernel/irqinit.c
> > > @@ -143,9 +143,12 @@ static void __init smp_intr_init(void)
> > >  	/* Low priority IPI to cleanup after moving an irq */
> > >  	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR,
> > > irq_move_cleanup_interrupt); set_bit(IRQ_MOVE_CLEANUP_VECTOR,
> > > used_vectors); +#ifdef CONFIG_IPIPE
> > > +	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR !=
> > > irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0));
> > > for_each_possible_cpu(cpu) per_cpu(vector_irq,
> > > cpu)[IRQ_MOVE_CLEANUP_VECTOR] = IRQ_MOVE_CLEANUP_VECTOR;
> > > +#endif
> > 
> > Looks like you picked up the instrumentation hunk instead of the
> > actual fix. ;)
> 
> Does it? No that is the fix. Alloc the irq number before using it and
> BUG if that fails.

BUG is like an assert: disabling CONFIG_BUG should not change the
behaviour.

-- 
					    Gilles.
https://click-hack.org


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

* Re: [Xenomai] [PATCH] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
  2015-08-27  9:12     ` Gilles Chanteperdrix
@ 2015-08-27  9:15       ` Jan Kiszka
  2015-08-27  9:39       ` [Xenomai] [PATCHv2] " Henning Schild
  1 sibling, 0 replies; 8+ messages in thread
From: Jan Kiszka @ 2015-08-27  9:15 UTC (permalink / raw)
  To: Gilles Chanteperdrix, Henning Schild; +Cc: xenomai

On 2015-08-27 11:12, Gilles Chanteperdrix wrote:
> On Thu, Aug 27, 2015 at 10:42:48AM +0200, Henning Schild wrote:
>> On Wed, 26 Aug 2015 20:32:57 +0200
>> Jan Kiszka <jan.kiszka@siemens.com> wrote:
>>
>>> On 2015-08-26 19:01, Henning Schild wrote:
>>>> vector_irq must not contain the same irq number for two different
>>>> vectors because ipipe dispatches based on irq numbers.
>>>> For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
>>>> inserts a new entry in vector_irq. To ensure the required uniqueness
>>>> we have to make sure Linux will never make a vector point to irq
>>>> number IRQ_MOVE_CLEANUP_VECTOR.
>>>>
>>>> Before that patch ipipe did dispatch device interrupts that
>>>> happened to receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the
>>>> cleanup function, the device effectively lost its interrupts. Up to
>>>> 3.18 that was no problem since the allocator did not hand out the
>>>> number ipipe failed to reserve.
>>>>
>>>> Signed-off-by: Henning Schild <henning.schild@siemens.com>
>>>> ---
>>>>  arch/x86/kernel/irqinit.c | 3 +++
>>>>  1 file changed, 3 insertions(+)
>>>>
>>>> diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
>>>> index e850981..5ca0ec7 100644
>>>> --- a/arch/x86/kernel/irqinit.c
>>>> +++ b/arch/x86/kernel/irqinit.c
>>>> @@ -143,9 +143,12 @@ static void __init smp_intr_init(void)
>>>>  	/* Low priority IPI to cleanup after moving an irq */
>>>>  	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR,
>>>> irq_move_cleanup_interrupt); set_bit(IRQ_MOVE_CLEANUP_VECTOR,
>>>> used_vectors); +#ifdef CONFIG_IPIPE
>>>> +	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR !=
>>>> irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0));
>>>> for_each_possible_cpu(cpu) per_cpu(vector_irq,
>>>> cpu)[IRQ_MOVE_CLEANUP_VECTOR] = IRQ_MOVE_CLEANUP_VECTOR;
>>>> +#endif
>>>
>>> Looks like you picked up the instrumentation hunk instead of the
>>> actual fix. ;)
>>
>> Does it? No that is the fix. Alloc the irq number before using it and
>> BUG if that fails.
> 
> BUG is like an assert: disabling CONFIG_BUG should not change the
> behaviour.

Right. I actually ignored the BUG_ON while looking at the patch and,
thus, missed the allocation. Don't put anything with side effects into
such checks.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux


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

* [Xenomai] [PATCHv2] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
  2015-08-27  9:12     ` Gilles Chanteperdrix
  2015-08-27  9:15       ` Jan Kiszka
@ 2015-08-27  9:39       ` Henning Schild
  2015-08-27  9:41         ` Jan Kiszka
  1 sibling, 1 reply; 8+ messages in thread
From: Henning Schild @ 2015-08-27  9:39 UTC (permalink / raw)
  To: xenomai; +Cc: Jan Kiszka

vector_irq must not contain the same irq number for two different
vectors because ipipe dispatches based on irq numbers.
For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
inserts a new entry in vector_irq. To ensure the required uniqueness
we have to make sure Linux will never make a vector point to irq number
IRQ_MOVE_CLEANUP_VECTOR.

Before that patch ipipe did dispatch device interrupts that happened to
receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the cleanup function, the
device effectively lost its interrupts. Up to 3.18 that was no problem
since the allocator did not hand out the number ipipe failed to reserve.

Signed-off-by: Henning Schild <henning.schild@siemens.com>
---
 arch/x86/kernel/irqinit.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
index e850981..5ca517f 100644
--- a/arch/x86/kernel/irqinit.c
+++ b/arch/x86/kernel/irqinit.c
@@ -126,6 +126,7 @@ static void __init smp_intr_init(void)
 #ifdef CONFIG_SMP
 #if defined(CONFIG_X86_64) || defined(CONFIG_X86_LOCAL_APIC)
 	unsigned cpu;
+	int ret;
 
 	/*
 	 * The reschedule interrupt is a CPU-to-CPU reschedule-helper
@@ -143,9 +144,13 @@ static void __init smp_intr_init(void)
 	/* Low priority IPI to cleanup after moving an irq */
 	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR, irq_move_cleanup_interrupt);
 	set_bit(IRQ_MOVE_CLEANUP_VECTOR, used_vectors);
+#ifdef CONFIG_IPIPE
+	ret = irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0);
+	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR != ret);
 	for_each_possible_cpu(cpu)
 		per_cpu(vector_irq, cpu)[IRQ_MOVE_CLEANUP_VECTOR] =
 			IRQ_MOVE_CLEANUP_VECTOR;
+#endif
 
 	/* IPI used for rebooting/stopping */
 	alloc_intr_gate(REBOOT_VECTOR, reboot_interrupt);
-- 
2.4.6



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

* Re: [Xenomai] [PATCHv2] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
  2015-08-27  9:39       ` [Xenomai] [PATCHv2] " Henning Schild
@ 2015-08-27  9:41         ` Jan Kiszka
  2015-08-27 10:20           ` [Xenomai] [PATCHv3] " Henning Schild
  0 siblings, 1 reply; 8+ messages in thread
From: Jan Kiszka @ 2015-08-27  9:41 UTC (permalink / raw)
  To: Henning Schild, xenomai

On 2015-08-27 11:39, Henning Schild wrote:
> vector_irq must not contain the same irq number for two different
> vectors because ipipe dispatches based on irq numbers.
> For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
> inserts a new entry in vector_irq. To ensure the required uniqueness
> we have to make sure Linux will never make a vector point to irq number
> IRQ_MOVE_CLEANUP_VECTOR.
> 
> Before that patch ipipe did dispatch device interrupts that happened to
> receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the cleanup function, the
> device effectively lost its interrupts. Up to 3.18 that was no problem
> since the allocator did not hand out the number ipipe failed to reserve.
> 
> Signed-off-by: Henning Schild <henning.schild@siemens.com>
> ---
>  arch/x86/kernel/irqinit.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
> index e850981..5ca517f 100644
> --- a/arch/x86/kernel/irqinit.c
> +++ b/arch/x86/kernel/irqinit.c
> @@ -126,6 +126,7 @@ static void __init smp_intr_init(void)
>  #ifdef CONFIG_SMP
>  #if defined(CONFIG_X86_64) || defined(CONFIG_X86_LOCAL_APIC)
>  	unsigned cpu;
> +	int ret;

__maybe_unused, or you'll get warnings when either IPIPE or BUG is disabled.

Jan

>  
>  	/*
>  	 * The reschedule interrupt is a CPU-to-CPU reschedule-helper
> @@ -143,9 +144,13 @@ static void __init smp_intr_init(void)
>  	/* Low priority IPI to cleanup after moving an irq */
>  	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR, irq_move_cleanup_interrupt);
>  	set_bit(IRQ_MOVE_CLEANUP_VECTOR, used_vectors);
> +#ifdef CONFIG_IPIPE
> +	ret = irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0);
> +	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR != ret);
>  	for_each_possible_cpu(cpu)
>  		per_cpu(vector_irq, cpu)[IRQ_MOVE_CLEANUP_VECTOR] =
>  			IRQ_MOVE_CLEANUP_VECTOR;
> +#endif
>  
>  	/* IPI used for rebooting/stopping */
>  	alloc_intr_gate(REBOOT_VECTOR, reboot_interrupt);
> 

-- 
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux


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

* [Xenomai] [PATCHv3] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR
  2015-08-27  9:41         ` Jan Kiszka
@ 2015-08-27 10:20           ` Henning Schild
  0 siblings, 0 replies; 8+ messages in thread
From: Henning Schild @ 2015-08-27 10:20 UTC (permalink / raw)
  To: xenomai; +Cc: Jan Kiszka

vector_irq must not contain the same irq number for two different
vectors because ipipe dispatches based on irq numbers.
For the special case of IRQ_MOVE_CLEANUP_VECTOR, the ipipe patch
inserts a new entry in vector_irq. To ensure the required uniqueness
we have to make sure Linux will never make a vector point to irq number
IRQ_MOVE_CLEANUP_VECTOR.

Before that patch ipipe did dispatch device interrupts that happened to
receive number 32 (IRQ_MOVE_CLEANUP_VECTOR) to the cleanup function, the
device effectively lost its interrupts. Up to 3.18 that was no problem
since the allocator did not hand out the number ipipe failed to reserve.

Signed-off-by: Henning Schild <henning.schild@siemens.com>
---
 arch/x86/kernel/irqinit.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
index e850981..f6f3cbe 100644
--- a/arch/x86/kernel/irqinit.c
+++ b/arch/x86/kernel/irqinit.c
@@ -125,7 +125,8 @@ static void __init smp_intr_init(void)
 {
 #ifdef CONFIG_SMP
 #if defined(CONFIG_X86_64) || defined(CONFIG_X86_LOCAL_APIC)
-	unsigned cpu;
+	unsigned __maybe_unused cpu;
+	int __maybe_unused ret;
 
 	/*
 	 * The reschedule interrupt is a CPU-to-CPU reschedule-helper
@@ -143,9 +144,13 @@ static void __init smp_intr_init(void)
 	/* Low priority IPI to cleanup after moving an irq */
 	set_intr_gate(IRQ_MOVE_CLEANUP_VECTOR, irq_move_cleanup_interrupt);
 	set_bit(IRQ_MOVE_CLEANUP_VECTOR, used_vectors);
+#ifdef CONFIG_IPIPE
+	ret = irq_alloc_descs(IRQ_MOVE_CLEANUP_VECTOR, 0, 1, 0);
+	BUG_ON(IRQ_MOVE_CLEANUP_VECTOR != ret);
 	for_each_possible_cpu(cpu)
 		per_cpu(vector_irq, cpu)[IRQ_MOVE_CLEANUP_VECTOR] =
 			IRQ_MOVE_CLEANUP_VECTOR;
+#endif
 
 	/* IPI used for rebooting/stopping */
 	alloc_intr_gate(REBOOT_VECTOR, reboot_interrupt);
-- 
2.4.6



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

end of thread, other threads:[~2015-08-27 10:20 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-26 17:01 [Xenomai] [PATCH] x86/ipipe: reserve irq num we use for IRQ_MOVE_CLEANUP_VECTOR Henning Schild
2015-08-26 18:32 ` Jan Kiszka
2015-08-27  8:42   ` Henning Schild
2015-08-27  9:12     ` Gilles Chanteperdrix
2015-08-27  9:15       ` Jan Kiszka
2015-08-27  9:39       ` [Xenomai] [PATCHv2] " Henning Schild
2015-08-27  9:41         ` Jan Kiszka
2015-08-27 10:20           ` [Xenomai] [PATCHv3] " Henning Schild

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.