qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Claudio Imbrenda <imbrenda@linux.vnet.ibm.com>
To: cohuck@redhat.com
Cc: qemu-s390x@nongnu.org, qemu-devel@nongnu.org, borntraeger@de.ibm.com
Subject: [Qemu-devel] [PATCH v4 0/3] s390x/sclp: 64 bit event masks
Date: Fri, 23 Feb 2018 18:42:55 +0100	[thread overview]
Message-ID: <1519407778-23095-1-git-send-email-imbrenda@linux.vnet.ibm.com> (raw)

Until 67915de9f0383ccf4a ("s390x/event-facility: variable-length event masks")
we only supported 32bit sclp event masks, even though the archiecture
allows the guests to set up sclp event masks up to 1021 bytes in length.
With that patch the behaviour was almost compliant, but some issues were
still remaining, in particular regarding the handling of selective reads
and migration.

This patchset fixes migration and the handling of selective reads, and
puts in place the support for 64-bit sclp event masks internally.

A new property of the sclp-event device switches between the 32bit masks
and the compliant behaviour. The property is bound to the machine
version, so older machines keep the old broken behaviour, allowing for
migration, but the default is the compliant implementation.

Fixes: 67915de9f0383ccf4a ("s390x/event-facility: variable-length event masks")

v3 -> v4
* removed all pre_load hooks
* split the internal represntation of the receive mask into an array of
  uint32_t and added accessors; the union would not work on little
  endian hosts!
* fixed the pre-existing documentation comment for copy_mask

v2 -> v3
* fixed some typos in the first patch description
* updated an existing comment in the third patch: newer Linux versions
  will support masks larger than 4 bytes.

v1 -> v2 
* improved comments and patch descriptions to better explain why we need
  this, including better description of the old broken behaviour
* rename SCLPEVMSK to SCLP_EVMASK to improve readability
* removed some unneded variable initializations
* fixed a pre-existing typo

Claudio Imbrenda (3):
  s390x/sclp: proper support of larger send and receive masks
  s390x/sclp: clean up sclp masks
  s390x/sclp: extend SCLP event masks to 64 bits

 hw/char/sclpconsole-lm.c          |   4 +-
 hw/char/sclpconsole.c             |   4 +-
 hw/s390x/event-facility.c         | 153 ++++++++++++++++++++++++++++++--------
 hw/s390x/s390-virtio-ccw.c        |   8 +-
 hw/s390x/sclpcpu.c                |   4 +-
 hw/s390x/sclpquiesce.c            |   4 +-
 include/hw/s390x/event-facility.h |  22 +++---
 7 files changed, 148 insertions(+), 51 deletions(-)

-- 
2.7.4

             reply	other threads:[~2018-02-23 17:43 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-23 17:42 Claudio Imbrenda [this message]
2018-02-23 17:42 ` [Qemu-devel] [PATCH v4 1/3] s390x/sclp: proper support of larger send and receive masks Claudio Imbrenda
2018-03-02  9:09   ` [Qemu-devel] [qemu-s390x] " Christian Borntraeger
2018-03-06 15:21     ` Cornelia Huck
2018-03-06 15:29       ` Claudio Imbrenda
2018-02-23 17:42 ` [Qemu-devel] [PATCH v4 2/3] s390x/sclp: clean up sclp masks Claudio Imbrenda
2018-03-02  9:18   ` [Qemu-devel] [qemu-s390x] " Christian Borntraeger
2018-03-06 15:27   ` [Qemu-devel] " Cornelia Huck
2018-02-23 17:42 ` [Qemu-devel] [PATCH v4 3/3] s390x/sclp: extend SCLP event masks to 64 bits Claudio Imbrenda
2018-02-26 16:57   ` Cornelia Huck
2018-02-28 19:31     ` Christian Borntraeger
2018-03-06 14:26     ` Claudio Imbrenda
2018-03-02  9:44   ` [Qemu-devel] [qemu-s390x] " Christian Borntraeger
2018-03-05 15:27     ` Cornelia Huck
2018-03-06  8:23       ` Christian Borntraeger
2018-03-06  9:27         ` Cornelia Huck
2018-03-06 15:09           ` Claudio Imbrenda
2018-03-06 15:09         ` Claudio Imbrenda
2018-03-06 15:07       ` Claudio Imbrenda
2018-02-26 16:39 ` [Qemu-devel] [PATCH v4 0/3] s390x/sclp: 64 bit event masks Cornelia Huck
2018-03-07  9:41 ` Cornelia Huck

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=1519407778-23095-1-git-send-email-imbrenda@linux.vnet.ibm.com \
    --to=imbrenda@linux.vnet.ibm.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).