From 3ea6d20e0baacb4a1211ed0ea57db14e2fc927ce Mon Sep 17 00:00:00 2001 From: Thomas Huth Date: Thu, 24 Aug 2017 14:00:29 +0200 Subject: [PATCH] s390x/s390-stattrib: Mark the storage attribute as not user_creatable The storage attribute devices are only meant to be instantiated one time, internally. They can not be used by the user, so mark them with user_creatable = false. Suggested-by: Claudio Imbrenda Signed-off-by: Thomas Huth Message-Id: <1503576029-24264-1-git-send-email-thuth@redhat.com> Reviewed-by: Claudio Imbrenda Reviewed-by: Halil Pasic Signed-off-by: Cornelia Huck --- hw/s390x/s390-stattrib-kvm.c | 4 ++++ hw/s390x/s390-stattrib.c | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/hw/s390x/s390-stattrib-kvm.c b/hw/s390x/s390-stattrib-kvm.c index ed95d13c68..41770a7dec 100644 --- a/hw/s390x/s390-stattrib-kvm.c +++ b/hw/s390x/s390-stattrib-kvm.c @@ -164,6 +164,7 @@ static int kvm_s390_stattrib_get_active(S390StAttribState *sa) static void kvm_s390_stattrib_class_init(ObjectClass *oc, void *data) { S390StAttribClass *sac = S390_STATTRIB_CLASS(oc); + DeviceClass *dc = DEVICE_CLASS(oc); sac->get_stattr = kvm_s390_stattrib_get_stattr; sac->peek_stattr = kvm_s390_stattrib_peek_stattr; @@ -172,6 +173,9 @@ static void kvm_s390_stattrib_class_init(ObjectClass *oc, void *data) sac->get_dirtycount = kvm_s390_stattrib_get_dirtycount; sac->synchronize = kvm_s390_stattrib_synchronize; sac->get_active = kvm_s390_stattrib_get_active; + + /* Reason: Can only be instantiated one time (internally) */ + dc->user_creatable = false; } static const TypeInfo kvm_s390_stattrib_info = { diff --git a/hw/s390x/s390-stattrib.c b/hw/s390x/s390-stattrib.c index 14a02711a2..2902f54f11 100644 --- a/hw/s390x/s390-stattrib.c +++ b/hw/s390x/s390-stattrib.c @@ -306,6 +306,7 @@ static int qemu_s390_get_active(S390StAttribState *sa) static void qemu_s390_stattrib_class_init(ObjectClass *oc, void *data) { S390StAttribClass *sa_cl = S390_STATTRIB_CLASS(oc); + DeviceClass *dc = DEVICE_CLASS(oc); sa_cl->synchronize = qemu_s390_synchronize_stub; sa_cl->get_stattr = qemu_s390_get_stattr_stub; @@ -314,6 +315,9 @@ static void qemu_s390_stattrib_class_init(ObjectClass *oc, void *data) sa_cl->set_migrationmode = qemu_s390_set_migrationmode_stub; sa_cl->get_dirtycount = qemu_s390_get_dirtycount_stub; sa_cl->get_active = qemu_s390_get_active; + + /* Reason: Can only be instantiated one time (internally) */ + dc->user_creatable = false; } static const TypeInfo qemu_s390_stattrib_info = {