[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC v4 12/14] target/s390x: move kvm files into kvm/
From: |
Cho, Yu-Chen |
Subject: |
[RFC v4 12/14] target/s390x: move kvm files into kvm/ |
Date: |
Mon, 24 May 2021 10:52:54 +0800 |
Signed-off-by: Claudio Fontana <cfontana@suse.de>
Signed-off-by: Cho, Yu-Chen <acho@suse.com>
---
hw/intc/s390_flic_kvm.c | 2 +-
hw/s390x/s390-stattrib-kvm.c | 2 +-
hw/s390x/tod-kvm.c | 2 +-
hw/vfio/ap.c | 2 +-
meson.build | 1 +
target/s390x/cpu-sysemu.c | 2 +-
target/s390x/cpu.c | 2 +-
target/s390x/cpu_models.c | 2 +-
target/s390x/diag.c | 2 +-
target/s390x/interrupt.c | 2 +-
target/s390x/{ => kvm}/kvm.c | 2 +-
target/s390x/{ => kvm}/kvm_s390x.h | 0
target/s390x/kvm/meson.build | 17 +++++++++++++++++
target/s390x/kvm/trace-events | 7 +++++++
target/s390x/kvm/trace.h | 1 +
target/s390x/machine.c | 2 +-
target/s390x/meson.build | 16 +---------------
target/s390x/mmu_helper.c | 2 +-
target/s390x/trace-events | 6 ------
19 files changed, 39 insertions(+), 33 deletions(-)
rename target/s390x/{ => kvm}/kvm.c (99%)
rename target/s390x/{ => kvm}/kvm_s390x.h (100%)
create mode 100644 target/s390x/kvm/meson.build
create mode 100644 target/s390x/kvm/trace-events
create mode 100644 target/s390x/kvm/trace.h
diff --git a/hw/intc/s390_flic_kvm.c b/hw/intc/s390_flic_kvm.c
index 929cfa3a68..efe5054182 100644
--- a/hw/intc/s390_flic_kvm.c
+++ b/hw/intc/s390_flic_kvm.c
@@ -11,7 +11,7 @@
*/
#include "qemu/osdep.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include <sys/ioctl.h>
#include "qemu/error-report.h"
#include "qemu/module.h"
diff --git a/hw/s390x/s390-stattrib-kvm.c b/hw/s390x/s390-stattrib-kvm.c
index f0b11a74e4..24cd01382e 100644
--- a/hw/s390x/s390-stattrib-kvm.c
+++ b/hw/s390x/s390-stattrib-kvm.c
@@ -16,7 +16,7 @@
#include "qemu/error-report.h"
#include "sysemu/kvm.h"
#include "exec/ram_addr.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
Object *kvm_s390_stattrib_create(void)
{
diff --git a/hw/s390x/tod-kvm.c b/hw/s390x/tod-kvm.c
index 0b94477486..ec855811ae 100644
--- a/hw/s390x/tod-kvm.c
+++ b/hw/s390x/tod-kvm.c
@@ -13,7 +13,7 @@
#include "qemu/module.h"
#include "sysemu/runstate.h"
#include "hw/s390x/tod.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
static void kvm_s390_get_tod_raw(S390TOD *tod, Error **errp)
{
diff --git a/hw/vfio/ap.c b/hw/vfio/ap.c
index 4b32aca1a0..e0dd561e85 100644
--- a/hw/vfio/ap.c
+++ b/hw/vfio/ap.c
@@ -21,7 +21,7 @@
#include "qemu/module.h"
#include "qemu/option.h"
#include "qemu/config-file.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "migration/vmstate.h"
#include "hw/qdev-properties.h"
#include "hw/s390x/ap-bridge.h"
diff --git a/meson.build b/meson.build
index 1559e8d873..37be2e60c3 100644
--- a/meson.build
+++ b/meson.build
@@ -1863,6 +1863,7 @@ if have_system or have_user
'target/ppc',
'target/riscv',
'target/s390x',
+ 'target/s390x/kvm',
'target/sparc',
]
endif
diff --git a/target/s390x/cpu-sysemu.c b/target/s390x/cpu-sysemu.c
index 6081b7ef32..f3c1b4845a 100644
--- a/target/s390x/cpu-sysemu.c
+++ b/target/s390x/cpu-sysemu.c
@@ -24,7 +24,7 @@
#include "qapi/error.h"
#include "cpu.h"
#include "s390x-internal.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "sysemu/kvm.h"
#include "sysemu/reset.h"
#include "qemu/timer.h"
diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c
index 59efe48bcd..6e82ba73cc 100644
--- a/target/s390x/cpu.c
+++ b/target/s390x/cpu.c
@@ -24,7 +24,7 @@
#include "qapi/error.h"
#include "cpu.h"
#include "s390x-internal.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "sysemu/kvm.h"
#include "sysemu/reset.h"
#include "qemu/module.h"
diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
index 4ff8cba7e5..0ed1c23774 100644
--- a/target/s390x/cpu_models.c
+++ b/target/s390x/cpu_models.c
@@ -13,7 +13,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "s390x-internal.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "sysemu/kvm.h"
#include "sysemu/tcg.h"
#include "qapi/error.h"
diff --git a/target/s390x/diag.c b/target/s390x/diag.c
index 8405f69df0..76b01dcd68 100644
--- a/target/s390x/diag.c
+++ b/target/s390x/diag.c
@@ -21,7 +21,7 @@
#include "hw/s390x/s390-virtio-ccw.h"
#include "hw/s390x/pv.h"
#include "sysemu/kvm.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
int handle_diag_288(CPUS390XState *env, uint64_t r1, uint64_t r3)
{
diff --git a/target/s390x/interrupt.c b/target/s390x/interrupt.c
index 734f0c62de..5195f060ec 100644
--- a/target/s390x/interrupt.c
+++ b/target/s390x/interrupt.c
@@ -9,7 +9,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "s390x-internal.h"
#include "exec/exec-all.h"
#include "sysemu/kvm.h"
diff --git a/target/s390x/kvm.c b/target/s390x/kvm/kvm.c
similarity index 99%
rename from target/s390x/kvm.c
rename to target/s390x/kvm/kvm.c
index 2a22cc69f6..4e47563faf 100644
--- a/target/s390x/kvm.c
+++ b/target/s390x/kvm/kvm.c
@@ -27,7 +27,7 @@
#include "qemu-common.h"
#include "cpu.h"
#include "s390x-internal.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "sysemu/kvm_int.h"
#include "qemu/cutils.h"
#include "qapi/error.h"
diff --git a/target/s390x/kvm_s390x.h b/target/s390x/kvm/kvm_s390x.h
similarity index 100%
rename from target/s390x/kvm_s390x.h
rename to target/s390x/kvm/kvm_s390x.h
diff --git a/target/s390x/kvm/meson.build b/target/s390x/kvm/meson.build
new file mode 100644
index 0000000000..d1356356b1
--- /dev/null
+++ b/target/s390x/kvm/meson.build
@@ -0,0 +1,17 @@
+
+s390x_ss.add(when: 'CONFIG_KVM', if_true: files(
+ 'kvm.c'
+))
+
+# Newer kernels on s390 check for an S390_PGSTE program header and
+# enable the pgste page table extensions in that case. This makes
+# the vm.allocate_pgste sysctl unnecessary. We enable this program
+# header if
+# - we build on s390x
+# - we build the system emulation for s390x (qemu-system-s390x)
+# - KVM is enabled
+# - the linker supports --s390-pgste
+if host_machine.cpu_family() == 's390x' and
cc.has_link_argument('-Wl,--s390-pgste')
+ s390x_softmmu_ss.add(when: 'CONFIG_KVM',
+ if_true: declare_dependency(link_args:
['-Wl,--s390-pgste']))
+endif
diff --git a/target/s390x/kvm/trace-events b/target/s390x/kvm/trace-events
new file mode 100644
index 0000000000..5289f5f675
--- /dev/null
+++ b/target/s390x/kvm/trace-events
@@ -0,0 +1,7 @@
+# See docs/devel/tracing.txt for syntax documentation.
+
+# kvm.c
+kvm_enable_cmma(int rc) "CMMA: enabling with result code %d"
+kvm_clear_cmma(int rc) "CMMA: clearing with result code %d"
+kvm_failed_cpu_state_set(int cpu_index, uint8_t state, const char *msg)
"Warning: Unable to set cpu %d state %" PRIu8 " to KVM: %s"
+kvm_assign_subch_ioeventfd(int fd, uint32_t addr, bool assign, int datamatch)
"fd: %d sch: @0x%x assign: %d vq: %d"
diff --git a/target/s390x/kvm/trace.h b/target/s390x/kvm/trace.h
new file mode 100644
index 0000000000..ae195b1306
--- /dev/null
+++ b/target/s390x/kvm/trace.h
@@ -0,0 +1 @@
+#include "trace/trace-target_s390x_kvm.h"
diff --git a/target/s390x/machine.c b/target/s390x/machine.c
index 81a8a7ff99..37a076858c 100644
--- a/target/s390x/machine.c
+++ b/target/s390x/machine.c
@@ -17,7 +17,7 @@
#include "qemu/osdep.h"
#include "cpu.h"
#include "s390x-internal.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "migration/vmstate.h"
#include "tcg/tcg_s390x.h"
#include "sysemu/kvm.h"
diff --git a/target/s390x/meson.build b/target/s390x/meson.build
index 6c8e03b8fb..ec73bed524 100644
--- a/target/s390x/meson.build
+++ b/target/s390x/meson.build
@@ -8,8 +8,6 @@ s390x_ss.add(files(
'cpu-dump.c',
))
-s390x_ss.add(when: 'CONFIG_KVM', if_true: files('kvm.c'))
-
gen_features = executable('gen-features', 'gen-features.c', native: true,
build_by_default: false)
@@ -32,22 +30,10 @@ s390x_softmmu_ss.add(files(
'cpu-sysemu.c',
))
-# Newer kernels on s390 check for an S390_PGSTE program header and
-# enable the pgste page table extensions in that case. This makes
-# the vm.allocate_pgste sysctl unnecessary. We enable this program
-# header if
-# - we build on s390x
-# - we build the system emulation for s390x (qemu-system-s390x)
-# - KVM is enabled
-# - the linker supports --s390-pgste
-if host_machine.cpu_family() == 's390x' and
cc.has_link_argument('-Wl,--s390-pgste')
- s390x_softmmu_ss.add(when: 'CONFIG_KVM',
- if_true: declare_dependency(link_args:
['-Wl,--s390-pgste']))
-endif
-
s390x_user_ss = ss.source_set()
subdir('tcg')
+subdir('kvm')
target_arch += {'s390x': s390x_ss}
target_softmmu_arch += {'s390x': s390x_softmmu_ss}
diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c
index 52fdd86c63..d779a9fc51 100644
--- a/target/s390x/mmu_helper.c
+++ b/target/s390x/mmu_helper.c
@@ -20,7 +20,7 @@
#include "exec/address-spaces.h"
#include "cpu.h"
#include "s390x-internal.h"
-#include "kvm_s390x.h"
+#include "kvm/kvm_s390x.h"
#include "sysemu/kvm.h"
#include "sysemu/tcg.h"
#include "exec/exec-all.h"
diff --git a/target/s390x/trace-events b/target/s390x/trace-events
index e6c5fc1d03..c3414f58af 100644
--- a/target/s390x/trace-events
+++ b/target/s390x/trace-events
@@ -10,12 +10,6 @@ ioinst_sch_id(const char *insn, int cssid, int ssid, int
schid) "IOINST: %s (%x.
ioinst_chp_id(const char *insn, int cssid, int chpid) "IOINST: %s (%x.%02x)"
ioinst_chsc_cmd(uint16_t cmd, uint16_t len) "IOINST: chsc command 0x%04x, len
0x%04x"
-# kvm.c
-kvm_enable_cmma(int rc) "CMMA: enabling with result code %d"
-kvm_clear_cmma(int rc) "CMMA: clearing with result code %d"
-kvm_failed_cpu_state_set(int cpu_index, uint8_t state, const char *msg)
"Warning: Unable to set cpu %d state %" PRIu8 " to KVM: %s"
-kvm_assign_subch_ioeventfd(int fd, uint32_t addr, bool assign, int datamatch)
"fd: %d sch: @0x%x assign: %d vq: %d"
-
# cpu-sysemu.c
cpu_set_state(int cpu_index, uint8_t state) "setting cpu %d state to %" PRIu8
cpu_halt(int cpu_index) "halting cpu %d"
--
2.31.1
- [RFC v4 01/14] target/s390x: meson: add target_user_arch, Cho, Yu-Chen, 2021/05/24
- [RFC v4 02/14] hw/s390x: rename tod-qemu.c to tod-tcg.c, Cho, Yu-Chen, 2021/05/24
- [RFC v4 03/14] hw/s390x: only build tod-tcg from the CONFIG_TCG build, Cho, Yu-Chen, 2021/05/24
- [RFC v4 04/14] hw/s390x: tod: make explicit checks for accelerators when initializing, Cho, Yu-Chen, 2021/05/24
- [RFC v4 05/14] target/s390x: remove tcg-stub.c, Cho, Yu-Chen, 2021/05/24
- [RFC v4 06/14] target/s390x: start moving TCG-only code to tcg/, Cho, Yu-Chen, 2021/05/24
- [RFC v4 07/14] target/s390x: move sysemu-only code out to cpu-sysemu.c, Cho, Yu-Chen, 2021/05/24
- [RFC v4 10/14] target/s390x: use kvm_enabled() to wrap call to kvm_s390_get_hpage_1m, Cho, Yu-Chen, 2021/05/24
- [RFC v4 08/14] target/s390x: split cpu-dump from helper.c, Cho, Yu-Chen, 2021/05/24
- [RFC v4 12/14] target/s390x: move kvm files into kvm/,
Cho, Yu-Chen <=
- [RFC v4 13/14] target/s390x: split sysemu part of cpu models, Cho, Yu-Chen, 2021/05/24
- [RFC v4 09/14] target/s390x: make helper.c sysemu-only, Cho, Yu-Chen, 2021/05/24
- [RFC v4 11/14] target/s390x: remove kvm-stub.c, Cho, Yu-Chen, 2021/05/24
- [RFC v4 14/14] MAINTAINERS: update s390x directories, Cho, Yu-Chen, 2021/05/24