s390x/ipl: The s390-ipl device is not hot-pluggable
authorThomas Huth <thuth@redhat.com>
Wed, 16 Aug 2017 05:30:58 +0000 (07:30 +0200)
committerCornelia Huck <cohuck@redhat.com>
Wed, 30 Aug 2017 16:23:25 +0000 (18:23 +0200)
The s390-ipl device can not be created by the user, since it is meant only
to  be instantiated once internally to load the ROMs and kernel. If the user
tries to do a "device_add s390-ipl" via the monitor later, QEMU aborts with
a "ROM images must be loaded at startup" error message.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <1502861458-30270-1-git-send-email-thuth@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
hw/s390x/ipl.c

index cc360031ef28e821ef85ae3ef2ce824872ef189e..0d06fc12b63ca8392ef39def0a189990607bc4fc 100644 (file)
@@ -442,6 +442,8 @@ static void s390_ipl_class_init(ObjectClass *klass, void *data)
     dc->reset = s390_ipl_reset;
     dc->vmsd = &vmstate_ipl;
     set_bit(DEVICE_CATEGORY_MISC, dc->categories);
+    /* Reason: Loads the ROMs and thus can only be used one time - internally */
+    dc->user_creatable = false;
 }
 
 static const TypeInfo s390_ipl_info = {