> Archived-At: http://permalink.gmane.org/gmane.linux.ports.ia64/14683
>
> On Tue, 2006-08-15 at 09:56, Jay Lan wrote:
> > Bob Montgomery wrote:
> > > On Mon, 2006-08-14 at 14:47 +0800, Zou Nan hai wrote:
> > >
> > >>This patch is the kexec-kdump patch re-based to 2.6.18-rc4 kernel.
> > >
> > >
>
> > ...
> Jay,
> Thanks very much, please try the following updated patch which
> simplify the device_shootdown code.
>
>
> Signed-off-by: Zou Nan hai <[EMAIL PROTECTED]>
Incremental version of the patch posted by Zou Nan hai
Cc: Zou Nan hai <[EMAIL PROTECTED]>
Signed-off-by: Simon Horman <[EMAIL PROTECTED]>
Index: linux-2.6-ia64/arch/ia64/kernel/crash.c
===================================================================
--- linux-2.6-ia64.orig/arch/ia64/kernel/crash.c 2006-08-17
11:51:44.000000000 +0900
+++ linux-2.6-ia64/arch/ia64/kernel/crash.c 2006-08-17 11:52:06.000000000
+0900
@@ -47,13 +47,9 @@
int irq;
for (irq = 0; irq < NR_IRQS; irq++) {
idesc = irq_desc + irq;
- if (!idesc || !idesc->action)
- continue;
- disable_irq_nosync(irq);
- idesc->chip->end(irq);
- idesc->chip->shutdown(irq);
+ if (idesc)
+ kdump_disable_irq(irq);
}
-
#ifdef CONFIG_IA64_HP_ZX1
ioc_iova_disable();
#endif
Index: linux-2.6-ia64/arch/ia64/kernel/iosapic.c
===================================================================
--- linux-2.6-ia64.orig/arch/ia64/kernel/iosapic.c 2006-08-17
11:51:44.000000000 +0900
+++ linux-2.6-ia64/arch/ia64/kernel/iosapic.c 2006-08-17 11:52:06.000000000
+0900
@@ -288,6 +288,24 @@
/* do nothing... */
}
+#ifdef CONFIG_CRASH_DUMP
+void
+kdump_disable_irq(unsigned int irq)
+{
+ u32 low32;
+ ia64_vector vec = irq_to_vector(irq);
+ struct iosapic_rte_info *rte;
+
+ low32 = iosapic_intr_info[vec].low32 |= IOSAPIC_MASK;
+ list_for_each_entry(rte, &iosapic_intr_info[vec].rtes,
+ rte_list) {
+ iosapic_write(rte->addr,
+ IOSAPIC_RTE_LOW(rte->rte_index), low32);
+ iosapic_eoi(rte->addr, vec);
+ }
+}
+#endif
+
static void
mask_irq (unsigned int irq)
{
Index: linux-2.6-ia64/include/asm-ia64/kexec.h
===================================================================
--- linux-2.6-ia64.orig/include/asm-ia64/kexec.h 2006-08-17
11:51:45.000000000 +0900
+++ linux-2.6-ia64/include/asm-ia64/kexec.h 2006-08-17 11:52:06.000000000
+0900
@@ -34,5 +34,7 @@
extern struct resource efi_memmap_res;
extern struct resource boot_param_res;
extern void kdump_smp_send_stop(void);
+extern void kdump_disable_irq(unsigned int irq);
extern void crash_save_this_cpu(void);
+
#endif /* _ASM_IA64_KEXEC_H */
--
--
Horms
H: http://www.vergenet.net/~horms/
W: http://www.valinux.co.jp/en/
_______________________________________________
fastboot mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/fastboot