Re: [PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-08-06 Thread Ingo Molnar

* Daniel Walker <[EMAIL PROTECTED]> wrote:

> On Mon, 2007-07-30 at 11:27 +0200, Ingo Molnar wrote:
> > * Daniel Walker <[EMAIL PROTECTED]> wrote:
> > 
> > > @@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
> > >  {
> > >   __do_raise_softirq_irqoff(nr);
> > >  
> > > +#ifdef CONFIG_PREEMPT_SOFTIRQS
> > >   wakeup_softirqd(nr);
> > > +#endif
> > 
> > thanks, applied. People rarely run the -rt kernel just to turn off 
> > PREEMPT_RT, that's why this bug was there ;-)
> 
> Ultimately, all modes should function correctly right?

yes, of course - especially once any of the components nears upstream 
integration ;-)

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-08-06 Thread Ingo Molnar

* Daniel Walker [EMAIL PROTECTED] wrote:

 On Mon, 2007-07-30 at 11:27 +0200, Ingo Molnar wrote:
  * Daniel Walker [EMAIL PROTECTED] wrote:
  
   @@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
{
 __do_raise_softirq_irqoff(nr);

   +#ifdef CONFIG_PREEMPT_SOFTIRQS
 wakeup_softirqd(nr);
   +#endif
  
  thanks, applied. People rarely run the -rt kernel just to turn off 
  PREEMPT_RT, that's why this bug was there ;-)
 
 Ultimately, all modes should function correctly right?

yes, of course - especially once any of the components nears upstream 
integration ;-)

Ingo
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-07-30 Thread Daniel Walker
On Mon, 2007-07-30 at 11:27 +0200, Ingo Molnar wrote:
> * Daniel Walker <[EMAIL PROTECTED]> wrote:
> 
> > @@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
> >  {
> > __do_raise_softirq_irqoff(nr);
> >  
> > +#ifdef CONFIG_PREEMPT_SOFTIRQS
> > wakeup_softirqd(nr);
> > +#endif
> 
> thanks, applied. People rarely run the -rt kernel just to turn off 
> PREEMPT_RT, that's why this bug was there ;-)

Ultimately, all modes should function correctly right?

Daniel

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-07-30 Thread Ingo Molnar

* Daniel Walker <[EMAIL PROTECTED]> wrote:

> @@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
>  {
>   __do_raise_softirq_irqoff(nr);
>  
> +#ifdef CONFIG_PREEMPT_SOFTIRQS
>   wakeup_softirqd(nr);
> +#endif

thanks, applied. People rarely run the -rt kernel just to turn off 
PREEMPT_RT, that's why this bug was there ;-)

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-07-30 Thread Ingo Molnar

* Daniel Walker [EMAIL PROTECTED] wrote:

 @@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
  {
   __do_raise_softirq_irqoff(nr);
  
 +#ifdef CONFIG_PREEMPT_SOFTIRQS
   wakeup_softirqd(nr);
 +#endif

thanks, applied. People rarely run the -rt kernel just to turn off 
PREEMPT_RT, that's why this bug was there ;-)

Ingo
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-07-30 Thread Daniel Walker
On Mon, 2007-07-30 at 11:27 +0200, Ingo Molnar wrote:
 * Daniel Walker [EMAIL PROTECTED] wrote:
 
  @@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
   {
  __do_raise_softirq_irqoff(nr);
   
  +#ifdef CONFIG_PREEMPT_SOFTIRQS
  wakeup_softirqd(nr);
  +#endif
 
 thanks, applied. People rarely run the -rt kernel just to turn off 
 PREEMPT_RT, that's why this bug was there ;-)

Ultimately, all modes should function correctly right?

Daniel

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-07-29 Thread Daniel Walker
raise_softirq is called every timer interrupt in run_local_timers(),
which causes a thread wakeup to happen every timer interrupt. This
happens in !CONFIG_PREEMPT_SOFTIRQS, which means the wakeup is most
likely not needed. In addition it also fouls calc_load() since it's,
agian, observing at least one thread running on every invocation.

Signed-off-by: Daniel Walker <[EMAIL PROTECTED]>
 
---
 kernel/softirq.c |2 ++
 1 file changed, 2 insertions(+)

Index: linux-2.6.22/kernel/softirq.c
===
--- linux-2.6.22.orig/kernel/softirq.c
+++ linux-2.6.22/kernel/softirq.c
@@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
 {
__do_raise_softirq_irqoff(nr);
 
+#ifdef CONFIG_PREEMPT_SOFTIRQS
wakeup_softirqd(nr);
+#endif
 }
 
 EXPORT_SYMBOL(raise_softirq_irqoff);

-- 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH -rt 4/9] ifdef raise_softirq_irqoff wakeup

2007-07-29 Thread Daniel Walker
raise_softirq is called every timer interrupt in run_local_timers(),
which causes a thread wakeup to happen every timer interrupt. This
happens in !CONFIG_PREEMPT_SOFTIRQS, which means the wakeup is most
likely not needed. In addition it also fouls calc_load() since it's,
agian, observing at least one thread running on every invocation.

Signed-off-by: Daniel Walker [EMAIL PROTECTED]
 
---
 kernel/softirq.c |2 ++
 1 file changed, 2 insertions(+)

Index: linux-2.6.22/kernel/softirq.c
===
--- linux-2.6.22.orig/kernel/softirq.c
+++ linux-2.6.22/kernel/softirq.c
@@ -508,7 +508,9 @@ inline fastcall void raise_softirq_irqof
 {
__do_raise_softirq_irqoff(nr);
 
+#ifdef CONFIG_PREEMPT_SOFTIRQS
wakeup_softirqd(nr);
+#endif
 }
 
 EXPORT_SYMBOL(raise_softirq_irqoff);

-- 
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/