s390x/css: Use static initialization for channel_subsys fields
authorEduardo Habkost <ehabkost@redhat.com>
Tue, 16 Feb 2016 20:59:06 +0000 (18:59 -0200)
committerCornelia Huck <cornelia.huck@de.ibm.com>
Tue, 1 Mar 2016 11:15:29 +0000 (12:15 +0100)
machine_init() will be gone, but we don't need it if we just
initialize the channel_subsys fields statically.

Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Alexander Graf <agraf@suse.de>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <1455656347-29033-4-git-send-email-ehabkost@redhat.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
[adapted on top of indicator changes]
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
hw/s390x/css.c

index 3b16c82..55cb26a 100644 (file)
@@ -63,7 +63,17 @@ typedef struct ChannelSubSys {
     QTAILQ_HEAD(, IndAddr) indicator_addresses;
 } ChannelSubSys;
 
-static ChannelSubSys channel_subsys;
+static ChannelSubSys channel_subsys = {
+    .pending_crws = QTAILQ_HEAD_INITIALIZER(channel_subsys.pending_crws),
+    .do_crw_mchk = true,
+    .sei_pending = false,
+    .do_crw_mchk = true,
+    .crws_lost = false,
+    .chnmon_active = false,
+    .io_adapters = QTAILQ_HEAD_INITIALIZER(channel_subsys.io_adapters),
+    .indicator_addresses =
+        QTAILQ_HEAD_INITIALIZER(channel_subsys.indicator_addresses),
+};
 
 IndAddr *get_indicator(hwaddr ind_addr, int len)
 {
@@ -1576,19 +1586,6 @@ int subch_device_load(SubchDev *s, QEMUFile *f)
     return 0;
 }
 
-
-static void css_init(void)
-{
-    QTAILQ_INIT(&channel_subsys.pending_crws);
-    channel_subsys.sei_pending = false;
-    channel_subsys.do_crw_mchk = true;
-    channel_subsys.crws_lost = false;
-    channel_subsys.chnmon_active = false;
-    QTAILQ_INIT(&channel_subsys.io_adapters);
-    QTAILQ_INIT(&channel_subsys.indicator_addresses);
-}
-machine_init(css_init);
-
 void css_reset_sch(SubchDev *sch)
 {
     PMCW *p = &sch->curr_status.pmcw;