mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [GIT pull] irq fixes for 2.6.31
@ 2009-08-17 19:27 Thomas Gleixner
  2009-08-17 20:42 ` Linus Torvalds
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Gleixner @ 2009-08-17 19:27 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Andrew Morton, LKML, Ingo Molnar

Linus,

Please pull the latest irq-fixes-for-linus git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git irq-fixes-for-linus

Thanks,

	tglx

------------------>
Thomas Gleixner (1):
      genirq: Do not wakeup irq thread from __setup_irq() and set action->irq


 kernel/irq/manage.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index d222515..76fa62f 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -607,7 +607,6 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
 		 */
 		get_task_struct(t);
 		new->thread = t;
-		wake_up_process(t);
 	}
 
 	/*
@@ -690,6 +689,7 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
 				(int)(new->flags & IRQF_TRIGGER_MASK));
 	}
 
+	new->irq = irq;
 	*old_ptr = new;
 
 	/* Reset broken irq detection when installing new handler */
@@ -707,7 +707,6 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
 
 	spin_unlock_irqrestore(&desc->lock, flags);
 
-	new->irq = irq;
 	register_irq_proc(irq, desc);
 	new->dir = NULL;
 	register_handler_proc(irq, new);

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

* Re: [GIT pull] irq fixes for 2.6.31
  2009-08-17 19:27 [GIT pull] irq fixes for 2.6.31 Thomas Gleixner
@ 2009-08-17 20:42 ` Linus Torvalds
  2009-08-17 21:52   ` Thomas Gleixner
  0 siblings, 1 reply; 7+ messages in thread
From: Linus Torvalds @ 2009-08-17 20:42 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: Andrew Morton, LKML, Ingo Molnar



On Mon, 17 Aug 2009, Thomas Gleixner wrote:
> 
> Please pull the latest irq-fixes-for-linus git tree from:
> 
>    git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git irq-fixes-for-linus
> 
> Thanks,
> 
> 	tglx
> 
> ------------------>
> Thomas Gleixner (1):
>       genirq: Do not wakeup irq thread from __setup_irq() and set action->irq
> 
> 
>  kernel/irq/manage.c |    3 +--
>  1 files changed, 1 insertions(+), 2 deletions(-)

This is not what I get when I pull. Instead I get the "genirq: Prevent 
race between free_irq() and handle_IRQ_event()" commit that I thought we 
agreed wasn't correct.

		Linus

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

* Re: [GIT pull] irq fixes for 2.6.31
  2009-08-17 20:42 ` Linus Torvalds
@ 2009-08-17 21:52   ` Thomas Gleixner
  2009-08-18 20:33     ` Linus Torvalds
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Gleixner @ 2009-08-17 21:52 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Andrew Morton, LKML, Ingo Molnar

Linus,

On Mon, 17 Aug 2009, Linus Torvalds wrote:
> On Mon, 17 Aug 2009, Thomas Gleixner wrote:
> > 
> > Please pull the latest irq-fixes-for-linus git tree from:
> > 
> >    git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git irq-fixes-for-linus
> > 
> > Thanks,
> > 
> > 	tglx
> > 
> > ------------------>
> > Thomas Gleixner (1):
> >       genirq: Do not wakeup irq thread from __setup_irq() and set action->irq
> > 
> > 
> >  kernel/irq/manage.c |    3 +--
> >  1 files changed, 1 insertions(+), 2 deletions(-)
> 
> This is not what I get when I pull. Instead I get the "genirq: Prevent 
> race between free_irq() and handle_IRQ_event()" commit that I thought we 
> agreed wasn't correct.

I have no idea what went wrong this time. I force pushed the branch
and pulled it back on a test machine to compile and test boot. The
test machine still has the correct sha1 for that branch while
master.kernel.org did not. I probably pushed out some other branch
between the point where I sent the pull request and the time you
pulled, but I can not find any hint in my bash history which would
explain why it wreckaged the irq-fixes-for-linus branch.

Just double checked that it is pushed out to git://.... as well.

Thanks,

	tglx

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

* Re: [GIT pull] irq fixes for 2.6.31
  2009-08-17 21:52   ` Thomas Gleixner
@ 2009-08-18 20:33     ` Linus Torvalds
  2009-08-18 20:37       ` Thomas Gleixner
  0 siblings, 1 reply; 7+ messages in thread
From: Linus Torvalds @ 2009-08-18 20:33 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: Andrew Morton, LKML, Ingo Molnar



On Mon, 17 Aug 2009, Thomas Gleixner wrote:
> 
> I have no idea what went wrong this time. I force pushed the branch
> and pulled it back on a test machine to compile and test boot. The
> test machine still has the correct sha1 for that branch while
> master.kernel.org did not. I probably pushed out some other branch
> between the point where I sent the pull request and the time you
> pulled, but I can not find any hint in my bash history which would
> explain why it wreckaged the irq-fixes-for-linus branch.
> 
> Just double checked that it is pushed out to git://.... as well.

It's still wrong. 

	http://git.kernel.org/?p=linux/kernel/git/tip/linux-2.6-tip.git;a=shortlog;h=irq-fixes-for-linus

still does _not_ show that

	genirq: Do not wakeup irq thread from __setup_irq() and set action->irq

commit, but the broken one.

		Linus

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

* Re: [GIT pull] irq fixes for 2.6.31
  2009-08-18 20:33     ` Linus Torvalds
@ 2009-08-18 20:37       ` Thomas Gleixner
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Gleixner @ 2009-08-18 20:37 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Andrew Morton, LKML, Ingo Molnar

On Tue, 18 Aug 2009, Linus Torvalds wrote:
> On Mon, 17 Aug 2009, Thomas Gleixner wrote:
> > 
> > I have no idea what went wrong this time. I force pushed the branch
> > and pulled it back on a test machine to compile and test boot. The
> > test machine still has the correct sha1 for that branch while
> > master.kernel.org did not. I probably pushed out some other branch
> > between the point where I sent the pull request and the time you
> > pulled, but I can not find any hint in my bash history which would
> > explain why it wreckaged the irq-fixes-for-linus branch.
> > 
> > Just double checked that it is pushed out to git://.... as well.
> 
> It's still wrong. 
> 
> 	http://git.kernel.org/?p=linux/kernel/git/tip/linux-2.6-tip.git;a=shortlog;h=irq-fixes-for-linus
> 
> still does _not_ show that
> 
> 	genirq: Do not wakeup irq thread from __setup_irq() and set action->irq
> 
> commit, but the broken one.

Err, no. Please see the mail I sent an hour ago.

Even the http.... interface shows the one I want you to pull:

     69ab849439b506cd8dd2879527fdb64d95dd5211

Thanks,

	tglx

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

* [GIT pull] irq fixes for 2.6.31
@ 2009-08-18 19:31 Thomas Gleixner
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Gleixner @ 2009-08-18 19:31 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Andrew Morton, LKML, Ingo Molnar

Linus,

Please pull the latest irq-fixes-for-linus git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git irq-fixes-for-linus

I zapped the yesterdays patch as it triggered the hung_task detector
when no hard interrupt came in. So I moved the wakeup to the end of
setup_irq for now. I still need to figure out why the hung_task
detector triggers on that despite claiming otherwise in its comments.

Verified today that the branch contains really what I want you to pull :)

Thanks,

	tglx

------------------>
Thomas Gleixner (1):
      genirq: Wake up irq thread after action has been installed


 kernel/irq/manage.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index d222515..0ec9ed8 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -607,7 +607,6 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
 		 */
 		get_task_struct(t);
 		new->thread = t;
-		wake_up_process(t);
 	}
 
 	/*
@@ -690,6 +689,7 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
 				(int)(new->flags & IRQF_TRIGGER_MASK));
 	}
 
+	new->irq = irq;
 	*old_ptr = new;
 
 	/* Reset broken irq detection when installing new handler */
@@ -707,7 +707,13 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
 
 	spin_unlock_irqrestore(&desc->lock, flags);
 
-	new->irq = irq;
+	/*
+	 * Strictly no need to wake it up, but hung_task complains
+	 * when no hard interrupt wakes the thread up.
+	 */
+	if (new->thread)
+		wake_up_process(new->thread);
+
 	register_irq_proc(irq, desc);
 	new->dir = NULL;
 	register_handler_proc(irq, new);

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

* [GIT pull] irq fixes for 2.6.31
@ 2009-07-22 21:22 Thomas Gleixner
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Gleixner @ 2009-07-22 21:22 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Andrew Morton, LKML

Linus,

Please pull the latest irq-fixes-for-linus git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git irq-fixes-for-linus

Thanks,

	tglx (hiding in a full body sized brown paperbag)

------------------>
Bruno Premont (1):
      genirq: Fix UP compile failure caused by irq_thread_check_affinity


 kernel/irq/manage.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index f0de36f..61c679d 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -451,6 +451,7 @@ static int irq_wait_for_interrupt(struct irqaction *action)
 	return -1;
 }
 
+#ifdef CONFIG_SMP
 /*
  * Check whether we need to change the affinity of the interrupt thread.
  */
@@ -478,6 +479,10 @@ irq_thread_check_affinity(struct irq_desc *desc, struct irqaction *action)
 	set_cpus_allowed_ptr(current, mask);
 	free_cpumask_var(mask);
 }
+#else
+static inline void
+irq_thread_check_affinity(struct irq_desc *desc, struct irqaction *action) { }
+#endif
 
 /*
  * Interrupt handler thread

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

end of thread, other threads:[~2009-08-18 20:38 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-08-17 19:27 [GIT pull] irq fixes for 2.6.31 Thomas Gleixner
2009-08-17 20:42 ` Linus Torvalds
2009-08-17 21:52   ` Thomas Gleixner
2009-08-18 20:33     ` Linus Torvalds
2009-08-18 20:37       ` Thomas Gleixner
  -- strict thread matches above, loose matches on Subject: below --
2009-08-18 19:31 Thomas Gleixner
2009-07-22 21:22 Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®