All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Hildenbrand <david@redhat.com>
To: qemu-s390x@nongnu.org
Cc: qemu-devel@nongnu.org, Richard Henderson <rth@twiddle.net>,
	Alexander Graf <agraf@suse.de>, Cornelia Huck <cohuck@redhat.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	Thomas Huth <thuth@redhat.com>,
	"Jason J . Herne" <jjherne@linux.ibm.com>,
	"Collin L . Walling" <walling@linux.ibm.com>,
	david@redhat.com
Subject: [Qemu-devel] [PATCH v1 0/7] s390x: TOD refactoring + TCG CPU hotplug support
Date: Fri, 25 May 2018 13:37:01 +0200	[thread overview]
Message-ID: <20180525113708.29856-1-david@redhat.com> (raw)

The TOD in TCG is not handled correctly:
- each CPU has its own TOD based on CPU creation time vs. a system TOD
- TOD is not migrated
- TOD timer is not restarted during migration
- CKC interrupts/TOD timer is not cleared when resetting the CKC

This (and a cpu creation problem for single threaded TCG) currently made
CPU hotplug under TCG not work. Now it's working :)

The fist patch also refactors TOD handling for KVM (moved into a new
TOD device).

The cpu timer is in a similar bad shape, but this will require more work :(

David Hildenbrand (7):
  s390x/tod: factor out TOD into separate device
  s390x/tcg: drop tod_basetime
  s390x/tcg: properly implement the TOD
  s390x/tcg: SET CLOCK COMPARATOR can clear CKC interrupts
  s390x/tcg: implement SET CLOCK
  s390x/tcg: rearm the CKC timer during migration
  s390x/tcg: fix CPU hotplug with single-threaded TCG

 hw/s390x/Makefile.objs     |   3 +
 hw/s390x/s390-virtio-ccw.c |  57 +---------------
 hw/s390x/tod-kvm.c         |  64 ++++++++++++++++++
 hw/s390x/tod-qemu.c        |  84 ++++++++++++++++++++++++
 hw/s390x/tod.c             | 131 +++++++++++++++++++++++++++++++++++++
 include/hw/s390x/tod.h     |  65 ++++++++++++++++++
 target/s390x/cpu.c         |  52 ++-------------
 target/s390x/cpu.h         |   9 +--
 target/s390x/helper.h      |   1 +
 target/s390x/insn-data.def |   3 +-
 target/s390x/internal.h    |  15 -----
 target/s390x/kvm_s390x.h   |   2 +
 target/s390x/machine.c     |   7 ++
 target/s390x/misc_helper.c |  59 +++++++++++++++--
 target/s390x/translate.c   |   9 +++
 15 files changed, 434 insertions(+), 127 deletions(-)
 create mode 100644 hw/s390x/tod-kvm.c
 create mode 100644 hw/s390x/tod-qemu.c
 create mode 100644 hw/s390x/tod.c
 create mode 100644 include/hw/s390x/tod.h

-- 
2.17.0

             reply	other threads:[~2018-05-25 11:37 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-25 11:37 David Hildenbrand [this message]
2018-05-25 11:37 ` [Qemu-devel] [PATCH v1 1/7] s390x/tod: factor out TOD into separate device David Hildenbrand
2018-06-04 11:38   ` Cornelia Huck
2018-06-04 12:00     ` David Hildenbrand
2018-06-04 12:14       ` Cornelia Huck
2018-06-07 10:49         ` [Qemu-devel] [qemu-s390x] " David Hildenbrand
2018-06-07 11:10           ` Cornelia Huck
2018-05-25 11:37 ` [Qemu-devel] [PATCH v1 2/7] s390x/tcg: drop tod_basetime David Hildenbrand
2018-05-25 11:37 ` [Qemu-devel] [PATCH v1 3/7] s390x/tcg: properly implement the TOD David Hildenbrand
2018-06-04 11:57   ` Cornelia Huck
2018-06-04 11:59     ` David Hildenbrand
2018-05-25 11:37 ` [Qemu-devel] [PATCH v1 4/7] s390x/tcg: SET CLOCK COMPARATOR can clear CKC interrupts David Hildenbrand
2018-05-25 11:37 ` [Qemu-devel] [PATCH v1 5/7] s390x/tcg: implement SET CLOCK David Hildenbrand
2018-06-04 12:05   ` Cornelia Huck
2018-06-07 10:48     ` [Qemu-devel] [qemu-s390x] " David Hildenbrand
2018-06-07 11:15       ` Cornelia Huck
2018-05-25 11:37 ` [Qemu-devel] [PATCH v1 6/7] s390x/tcg: rearm the CKC timer during migration David Hildenbrand
2018-06-04 12:09   ` Cornelia Huck
2018-06-07 10:47     ` [Qemu-devel] [qemu-s390x] " David Hildenbrand
2018-05-25 11:37 ` [Qemu-devel] [PATCH v1 7/7] s390x/tcg: fix CPU hotplug with single-threaded TCG David Hildenbrand

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=20180525113708.29856-1-david@redhat.com \
    --to=david@redhat.com \
    --cc=agraf@suse.de \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=jjherne@linux.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=rth@twiddle.net \
    --cc=thuth@redhat.com \
    --cc=walling@linux.ibm.com \
    /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.