kdump: clear and EOI IPI for kexec CPU
PATCH 1/1 kdump: clear and EOI IPI for kexec CPU
Paul, Sorry, Please ignore the previous patch since it has one tab/space issue. Tested this one and kdump-dma-fault-fix.patch on P5, P4 (non-lpar), JS21 and JS20.
Thanks
Haren
Some times, the kexec CPU is not reponding to an IPI during kdump boot. It is causing the system in xmon. Noticed on power-4 (non-lpar). This patch clears and EOI IPI for kexec CPU as well before the kdump boot started.
arch/powerpc/platforms/pseries/xics.c renamed from arch/powerpc/platforms/pseries/xics.c.orig +15 -10
@@ -641,22 +641,27 @@ void xics_teardown_cpu(int secondary)iosync ();/* +* Clear IPI +*/ + ops->qirr_info (cpu,0xff ); +/* +* we need to EOI the IPI if we got here from kexec down IPI +* +* probably need to check all the other interrupts too +* should we be flagging idle loop instead? +* or creating some task to be scheduled? +*/ + ops->xirr_info_set (cpu,XICS_IPI ); + +/* * Some machines need to have at least one cpu in the GIQ, * so leave the master cpu in the group. */ -if (secondary) { -/* -* we need to EOI the IPI if we got here from kexec down IPI -* -* probably need to check all the other interrupts too -* should we be flagging idle loop instead? -* or creating some task to be scheduled? -*/ - ops->xirr_info_set (cpu,XICS_IPI ); +if (secondary)rtas_set_indicator (GLOBAL_INTERRUPT_QUEUE , (1UL << interrupt_server_size) -1 - default_distrib_server,0 ); - } + }#ifdef CONFIG_HOTPLUG_CPU
Quoted 11 lines · Haren Myneni
Paul, Sorry, Please ignore the previous patch since it has one tab/space issue. Tested this one and kdump-dma-fault-fix.patch on P5, P4 (non-lpar), JS21 and JS20.
Thanks
HarenSome times, the kexec CPU is not reponding to an IPI during kdump boot. It is causing the system in xmon. Noticed on power-4 (non-lpar). This patch clears and EOI IPI for kexec CPU as well before the kdump boot started.
Sorry, that commit message is quite opaque to me. Could you explain in more detail what the problem is and how this fixes it?
Thanks,
Paul.