Nicholas Piggin
6de6638b35
KVM: PPC: Book3S HV: Handle host system reset in guest mode
...
If the host takes a system reset interrupt while a guest is running,
the CPU must exit the guest before processing the host exception
handler.
After this patch, taking a sysrq+x with a CPU running in a guest
gives a trace like this:
cpu 0x27: Vector: 100 (System Reset) at [c000000fdf5776f0]
pc: c008000010158b80: kvmppc_run_core+0x16b8/0x1ad0 [kvm_hv]
lr: c008000010158b80: kvmppc_run_core+0x16b8/0x1ad0 [kvm_hv]
sp: c000000fdf577850
msr: 9000000002803033
current = 0xc000000fdf4b1e00
paca = 0xc00000000fd4d680 softe: 3 irq_happened: 0x01
pid = 6608, comm = qemu-system-ppc
Linux version 4.14.0-rc7-01489-g47e1893a404a-dirty #26 SMP
[c000000fdf577a00] c008000010159dd4 kvmppc_vcpu_run_hv+0x3dc/0x12d0 [kvm_hv]
[c000000fdf577b30] c0080000100a537c kvmppc_vcpu_run+0x44/0x60 [kvm]
[c000000fdf577b60] c0080000100a1ae0 kvm_arch_vcpu_ioctl_run+0x118/0x310 [kvm]
[c000000fdf577c00] c008000010093e98 kvm_vcpu_ioctl+0x530/0x7c0 [kvm]
[c000000fdf577d50] c000000000357bf8 do_vfs_ioctl+0xd8/0x8c0
[c000000fdf577df0] c000000000358448 SyS_ioctl+0x68/0x100
[c000000fdf577e30] c00000000000b220 system_call+0x58/0x6c
--- Exception: c01 (System Call) at 00007fff76868df0
SP (7fff7069baf0) is in userspace
Fixes: e36d0a2ed5 ("powerpc/powernv: Implement NMI IPI with OPAL_SIGNAL_SYSTEM_RESET")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2017-11-06 16:48:06 +11:00
..
2017-09-28 16:28:22 +10:00
2017-08-15 22:55:58 +10:00
2011-04-21 16:59:30 -07:00
2017-01-14 09:54:12 +01:00
2015-07-23 19:52:03 +10:00
2017-08-31 14:26:47 +10:00
2017-03-21 22:09:26 +11:00
2017-07-12 21:49:55 +10:00
2017-08-10 12:29:03 +02:00
2017-06-02 19:23:56 +10:00
2012-10-09 09:47:26 +01:00
2013-08-14 14:57:40 +10:00
2017-08-31 14:26:04 +10:00
2017-08-10 23:32:12 +10:00
2016-08-01 11:15:03 +10:00
2017-03-04 23:07:17 +11:00
2016-11-25 14:07:50 +11:00
2017-07-03 23:08:50 +10:00
2017-05-27 15:38:06 -04:00
2014-04-23 10:05:16 +10:00
2014-10-08 20:15:37 +11:00
2017-05-02 22:35:00 -05:00
2014-06-11 17:03:28 +10:00
2015-12-22 17:12:56 -06:00
2017-05-09 23:42:55 +10:00
2016-07-21 20:33:57 +10:00
2017-08-29 21:38:47 +10:00
2017-08-10 23:32:12 +10:00
2016-08-22 11:09:33 +10:00
2017-02-01 09:14:07 +01:00
2015-03-23 14:29:40 +11:00
2017-06-19 19:46:27 +10:00
2014-05-23 08:28:02 +09:00
2016-08-01 11:15:03 +10:00
2017-04-11 07:46:03 +10:00
2017-04-11 07:46:03 +10:00
2017-07-02 20:40:24 +10:00
2017-01-24 12:23:35 -05:00
2017-04-20 11:36:41 +10:00
2017-06-28 06:54:55 -07:00
2013-04-18 13:03:53 +10:00
2017-05-09 23:42:55 +10:00
2015-05-28 15:31:53 +02:00
2014-06-11 17:04:33 +10:00
2017-09-26 11:19:07 +10:00
2012-02-14 14:06:50 -07:00
2017-07-10 16:32:36 -07:00
2017-09-27 08:23:22 +10:00
2017-10-06 20:50:58 +11:00
2015-10-27 18:14:40 -05:00
2017-10-16 23:12:01 +11:00
2012-03-28 18:30:02 +01:00
2017-03-28 18:23:54 -04:00
2017-08-31 14:26:04 +10:00
2017-08-31 14:26:47 +10:00
2017-02-09 21:45:48 +11:00
2017-08-15 22:55:58 +10:00
2011-11-08 14:51:46 +11:00
2017-08-10 23:32:12 +10:00
2010-10-14 00:54:38 -05:00
2012-11-15 13:00:58 +11:00
2017-02-27 18:43:46 -08:00
2015-01-12 05:04:13 -08:00
2015-02-03 18:47:18 +01:00
2016-03-04 23:50:27 -06:00
2016-06-14 13:58:27 +10:00
2017-08-25 22:49:59 +02:00
2017-08-10 22:30:02 +10:00
2017-06-20 22:22:00 +10:00
2015-11-09 15:11:24 -08:00
2016-09-09 16:18:07 +10:00
2017-10-22 12:08:31 +02:00
2017-09-02 21:02:35 +10:00
2013-10-11 16:48:53 +11:00
2014-05-20 10:54:06 +10:00
2017-11-06 16:48:06 +11:00
2016-03-01 19:27:20 +11:00
2012-02-14 14:06:50 -07:00
2013-06-12 12:37:26 +01:00
2017-09-01 16:42:50 +10:00
2016-12-20 09:48:44 -08:00
2017-07-25 22:55:27 +10:00
2011-05-06 13:19:01 +10:00
2013-01-03 15:57:04 -08:00
2017-04-21 21:08:47 +10:00
2017-06-28 06:54:33 -07:00
2015-02-23 14:52:04 +11:00
2014-09-25 23:14:43 +10:00
2014-07-28 14:11:23 +10:00
2017-01-31 13:54:17 +11:00
2016-08-05 09:00:54 -04:00
2017-07-24 21:19:32 +10:00
2011-12-20 10:20:19 -05:00
2016-12-20 09:48:44 -08:00
2012-02-21 11:40:36 +01:00
2010-10-29 13:14:42 -05:00
2012-07-24 15:27:29 +08:00
2017-10-04 23:42:17 +11:00
2016-11-24 09:24:23 +11:00
2013-10-17 14:45:05 +02:00
2017-04-01 21:12:27 +11:00
2017-10-19 15:28:04 +11:00
2017-07-01 18:59:01 +10:00
2014-03-19 19:57:15 -05:00
2015-08-22 11:16:19 +02:00
2010-09-02 14:07:32 +10:00
2017-08-31 16:13:00 -07:00
2014-01-09 10:14:57 +01:00
2017-06-19 14:34:20 +10:00
2016-09-22 11:50:19 -04:00
2016-06-14 13:58:27 +10:00
2016-12-19 11:15:25 +01:00
2011-07-26 16:49:47 -07:00
2013-12-09 11:40:25 +11:00
2012-04-24 15:34:16 -07:00
2017-08-31 14:26:01 +10:00
2011-06-10 14:55:36 +02:00
2017-10-16 23:12:01 +11:00
2015-06-24 17:49:41 -07:00
2016-08-05 09:00:54 -04:00
2017-09-28 17:09:16 +10:00
2016-12-09 22:49:07 -06:00
2010-05-05 09:11:10 -04:00
2017-03-31 23:09:47 +11:00
2017-03-31 23:10:00 +11:00
2016-10-07 18:46:28 -07:00
2017-05-15 19:31:38 +10:00
2015-10-22 16:06:08 +02:00
2016-07-14 21:12:06 +10:00
2015-03-31 22:23:17 -05:00
2015-10-22 15:19:40 +02:00
2016-09-20 20:57:12 +10:00
2013-07-01 18:38:41 -05:00
2015-03-23 19:51:17 -05:00
2015-10-05 21:32:50 +11:00
2017-08-31 14:26:00 +10:00
2015-03-23 14:05:49 +11:00
2017-10-21 09:33:05 +11:00
2017-10-04 11:27:27 +11:00
2014-07-28 14:10:25 +10:00
2017-09-27 08:23:22 +10:00
2016-03-11 17:20:11 -06:00
2017-03-31 23:09:56 +11:00
2017-05-19 13:04:35 +10:00
2016-09-20 20:57:12 +10:00
2011-03-31 11:26:23 -03:00
2017-08-31 14:26:12 +10:00
2017-04-18 13:02:26 -05:00
2010-07-09 11:28:30 +10:00
2013-08-07 18:38:03 -05:00
2017-04-19 20:00:22 +10:00
2014-10-15 11:23:20 +11:00
2017-08-15 20:02:56 +10:00
2017-08-18 13:07:16 +10:00
2017-08-18 13:07:16 +10:00
2017-08-17 23:14:17 +10:00
2017-02-09 21:45:48 +11:00
2016-06-14 13:58:26 +10:00
2017-08-08 11:27:30 +10:00
2017-10-21 09:33:05 +11:00
2013-01-10 15:08:37 +11:00
2016-07-14 21:12:06 +10:00
2017-08-10 23:32:12 +10:00
2017-09-01 16:39:48 +10:00
2016-11-22 11:57:08 +11:00
2013-06-20 16:55:09 +10:00
2017-07-07 13:55:45 -07:00
2017-09-02 21:02:38 +10:00
2017-01-24 12:23:35 -05:00
2016-06-14 13:58:26 +10:00
2016-06-14 13:58:26 +10:00
2017-08-17 23:13:46 +10:00
2016-06-14 13:58:27 +10:00
2017-01-26 17:49:34 -06:00
2014-06-11 16:35:38 +10:00
2017-08-03 16:06:52 +10:00
2013-08-07 18:38:04 -05:00
2017-08-31 14:26:47 +10:00
2014-09-25 23:14:43 +10:00
2017-02-17 17:57:30 +11:00
2012-03-28 18:30:02 +01:00
2013-11-06 14:13:49 +11:00
2015-04-17 09:04:10 -04:00
2017-04-23 20:32:25 +10:00
2017-08-31 14:26:01 +10:00
2013-10-11 17:26:49 +11:00
2016-10-04 16:43:07 +11:00
2017-08-31 14:26:56 +10:00
2016-07-21 18:56:38 +10:00
2017-02-15 19:58:39 +11:00
2017-09-04 11:52:29 -07:00
2015-08-18 19:29:49 +10:00
2012-10-09 09:47:26 +01:00
2011-03-31 11:26:23 -03:00
2014-10-08 20:14:54 +11:00
2017-09-01 16:42:44 +10:00
2017-09-01 16:42:45 +10:00
2015-03-24 13:33:52 +11:00
2017-01-24 12:23:35 -05:00
2016-08-10 16:34:20 +10:00
2016-07-21 18:51:42 +10:00
2015-07-29 11:56:13 +10:00
2017-04-12 22:32:43 +10:00
2017-03-16 20:45:53 +11:00
2016-07-17 16:42:47 +10:00
2012-10-09 09:47:26 +01:00
2017-05-05 11:36:44 -07:00
2016-08-01 11:15:03 +10:00
2017-08-10 23:32:12 +10:00
2017-08-23 22:28:38 +10:00
2016-08-01 11:15:13 +10:00
2017-10-21 09:33:05 +11:00
2017-10-16 23:12:04 +11:00
2015-08-06 16:36:23 +10:00
2017-06-23 21:14:49 +10:00
2015-09-16 15:47:51 +02:00
2016-06-14 13:58:26 +10:00
2016-06-14 13:58:27 +10:00
2017-09-27 08:23:22 +10:00
2014-09-25 23:14:43 +10:00
2013-12-30 14:02:29 +11:00
2016-03-01 19:27:20 +11:00
2017-03-16 20:45:53 +11:00
2013-11-20 16:31:01 +01:00
2017-08-31 14:26:38 +10:00
2015-11-26 22:11:17 +11:00
2014-02-17 11:19:37 +11:00
2017-09-08 18:26:48 -07:00
2015-05-05 13:35:39 -06:00
2016-11-14 11:11:51 +11:00
2017-04-13 23:34:33 +10:00
2016-11-29 09:14:50 +00:00
2017-04-10 21:41:34 +10:00
2017-09-02 21:02:37 +10:00
2017-04-10 21:41:34 +10:00
2016-08-01 11:15:03 +10:00