* [PATCH v2 09/10] accel: Replace current_machine->accelerator by current_accel() wrapper
[not found] <20200121110349.25842-1-philmd@redhat.com>
@ 2020-01-21 11:03 ` Philippe Mathieu-Daudé
2020-01-21 14:03 ` Cornelia Huck
2020-01-22 3:28 ` David Gibson
0 siblings, 2 replies; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-01-21 11:03 UTC (permalink / raw)
To: qemu-devel
Cc: Peter Maydell, Marcelo Tosatti, Cornelia Huck, David Gibson,
qemu-s390x, David Hildenbrand, qemu-ppc, Eduardo Habkost,
Like Xu, Markus Armbruster, qemu-arm, Paolo Bonzini,
Richard Henderson, Philippe Mathieu-Daudé,
Alistair Francis, open list:Overall KVM CPUs
We actually want to access the accelerator, not the machine, so
use the current_accel() wrapper instead.
Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
v2:
- Reworded description
- Remove unused include in arm/kvm64
---
accel/kvm/kvm-all.c | 4 ++--
accel/tcg/tcg-all.c | 2 +-
memory.c | 2 +-
target/arm/kvm64.c | 5 ++---
target/i386/kvm.c | 2 +-
target/ppc/kvm.c | 2 +-
vl.c | 2 +-
7 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
index 1ada2f4ecb..c111312dfd 100644
--- a/accel/kvm/kvm-all.c
+++ b/accel/kvm/kvm-all.c
@@ -164,7 +164,7 @@ static NotifierList kvm_irqchip_change_notifiers =
int kvm_get_max_memslots(void)
{
- KVMState *s = KVM_STATE(current_machine->accelerator);
+ KVMState *s = KVM_STATE(current_accel());
return s->nr_slots;
}
@@ -1848,7 +1848,7 @@ static int kvm_max_vcpu_id(KVMState *s)
bool kvm_vcpu_id_is_valid(int vcpu_id)
{
- KVMState *s = KVM_STATE(current_machine->accelerator);
+ KVMState *s = KVM_STATE(current_accel());
return vcpu_id >= 0 && vcpu_id < kvm_max_vcpu_id(s);
}
diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c
index 1dc384c8d2..1802ce02f6 100644
--- a/accel/tcg/tcg-all.c
+++ b/accel/tcg/tcg-all.c
@@ -124,7 +124,7 @@ static void tcg_accel_instance_init(Object *obj)
static int tcg_init(MachineState *ms)
{
- TCGState *s = TCG_STATE(current_machine->accelerator);
+ TCGState *s = TCG_STATE(current_accel());
tcg_exec_init(s->tb_size * 1024 * 1024);
cpu_interrupt_handler = tcg_handle_interrupt;
diff --git a/memory.c b/memory.c
index d7b9bb6951..854798791e 100644
--- a/memory.c
+++ b/memory.c
@@ -3104,7 +3104,7 @@ void mtree_info(bool flatview, bool dispatch_tree, bool owner)
};
GArray *fv_address_spaces;
GHashTable *views = g_hash_table_new(g_direct_hash, g_direct_equal);
- AccelClass *ac = ACCEL_GET_CLASS(current_machine->accelerator);
+ AccelClass *ac = ACCEL_GET_CLASS(current_accel());
if (ac->has_memory) {
fvi.ac = ac;
diff --git a/target/arm/kvm64.c b/target/arm/kvm64.c
index 876184b8fe..e3c580e749 100644
--- a/target/arm/kvm64.c
+++ b/target/arm/kvm64.c
@@ -26,7 +26,6 @@
#include "sysemu/kvm.h"
#include "sysemu/kvm_int.h"
#include "kvm_arm.h"
-#include "hw/boards.h"
#include "internals.h"
static bool have_guest_debug;
@@ -613,14 +612,14 @@ bool kvm_arm_get_host_cpu_features(ARMHostCPUFeatures *ahcf)
bool kvm_arm_aarch32_supported(CPUState *cpu)
{
- KVMState *s = KVM_STATE(current_machine->accelerator);
+ KVMState *s = KVM_STATE(current_accel());
return kvm_check_extension(s, KVM_CAP_ARM_EL1_32BIT);
}
bool kvm_arm_sve_supported(CPUState *cpu)
{
- KVMState *s = KVM_STATE(current_machine->accelerator);
+ KVMState *s = KVM_STATE(current_accel());
return kvm_check_extension(s, KVM_CAP_ARM_SVE);
}
diff --git a/target/i386/kvm.c b/target/i386/kvm.c
index 7ee3202634..eddb930065 100644
--- a/target/i386/kvm.c
+++ b/target/i386/kvm.c
@@ -147,7 +147,7 @@ bool kvm_allows_irq0_override(void)
static bool kvm_x2apic_api_set_flags(uint64_t flags)
{
- KVMState *s = KVM_STATE(current_machine->accelerator);
+ KVMState *s = KVM_STATE(current_accel());
return !kvm_vm_enable_cap(s, KVM_CAP_X2APIC_API, 0, flags);
}
diff --git a/target/ppc/kvm.c b/target/ppc/kvm.c
index b5799e62b4..45ede6b6d9 100644
--- a/target/ppc/kvm.c
+++ b/target/ppc/kvm.c
@@ -258,7 +258,7 @@ static void kvm_get_smmu_info(struct kvm_ppc_smmu_info *info, Error **errp)
struct ppc_radix_page_info *kvm_get_radix_page_info(void)
{
- KVMState *s = KVM_STATE(current_machine->accelerator);
+ KVMState *s = KVM_STATE(current_accel());
struct ppc_radix_page_info *radix_page_info;
struct kvm_ppc_rmmu_info rmmu_info;
int i;
diff --git a/vl.c b/vl.c
index 71d3e7eefb..a8ea36f4f8 100644
--- a/vl.c
+++ b/vl.c
@@ -2812,7 +2812,7 @@ static void configure_accelerators(const char *progname)
}
if (init_failed) {
- AccelClass *ac = ACCEL_GET_CLASS(current_machine->accelerator);
+ AccelClass *ac = ACCEL_GET_CLASS(current_accel());
error_report("falling back to %s", ac->name);
}
--
2.21.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2 09/10] accel: Replace current_machine->accelerator by current_accel() wrapper
2020-01-21 11:03 ` [PATCH v2 09/10] accel: Replace current_machine->accelerator by current_accel() wrapper Philippe Mathieu-Daudé
@ 2020-01-21 14:03 ` Cornelia Huck
2020-01-22 3:28 ` David Gibson
1 sibling, 0 replies; 3+ messages in thread
From: Cornelia Huck @ 2020-01-21 14:03 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: qemu-devel, Peter Maydell, Marcelo Tosatti, David Gibson,
qemu-s390x, David Hildenbrand, qemu-ppc, Eduardo Habkost,
Like Xu, Markus Armbruster, qemu-arm, Paolo Bonzini,
Richard Henderson, Alistair Francis, open list:Overall KVM CPUs
On Tue, 21 Jan 2020 12:03:48 +0100
Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
> We actually want to access the accelerator, not the machine, so
> use the current_accel() wrapper instead.
>
> Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
> Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> v2:
> - Reworded description
> - Remove unused include in arm/kvm64
> ---
> accel/kvm/kvm-all.c | 4 ++--
> accel/tcg/tcg-all.c | 2 +-
> memory.c | 2 +-
> target/arm/kvm64.c | 5 ++---
> target/i386/kvm.c | 2 +-
> target/ppc/kvm.c | 2 +-
> vl.c | 2 +-
> 7 files changed, 9 insertions(+), 10 deletions(-)
> diff --git a/target/ppc/kvm.c b/target/ppc/kvm.c
> index b5799e62b4..45ede6b6d9 100644
> --- a/target/ppc/kvm.c
> +++ b/target/ppc/kvm.c
> @@ -258,7 +258,7 @@ static void kvm_get_smmu_info(struct kvm_ppc_smmu_info *info, Error **errp)
>
> struct ppc_radix_page_info *kvm_get_radix_page_info(void)
> {
> - KVMState *s = KVM_STATE(current_machine->accelerator);
> + KVMState *s = KVM_STATE(current_accel());
> struct ppc_radix_page_info *radix_page_info;
> struct kvm_ppc_rmmu_info rmmu_info;
> int i;
What about the usage in kvmppc_svm_off()?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2 09/10] accel: Replace current_machine->accelerator by current_accel() wrapper
2020-01-21 11:03 ` [PATCH v2 09/10] accel: Replace current_machine->accelerator by current_accel() wrapper Philippe Mathieu-Daudé
2020-01-21 14:03 ` Cornelia Huck
@ 2020-01-22 3:28 ` David Gibson
1 sibling, 0 replies; 3+ messages in thread
From: David Gibson @ 2020-01-22 3:28 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: qemu-devel, Peter Maydell, Marcelo Tosatti, Cornelia Huck,
qemu-s390x, David Hildenbrand, qemu-ppc, Eduardo Habkost,
Like Xu, Markus Armbruster, qemu-arm, Paolo Bonzini,
Richard Henderson, Alistair Francis, open list:Overall KVM CPUs
[-- Attachment #1: Type: text/plain, Size: 5124 bytes --]
On Tue, Jan 21, 2020 at 12:03:48PM +0100, Philippe Mathieu-Daudé wrote:
> We actually want to access the accelerator, not the machine, so
> use the current_accel() wrapper instead.
>
> Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
> Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
ppc parts
Acked-by: David Gibson <david@gibson.dropbear.id.au>
> ---
> v2:
> - Reworded description
> - Remove unused include in arm/kvm64
> ---
> accel/kvm/kvm-all.c | 4 ++--
> accel/tcg/tcg-all.c | 2 +-
> memory.c | 2 +-
> target/arm/kvm64.c | 5 ++---
> target/i386/kvm.c | 2 +-
> target/ppc/kvm.c | 2 +-
> vl.c | 2 +-
> 7 files changed, 9 insertions(+), 10 deletions(-)
>
> diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
> index 1ada2f4ecb..c111312dfd 100644
> --- a/accel/kvm/kvm-all.c
> +++ b/accel/kvm/kvm-all.c
> @@ -164,7 +164,7 @@ static NotifierList kvm_irqchip_change_notifiers =
>
> int kvm_get_max_memslots(void)
> {
> - KVMState *s = KVM_STATE(current_machine->accelerator);
> + KVMState *s = KVM_STATE(current_accel());
>
> return s->nr_slots;
> }
> @@ -1848,7 +1848,7 @@ static int kvm_max_vcpu_id(KVMState *s)
>
> bool kvm_vcpu_id_is_valid(int vcpu_id)
> {
> - KVMState *s = KVM_STATE(current_machine->accelerator);
> + KVMState *s = KVM_STATE(current_accel());
> return vcpu_id >= 0 && vcpu_id < kvm_max_vcpu_id(s);
> }
>
> diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c
> index 1dc384c8d2..1802ce02f6 100644
> --- a/accel/tcg/tcg-all.c
> +++ b/accel/tcg/tcg-all.c
> @@ -124,7 +124,7 @@ static void tcg_accel_instance_init(Object *obj)
>
> static int tcg_init(MachineState *ms)
> {
> - TCGState *s = TCG_STATE(current_machine->accelerator);
> + TCGState *s = TCG_STATE(current_accel());
>
> tcg_exec_init(s->tb_size * 1024 * 1024);
> cpu_interrupt_handler = tcg_handle_interrupt;
> diff --git a/memory.c b/memory.c
> index d7b9bb6951..854798791e 100644
> --- a/memory.c
> +++ b/memory.c
> @@ -3104,7 +3104,7 @@ void mtree_info(bool flatview, bool dispatch_tree, bool owner)
> };
> GArray *fv_address_spaces;
> GHashTable *views = g_hash_table_new(g_direct_hash, g_direct_equal);
> - AccelClass *ac = ACCEL_GET_CLASS(current_machine->accelerator);
> + AccelClass *ac = ACCEL_GET_CLASS(current_accel());
>
> if (ac->has_memory) {
> fvi.ac = ac;
> diff --git a/target/arm/kvm64.c b/target/arm/kvm64.c
> index 876184b8fe..e3c580e749 100644
> --- a/target/arm/kvm64.c
> +++ b/target/arm/kvm64.c
> @@ -26,7 +26,6 @@
> #include "sysemu/kvm.h"
> #include "sysemu/kvm_int.h"
> #include "kvm_arm.h"
> -#include "hw/boards.h"
> #include "internals.h"
>
> static bool have_guest_debug;
> @@ -613,14 +612,14 @@ bool kvm_arm_get_host_cpu_features(ARMHostCPUFeatures *ahcf)
>
> bool kvm_arm_aarch32_supported(CPUState *cpu)
> {
> - KVMState *s = KVM_STATE(current_machine->accelerator);
> + KVMState *s = KVM_STATE(current_accel());
>
> return kvm_check_extension(s, KVM_CAP_ARM_EL1_32BIT);
> }
>
> bool kvm_arm_sve_supported(CPUState *cpu)
> {
> - KVMState *s = KVM_STATE(current_machine->accelerator);
> + KVMState *s = KVM_STATE(current_accel());
>
> return kvm_check_extension(s, KVM_CAP_ARM_SVE);
> }
> diff --git a/target/i386/kvm.c b/target/i386/kvm.c
> index 7ee3202634..eddb930065 100644
> --- a/target/i386/kvm.c
> +++ b/target/i386/kvm.c
> @@ -147,7 +147,7 @@ bool kvm_allows_irq0_override(void)
>
> static bool kvm_x2apic_api_set_flags(uint64_t flags)
> {
> - KVMState *s = KVM_STATE(current_machine->accelerator);
> + KVMState *s = KVM_STATE(current_accel());
>
> return !kvm_vm_enable_cap(s, KVM_CAP_X2APIC_API, 0, flags);
> }
> diff --git a/target/ppc/kvm.c b/target/ppc/kvm.c
> index b5799e62b4..45ede6b6d9 100644
> --- a/target/ppc/kvm.c
> +++ b/target/ppc/kvm.c
> @@ -258,7 +258,7 @@ static void kvm_get_smmu_info(struct kvm_ppc_smmu_info *info, Error **errp)
>
> struct ppc_radix_page_info *kvm_get_radix_page_info(void)
> {
> - KVMState *s = KVM_STATE(current_machine->accelerator);
> + KVMState *s = KVM_STATE(current_accel());
> struct ppc_radix_page_info *radix_page_info;
> struct kvm_ppc_rmmu_info rmmu_info;
> int i;
> diff --git a/vl.c b/vl.c
> index 71d3e7eefb..a8ea36f4f8 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2812,7 +2812,7 @@ static void configure_accelerators(const char *progname)
> }
>
> if (init_failed) {
> - AccelClass *ac = ACCEL_GET_CLASS(current_machine->accelerator);
> + AccelClass *ac = ACCEL_GET_CLASS(current_accel());
> error_report("falling back to %s", ac->name);
> }
>
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-01-22 3:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20200121110349.25842-1-philmd@redhat.com>
2020-01-21 11:03 ` [PATCH v2 09/10] accel: Replace current_machine->accelerator by current_accel() wrapper Philippe Mathieu-Daudé
2020-01-21 14:03 ` Cornelia Huck
2020-01-22 3:28 ` David Gibson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).