All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Andreas Färber" <afaerber@suse.de>
To: "Jason J. Herne" <jjherne@us.ibm.com>, qemu-devel@nongnu.org
Cc: borntraeger@de.ibm.com, agraf@suse.de
Subject: Re: [Qemu-devel] [PATCH 3/3] s390-sclp: SCLP Event integration
Date: Mon, 20 Jan 2014 18:16:06 +0100	[thread overview]
Message-ID: <52DD59D6.7010006@suse.de> (raw)
In-Reply-To: <1390236993-21783-4-git-send-email-jjherne@us.ibm.com>

Hi,

Thanks for splitting these off.

Am 20.01.2014 17:56, schrieb Jason J. Herne:
> From: "Jason J. Herne" <jjherne@us.ibm.com>
> 
> Add an sclp event for "cpu was hot plugged".  This allows Qemu to deliver an
> SCLP interrupt to the guest stating that the requested cpu hotplug was
> completed.
> 
> Signed-off-by: Jason J. Herne <jjherne@us.ibm.com>
> ---
>  hw/s390x/Makefile.objs            |   1 +
>  hw/s390x/event-facility.c         |   6 ++
>  hw/s390x/sclpcpu.c                | 113 ++++++++++++++++++++++++++++++++++++++
>  include/hw/s390x/event-facility.h |   3 +
>  include/hw/s390x/sclp.h           |   1 +
>  5 files changed, 124 insertions(+)
>  create mode 100644 hw/s390x/sclpcpu.c
[...]
> diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
> index 25951a0..575d407 100644
> --- a/hw/s390x/event-facility.c
> +++ b/hw/s390x/event-facility.c
> @@ -32,6 +32,8 @@ struct SCLPEventFacility {
>      unsigned int receive_mask;
>  };
>  
> +SCLPEvent cpu_hotplug;
> +
>  /* return true if any child has event pending set */
>  static bool event_pending(SCLPEventFacility *ef)
>  {
> @@ -335,6 +337,10 @@ static int init_event_facility(S390SCLPDevice *sdev)
>      }
>      qdev_init_nofail(quiesce);
>  
> +    object_initialize(&cpu_hotplug, sizeof(cpu_hotplug), "sclp-cpu-hotplug");

Any chance we can use a TYPE_* define in event-facility.h?

> +    qdev_set_parent_bus(DEVICE(&cpu_hotplug), BUS(&event_facility->sbus));
> +    object_property_set_bool(OBJECT(&cpu_hotplug), true, "realized", NULL);

Otherwise looks okay to me, except for two minor nits below.

> +
>      return 0;
>  }
>  
> diff --git a/hw/s390x/sclpcpu.c b/hw/s390x/sclpcpu.c
> new file mode 100644
> index 0000000..7fd1f9e
> --- /dev/null
> +++ b/hw/s390x/sclpcpu.c
[...]
> +static void cpu_class_init(ObjectClass *klass, void *data)

Please use oc to avoid the deliberately misspelled klass.

> +{
> +    SCLPEventClass *k = SCLP_EVENT_CLASS(klass);
> +
> +    k->init = irq_cpu_hotplug_init;
> +    k->get_send_mask = send_mask;
> +    k->get_receive_mask = receive_mask;
> +    k->read_event_data = read_event_data;
> +    k->write_event_data = NULL;
> +}
> +
> +static const TypeInfo sclp_cpu_info = {
> +    .name          = "sclp-cpu-hotplug",
> +    .parent        = TYPE_SCLP_EVENT,
> +    .instance_size = sizeof(SCLPEvent),
> +    .class_init    = cpu_class_init,
> +    .class_size    = sizeof(SCLPEventClass),
> +};
> +
> +static void register_types(void)

Please use your unique prefix: sclp_cpu_register_types

> +{
> +    type_register_static(&sclp_cpu_info);
> +}
> +
> +type_init(register_types)
> +

Trailing white line.

> diff --git a/include/hw/s390x/event-facility.h b/include/hw/s390x/event-facility.h
> index 7ce7079..4347f06 100644
> --- a/include/hw/s390x/event-facility.h
> +++ b/include/hw/s390x/event-facility.h
> @@ -17,10 +17,12 @@
>  
>  #include <hw/qdev.h>
>  #include "qemu/thread.h"
> +#include "hw/s390x/sclp.h"
>  
>  /* SCLP event types */
>  #define SCLP_EVENT_OPRTNS_COMMAND               0x01
>  #define SCLP_EVENT_MESSAGE                      0x02
> +#define SCLP_EVENT_CONFIG_MGT_DATA              0x04
>  #define SCLP_EVENT_PMSGCMD                      0x09
>  #define SCLP_EVENT_ASCII_CONSOLE_DATA           0x1a
>  #define SCLP_EVENT_SIGNAL_QUIESCE               0x1d
> @@ -28,6 +30,7 @@
>  /* SCLP event masks */
>  #define SCLP_EVENT_MASK_SIGNAL_QUIESCE          0x00000008
>  #define SCLP_EVENT_MASK_MSG_ASCII               0x00000040
> +#define SCLP_EVENT_MASK_CONFIG_MGT_DATA         0x10000000
>  #define SCLP_EVENT_MASK_OP_CMD                  0x80000000
>  #define SCLP_EVENT_MASK_MSG                     0x40000000
>  #define SCLP_EVENT_MASK_PMSGCMD                 0x00800000
[snip]

Regards,
Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

      reply	other threads:[~2014-01-20 17:16 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-20 16:56 [Qemu-devel] [PATCH 0/3] S390 SCLP improvements for CPU Hotplug Jason J. Herne
2014-01-20 16:56 ` [Qemu-devel] [PATCH 1/3] s390-sclp: Define New SCLP Codes Jason J. Herne
2014-01-20 16:56 ` [Qemu-devel] [PATCH 2/3] s390-sclp: SCLP CPU Info Jason J. Herne
2014-01-20 16:56 ` [Qemu-devel] [PATCH 3/3] s390-sclp: SCLP Event integration Jason J. Herne
2014-01-20 17:16   ` Andreas Färber [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52DD59D6.7010006@suse.de \
    --to=afaerber@suse.de \
    --cc=agraf@suse.de \
    --cc=borntraeger@de.ibm.com \
    --cc=jjherne@us.ibm.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.