public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
* [patch 3/5] git-ia64 versus genirq
@ 2006-08-17  7:07 horms
  2006-08-17  7:28 ` Andrew Morton
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: horms @ 2006-08-17  7:07 UTC (permalink / raw)
  To: linux-ia64

> commit 1f4c5c1fe2a6a74271989ec079af11e2bb8e2826
> tree a0da63a3dcc3ffd71653ecc039db416dbcaa86d4
> parent beada884dd437b509c26b39f1a0b0c6b31e6f340
> author Andrew Morton <akpm@osdl.org> 1151573360 -0700
> committer Tony Luck <tony.luck@intel.com> 1151607053 -0700
> 
> [IA64] git-ia64 versus genirq
> 
> Fix the git-ia64 tree after genirq merge.
> 
> Signed-off-by: Andrew Morton <akpm@osdl.org>
> Signed-off-by: Tony Luck <tony.luck@intel.com>

Patch from test branch of Tony Luck's ia64 tree.
This is needed for ia64 kexec in Linus's tree.

Cc: Andrew Morton <akpm@osdl.org>
Cc: Tony Luck <tony.luck@intel.com>
Signed-Off-By: Simon Horman <horms@verge.net.au>

 arch/ia64/kernel/crash.c         |    4 ++--
 arch/ia64/kernel/machine_kexec.c |    6 +++---
 kernel/irq/manage.c              |   15 ++++-----------
 3 files changed, 9 insertions(+), 16 deletions(-)

1f4c5c1fe2a6a74271989ec079af11e2bb8e2826
diff --git a/arch/ia64/kernel/crash.c b/arch/ia64/kernel/crash.c
index 03c3118..a1a192c 100644
--- a/arch/ia64/kernel/crash.c
+++ b/arch/ia64/kernel/crash.c
@@ -48,7 +48,7 @@ static void device_shootdown(void)
        u16 pci_command;
 
        list_for_each_entry(dev, &pci_devices, global_list) {
-               desc = irq_descp(dev->irq);
+	       desc = irq_desc + dev->irq;
                if (!desc->action)
                        continue;
                pci_read_config_word(dev, PCI_COMMAND, &pci_command);
@@ -57,7 +57,7 @@ static void device_shootdown(void)
                        pci_write_config_word(dev, PCI_COMMAND, pci_command);
                }
                disable_irq_nosync(dev->irq);
-               desc->handler->end(dev->irq);
+               desc->chip->end(dev->irq);
        }
 }
 
diff --git a/arch/ia64/kernel/machine_kexec.c b/arch/ia64/kernel/machine_kexec.c
index 73fbb26..573a6b8 100644
--- a/arch/ia64/kernel/machine_kexec.c
+++ b/arch/ia64/kernel/machine_kexec.c
@@ -63,13 +63,13 @@ #ifdef CONFIG_PCI
 	while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL) {
 		if (!(dev->is_enabled))
 			continue;
-		idesc = irq_descp(dev->irq);
+		idesc = irq_desc + dev->irq;
 		if (!idesc)
 			continue;
 		cpu_set(0, mask);
 		disable_irq_nosync(dev->irq);
-		idesc->handler->end(dev->irq);
-		idesc->handler->set_affinity(dev->irq, mask);
+		idesc->chip->end(dev->irq);
+		idesc->chip->set_affinity(dev->irq, mask);
 		idesc->action = NULL;
 		pci_disable_device(dev);
 	}
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 7d855d2..4ef0356 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -398,17 +398,10 @@ EXPORT_SYMBOL(request_irq);
  */
 void terminate_irqs(void)
 {
-	struct irqaction * action;
-	irq_desc_t *idesc;
+	irq_desc_t *desc = irq_desc;
 	int i;
 
-	for (i=0; i < NR_IRQS; i++) {
-		idesc = irq_descp(i);
-		action = idesc->action;
-		if (!action)
-			continue;
-		if (idesc->handler->end)
-			idesc->handler->end(i);
-	}
+	for (i = 0; i < NR_IRQS; i++, desc++)
+		if (desc->action && desc->chip->end)
+			desc->chip->end(i);
 }
-

--

-- 
Horms
  H: http://www.vergenet.net/~horms/
  W: http://www.valinux.co.jp/en/


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

end of thread, other threads:[~2006-08-18  1:02 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-17  7:07 [patch 3/5] git-ia64 versus genirq horms
2006-08-17  7:28 ` Andrew Morton
2006-08-17 13:58 ` Eric W. Biederman
2006-08-17 22:55 ` Zou Nan hai
2006-08-18  0:39 ` Horms
2006-08-18  0:48 ` Zou, Nanhai
2006-08-18  1:02 ` Horms

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