[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PATCH v3 31/35] spapr/xive: raise migration priority of the
From: |
Cédric Le Goater |
Subject: |
[Qemu-ppc] [PATCH v3 31/35] spapr/xive: raise migration priority of the machine |
Date: |
Thu, 19 Apr 2018 14:43:27 +0200 |
The XIVE MMIO regions should be set on the destination before the XIVE
sources are restored. This is currently handled at the machine level
because it depends on the KVM initialization to be done before
anything else.
But it has ugly consequences on MMU, which seems broken after migration :
Oops: Exception in kernel mode, sig: 4 [#1]
LE SMP NR_CPUS=2048 NUMA pSeries
Modules linked in: ipmi_devintf ipmi_msghandler vmx_crypto crct10dif_vpmsum
...
CPU: 3 PID: 1 Comm: systemd Not tainted 4.16.0+ #2
NIP: c000000000079810 LR: c00000000033f720 CTR: 0000000000000000
REGS: c00000007a803880 TRAP: 0700 Not tainted (4.16.0+)
MSR: 8000000002049033 <SF,VEC,EE,ME,IR,DR,RI,LE> CR: 24048884 XER: 20040000
CFAR: c000000000079ae4 SOFTE: 0
GPR00: c00000000033f720 c00000007a803b00 c0000000015f8a00 c00000007bb1d800
GPR04: 00000000000000a0 c0000000017a2598 c00000007a803ba0 0000000000000002
GPR08: 8403bb74000000c0 0000000000000004 00000000000000c0 0000000000000060
GPR12: 0000000044048888 c000000007d80f00 00000594336eeaa0 0000000000000003
GPR16: 00007ffff732c410 00007ffff732c420 00000594336ec090 fffffffffffffffd
GPR20: 0000000000000000 c00000007bb1d800 0000059444690000 0000059444680000
GPR24: 0000059444680000 8603146e00000080 c00000007bb1d800 0000000000000001
GPR28: c0000000017a24e8 0000059444680000 0000000200000000 00000594446800a0
NIP [c000000000079810] radix__flush_tlb_page_psize+0x60/0x300
LR [c00000000033f720] ptep_clear_flush+0xe0/0x1e0
Call Trace:
[c00000007a803b00] [c00000007a803b80] 0xc00000007a803b80 (unreliable)
[c00000007a803b40] [c00000007a803b80] 0xc00000007a803b80
[c00000007a803b80] [c000000000325cc4] wp_page_copy+0x314/0x9a0
[c00000007a803c10] [c0000000003298b4] do_wp_page+0x1e4/0x860
[c00000007a803c60] [c00000000032f58c] __handle_mm_fault+0x10fc/0x1b10
[c00000007a803d40] [c0000000003300d8] handle_mm_fault+0x138/0x250
[c00000007a803d80] [c000000000069a24] __do_page_fault+0x224/0xa50
[c00000007a803e30] [c00000000000a534] handle_page_fault+0x18/0x38
Work in progress.
Signed-off-by: Cédric Le Goater <address@hidden>
---
hw/ppc/spapr.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index dea636f9befe..24b3ee2fe13d 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1916,6 +1916,7 @@ static const VMStateDescription vmstate_spapr = {
.pre_load = spapr_pre_load,
.post_load = spapr_post_load,
.pre_save = spapr_pre_save,
+ .priority = MIG_PRI_MAX,
.fields = (VMStateField[]) {
/* used to be @next_irq */
VMSTATE_UNUSED_BUFFER(version_before_3, 0, 4),
--
2.13.6
- [Qemu-ppc] [PATCH v3 21/35] spapr: advertise XIVE exploitation mode in CAS, (continued)
- [Qemu-ppc] [PATCH v3 21/35] spapr: advertise XIVE exploitation mode in CAS, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 22/35] spapr: add classes for the XIVE models, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 23/35] target/ppc/kvm: add Linux KVM definitions for XIVE, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 24/35] spapr/xive: add common realize routine for KVM, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 25/35] spapr/xive: add KVM support, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 26/35] spapr/xive: add a XIVE KVM device to the machine, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 27/35] migration: discard non-migratable RAMBlocks, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 28/35] intc: introduce a CPUIntc interface, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 29/35] spapr/xive, xics: use the CPU_INTC handlers to reset KVM, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 30/35] spapr/xive, xics: reset KVM at machine reset, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 31/35] spapr/xive: raise migration priority of the machine,
Cédric Le Goater <=
- [Qemu-ppc] [PATCH v3 32/35] ppc/pnv: introduce a pnv_icp_create() helper, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 33/35] ppc: externalize ppc_get_vcpu_by_pir(), Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 34/35] ppc/pnv: add XIVE support, Cédric Le Goater, 2018/04/19
- [Qemu-ppc] [PATCH v3 35/35] ppc/pnv: add a PSI bridge model for POWER9 processor, Cédric Le Goater, 2018/04/19
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v3 00/35] ppc: support for the XIVE interrupt controller (POWER9), no-reply, 2018/04/21