]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
KVM: arm/arm64: Get rid of its->initialized field
authorMarc Zyngier <marc.zyngier@arm.com>
Mon, 8 May 2017 17:15:40 +0000 (18:15 +0100)
committerChristoffer Dall <cdall@linaro.org>
Tue, 9 May 2017 10:19:37 +0000 (12:19 +0200)
The its->initialized doesn't bring much to the table, and creates
unnecessary ordering between setting the address and initializing it
(which amounts to exactly nothing).

Let's kill it altogether, making KVM_DEV_ARM_VGIC_CTRL_INIT the no-op
it deserves to be.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <cdall@linaro.org>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
include/kvm/arm_vgic.h
virt/kvm/arm/vgic/vgic-its.c

index 4ff65efcfebd19227a587752da109a5718672ed5..bfde6fb78e8a4f1f87a68981fcbca03aa10466ba 100644 (file)
@@ -148,7 +148,6 @@ struct vgic_its {
        gpa_t                   vgic_its_base;
 
        bool                    enabled;
-       bool                    initialized;
        struct vgic_io_device   iodev;
        struct kvm_device       *dev;
 
index 9f7105c61ecef4feaa21eb26876e6e2813c72f9b..18318c67ed93a93047a8fa5b6da28687a9c6b20d 100644 (file)
@@ -1545,9 +1545,6 @@ static int vgic_register_its_iodev(struct kvm *kvm, struct vgic_its *its)
        struct vgic_io_device *iodev = &its->iodev;
        int ret;
 
-       if (!its->initialized)
-               return -EBUSY;
-
        if (IS_VGIC_ADDR_UNDEF(its->vgic_its_base))
                return -ENXIO;
 
@@ -1597,7 +1594,6 @@ static int vgic_its_create(struct kvm_device *dev, u32 type)
        INIT_LIST_HEAD(&its->collection_list);
 
        dev->kvm->arch.vgic.has_its = true;
-       its->initialized = false;
        its->enabled = false;
        its->dev = dev;
 
@@ -2397,8 +2393,7 @@ static int vgic_its_set_attr(struct kvm_device *dev,
 
                switch (attr->attr) {
                case KVM_DEV_ARM_VGIC_CTRL_INIT:
-                       its->initialized = true;
-
+                       /* Nothing to do */
                        return 0;
                case KVM_DEV_ARM_ITS_SAVE_TABLES:
                        return abi->save_tables(its);