diff mbox series

[v2] s390x/sclpconsole: Remove dead code - delete error handlers

Message ID 20180305174914.25931-1-nia.alarie@gmail.com
State New
Headers show
Series [v2] s390x/sclpconsole: Remove dead code - delete error handlers | expand

Commit Message

nee March 5, 2018, 5:49 p.m. UTC
The other event handlers (quiesce and cpu) do not define these
handlers, and this one does nothing, so it can be removed.

virtio_ccw_exit always returns 0, so change its return type to
void.

Signed-off-by: Nia Alarie <nia.alarie@gmail.com>
---
 hw/char/sclpconsole-lm.c          |  6 ------
 hw/char/sclpconsole.c             |  6 ------
 hw/s390x/event-facility.c         | 14 --------------
 hw/s390x/virtio-ccw.c             |  6 +++---
 hw/s390x/virtio-ccw.h             |  2 +-
 include/hw/s390x/event-facility.h |  1 -
 6 files changed, 4 insertions(+), 31 deletions(-)

Comments

Christian Borntraeger March 6, 2018, 8:13 a.m. UTC | #1
On 03/05/2018 06:49 PM, Nia Alarie wrote:
> The other event handlers (quiesce and cpu) do not define these
> handlers, and this one does nothing, so it can be removed.
> 
> virtio_ccw_exit always returns 0, so change its return type to
> void.
> 
> Signed-off-by: Nia Alarie <nia.alarie@gmail.com>


I would like to have 2 patches to make the subject non-misleading.

patch1: sclp/event
patch2: virtio-ccw

With that
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>

> ---
>  hw/char/sclpconsole-lm.c          |  6 ------
>  hw/char/sclpconsole.c             |  6 ------
>  hw/s390x/event-facility.c         | 14 --------------
>  hw/s390x/virtio-ccw.c             |  6 +++---
>  hw/s390x/virtio-ccw.h             |  2 +-
>  include/hw/s390x/event-facility.h |  1 -
>  6 files changed, 4 insertions(+), 31 deletions(-)
> 
> diff --git a/hw/char/sclpconsole-lm.c b/hw/char/sclpconsole-lm.c
> index c500bdaf29..84efd8df73 100644
> --- a/hw/char/sclpconsole-lm.c
> +++ b/hw/char/sclpconsole-lm.c
> @@ -318,11 +318,6 @@ static int console_init(SCLPEvent *event)
>      return 0;
>  }
> 
> -static int console_exit(SCLPEvent *event)
> -{
> -    return 0;
> -}
> -
>  static void console_reset(DeviceState *dev)
>  {
>     SCLPEvent *event = SCLP_EVENT(dev);
> @@ -349,7 +344,6 @@ static void console_class_init(ObjectClass *klass, void *data)
>      dc->reset = console_reset;
>      dc->vmsd = &vmstate_sclplmconsole;
>      ec->init = console_init;
> -    ec->exit = console_exit;
>      ec->get_send_mask = send_mask;
>      ec->get_receive_mask = receive_mask;
>      ec->can_handle_event = can_handle_event;
> diff --git a/hw/char/sclpconsole.c b/hw/char/sclpconsole.c
> index d0265dfa7a..e6ba0a46bd 100644
> --- a/hw/char/sclpconsole.c
> +++ b/hw/char/sclpconsole.c
> @@ -246,11 +246,6 @@ static void console_reset(DeviceState *dev)
>     scon->notify = false;
>  }
> 
> -static int console_exit(SCLPEvent *event)
> -{
> -    return 0;
> -}
> -
>  static Property console_properties[] = {
>      DEFINE_PROP_CHR("chardev", SCLPConsole, chr),
>      DEFINE_PROP_END_OF_LIST(),
> @@ -265,7 +260,6 @@ static void console_class_init(ObjectClass *klass, void *data)
>      dc->reset = console_reset;
>      dc->vmsd = &vmstate_sclpconsole;
>      ec->init = console_init;
> -    ec->exit = console_exit;
>      ec->get_send_mask = send_mask;
>      ec->get_receive_mask = receive_mask;
>      ec->can_handle_event = can_handle_event;
> diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
> index 155a69467b..79de3c738f 100644
> --- a/hw/s390x/event-facility.c
> +++ b/hw/s390x/event-facility.c
> @@ -431,26 +431,12 @@ static void event_realize(DeviceState *qdev, Error **errp)
>      }
>  }
> 
> -static void event_unrealize(DeviceState *qdev, Error **errp)
> -{
> -    SCLPEvent *event = SCLP_EVENT(qdev);
> -    SCLPEventClass *child = SCLP_EVENT_GET_CLASS(event);
> -    if (child->exit) {
> -        int rc = child->exit(event);
> -        if (rc < 0) {
> -            error_setg(errp, "SCLP event exit failed.");
> -            return;
> -        }
> -    }
> -}
> -
>  static void event_class_init(ObjectClass *klass, void *data)
>  {
>      DeviceClass *dc = DEVICE_CLASS(klass);
> 
>      dc->bus_type = TYPE_SCLP_EVENTS_BUS;
>      dc->realize = event_realize;
> -    dc->unrealize = event_unrealize;
>  }
> 
>  static const TypeInfo sclp_event_type_info = {
> diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c
> index 8f7fbc2ab7..0773818a82 100644
> --- a/hw/s390x/virtio-ccw.c
> +++ b/hw/s390x/virtio-ccw.c
> @@ -752,7 +752,7 @@ out_err:
>      g_free(sch);
>  }
> 
> -static int virtio_ccw_exit(VirtioCcwDevice *dev)
> +static void virtio_ccw_exit(VirtioCcwDevice *dev)
>  {
>      CcwDevice *ccw_dev = CCW_DEVICE(dev);
>      SubchDev *sch = ccw_dev->sch;
> @@ -765,7 +765,6 @@ static int virtio_ccw_exit(VirtioCcwDevice *dev)
>          release_indicator(&dev->routes.adapter, dev->indicators);
>          dev->indicators = NULL;
>      }
> -    return 0;
>  }
> 
>  static void virtio_ccw_net_realize(VirtioCcwDevice *ccw_dev, Error **errp)
> @@ -1710,7 +1709,8 @@ static int virtio_ccw_busdev_exit(DeviceState *dev)
>      VirtioCcwDevice *_dev = (VirtioCcwDevice *)dev;
>      VirtIOCCWDeviceClass *_info = VIRTIO_CCW_DEVICE_GET_CLASS(dev);
> 
> -    return _info->exit(_dev);
> +    _info->exit(_dev);
> +    return 0;
>  }
> 
>  static void virtio_ccw_busdev_unplug(HotplugHandler *hotplug_dev,
> diff --git a/hw/s390x/virtio-ccw.h b/hw/s390x/virtio-ccw.h
> index 3905f3a3d6..8ffe7fe095 100644
> --- a/hw/s390x/virtio-ccw.h
> +++ b/hw/s390x/virtio-ccw.h
> @@ -76,7 +76,7 @@ typedef struct VirtioCcwDevice VirtioCcwDevice;
>  typedef struct VirtIOCCWDeviceClass {
>      CCWDeviceClass parent_class;
>      void (*realize)(VirtioCcwDevice *dev, Error **errp);
> -    int (*exit)(VirtioCcwDevice *dev);
> +    void (*exit)(VirtioCcwDevice *dev);
>  } VirtIOCCWDeviceClass;
> 
>  /* Performance improves when virtqueue kick processing is decoupled from the
> diff --git a/include/hw/s390x/event-facility.h b/include/hw/s390x/event-facility.h
> index 5119b9b7f0..b913f85edc 100644
> --- a/include/hw/s390x/event-facility.h
> +++ b/include/hw/s390x/event-facility.h
> @@ -174,7 +174,6 @@ typedef struct SCLPEvent {
>  typedef struct SCLPEventClass {
>      DeviceClass parent_class;
>      int (*init)(SCLPEvent *event);
> -    int (*exit)(SCLPEvent *event);
> 
>      /* get SCLP's send mask */
>      unsigned int (*get_send_mask)(void);
>
Cornelia Huck March 6, 2018, 8:30 a.m. UTC | #2
On Tue, 6 Mar 2018 09:13:33 +0100
Christian Borntraeger <borntraeger@de.ibm.com> wrote:

> On 03/05/2018 06:49 PM, Nia Alarie wrote:
> > The other event handlers (quiesce and cpu) do not define these
> > handlers, and this one does nothing, so it can be removed.
> > 
> > virtio_ccw_exit always returns 0, so change its return type to
> > void.
> > 
> > Signed-off-by: Nia Alarie <nia.alarie@gmail.com>  
> 
> 
> I would like to have 2 patches to make the subject non-misleading.
> 
> patch1: sclp/event
> patch2: virtio-ccw

Yes, please. sclp/event and virtio-ccw are two different code paths.

Also, looking at the virtio-ccw part: Rather than modifying exit
handlers, the code should be converted to unrealize instead.

> 
> With that
> Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
> 
> > ---
> >  hw/char/sclpconsole-lm.c          |  6 ------
> >  hw/char/sclpconsole.c             |  6 ------
> >  hw/s390x/event-facility.c         | 14 --------------
> >  hw/s390x/virtio-ccw.c             |  6 +++---
> >  hw/s390x/virtio-ccw.h             |  2 +-
> >  include/hw/s390x/event-facility.h |  1 -
> >  6 files changed, 4 insertions(+), 31 deletions(-)

I'd be happy to merge the sclp part for 2.12 if I get the patch
Thursday morning CET latest.

I'd be happy to merge an unrealize conversion for virtio-ccw as well,
but I'm not sure how much work that is (although it looks manageable).
diff mbox series

Patch

diff --git a/hw/char/sclpconsole-lm.c b/hw/char/sclpconsole-lm.c
index c500bdaf29..84efd8df73 100644
--- a/hw/char/sclpconsole-lm.c
+++ b/hw/char/sclpconsole-lm.c
@@ -318,11 +318,6 @@  static int console_init(SCLPEvent *event)
     return 0;
 }
 
-static int console_exit(SCLPEvent *event)
-{
-    return 0;
-}
-
 static void console_reset(DeviceState *dev)
 {
    SCLPEvent *event = SCLP_EVENT(dev);
@@ -349,7 +344,6 @@  static void console_class_init(ObjectClass *klass, void *data)
     dc->reset = console_reset;
     dc->vmsd = &vmstate_sclplmconsole;
     ec->init = console_init;
-    ec->exit = console_exit;
     ec->get_send_mask = send_mask;
     ec->get_receive_mask = receive_mask;
     ec->can_handle_event = can_handle_event;
diff --git a/hw/char/sclpconsole.c b/hw/char/sclpconsole.c
index d0265dfa7a..e6ba0a46bd 100644
--- a/hw/char/sclpconsole.c
+++ b/hw/char/sclpconsole.c
@@ -246,11 +246,6 @@  static void console_reset(DeviceState *dev)
    scon->notify = false;
 }
 
-static int console_exit(SCLPEvent *event)
-{
-    return 0;
-}
-
 static Property console_properties[] = {
     DEFINE_PROP_CHR("chardev", SCLPConsole, chr),
     DEFINE_PROP_END_OF_LIST(),
@@ -265,7 +260,6 @@  static void console_class_init(ObjectClass *klass, void *data)
     dc->reset = console_reset;
     dc->vmsd = &vmstate_sclpconsole;
     ec->init = console_init;
-    ec->exit = console_exit;
     ec->get_send_mask = send_mask;
     ec->get_receive_mask = receive_mask;
     ec->can_handle_event = can_handle_event;
diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
index 155a69467b..79de3c738f 100644
--- a/hw/s390x/event-facility.c
+++ b/hw/s390x/event-facility.c
@@ -431,26 +431,12 @@  static void event_realize(DeviceState *qdev, Error **errp)
     }
 }
 
-static void event_unrealize(DeviceState *qdev, Error **errp)
-{
-    SCLPEvent *event = SCLP_EVENT(qdev);
-    SCLPEventClass *child = SCLP_EVENT_GET_CLASS(event);
-    if (child->exit) {
-        int rc = child->exit(event);
-        if (rc < 0) {
-            error_setg(errp, "SCLP event exit failed.");
-            return;
-        }
-    }
-}
-
 static void event_class_init(ObjectClass *klass, void *data)
 {
     DeviceClass *dc = DEVICE_CLASS(klass);
 
     dc->bus_type = TYPE_SCLP_EVENTS_BUS;
     dc->realize = event_realize;
-    dc->unrealize = event_unrealize;
 }
 
 static const TypeInfo sclp_event_type_info = {
diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c
index 8f7fbc2ab7..0773818a82 100644
--- a/hw/s390x/virtio-ccw.c
+++ b/hw/s390x/virtio-ccw.c
@@ -752,7 +752,7 @@  out_err:
     g_free(sch);
 }
 
-static int virtio_ccw_exit(VirtioCcwDevice *dev)
+static void virtio_ccw_exit(VirtioCcwDevice *dev)
 {
     CcwDevice *ccw_dev = CCW_DEVICE(dev);
     SubchDev *sch = ccw_dev->sch;
@@ -765,7 +765,6 @@  static int virtio_ccw_exit(VirtioCcwDevice *dev)
         release_indicator(&dev->routes.adapter, dev->indicators);
         dev->indicators = NULL;
     }
-    return 0;
 }
 
 static void virtio_ccw_net_realize(VirtioCcwDevice *ccw_dev, Error **errp)
@@ -1710,7 +1709,8 @@  static int virtio_ccw_busdev_exit(DeviceState *dev)
     VirtioCcwDevice *_dev = (VirtioCcwDevice *)dev;
     VirtIOCCWDeviceClass *_info = VIRTIO_CCW_DEVICE_GET_CLASS(dev);
 
-    return _info->exit(_dev);
+    _info->exit(_dev);
+    return 0;
 }
 
 static void virtio_ccw_busdev_unplug(HotplugHandler *hotplug_dev,
diff --git a/hw/s390x/virtio-ccw.h b/hw/s390x/virtio-ccw.h
index 3905f3a3d6..8ffe7fe095 100644
--- a/hw/s390x/virtio-ccw.h
+++ b/hw/s390x/virtio-ccw.h
@@ -76,7 +76,7 @@  typedef struct VirtioCcwDevice VirtioCcwDevice;
 typedef struct VirtIOCCWDeviceClass {
     CCWDeviceClass parent_class;
     void (*realize)(VirtioCcwDevice *dev, Error **errp);
-    int (*exit)(VirtioCcwDevice *dev);
+    void (*exit)(VirtioCcwDevice *dev);
 } VirtIOCCWDeviceClass;
 
 /* Performance improves when virtqueue kick processing is decoupled from the
diff --git a/include/hw/s390x/event-facility.h b/include/hw/s390x/event-facility.h
index 5119b9b7f0..b913f85edc 100644
--- a/include/hw/s390x/event-facility.h
+++ b/include/hw/s390x/event-facility.h
@@ -174,7 +174,6 @@  typedef struct SCLPEvent {
 typedef struct SCLPEventClass {
     DeviceClass parent_class;
     int (*init)(SCLPEvent *event);
-    int (*exit)(SCLPEvent *event);
 
     /* get SCLP's send mask */
     unsigned int (*get_send_mask)(void);