qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: David Hildenbrand <david@redhat.com>
To: qemu-devel@nongnu.org
Cc: thuth@redhat.com, cohuck@redhat.com,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	Alexander Graf <agraf@suse.de>,
	Richard Henderson <rth@twiddle.net>
Subject: [Qemu-devel] [PATCH v1 0/6] s390x/tcg: fix some accesses using low address
Date: Tue, 26 Sep 2017 20:33:12 +0200	[thread overview]
Message-ID: <20170926183318.12995-1-david@redhat.com> (raw)

Conny reported that a guest Linux currently spits out:
  "The s390-virtio transport is deprecated. Please switch to a modern host
  providing virtio-ccw."

This is strange, because we have no legacy virtio transport in QEMU :)

Main problem is, that a page is tested for acccess, and the test does not
fail. All memory access variants like stb_phys() will never fail. On
invalid memory, they simply do nothing.

Linux uses lura for this check. Let's introduce a _real MMU that handles
prefixing and can later be used for things like low address protection.

The other BUG is that a check for invalid memory is wrong. Therefore,
Patch 1 alone makes the guest crash when trying to initialize the
virtio transport. Crazy stuff.

David Hildenbrand (6):
  s390x/tcg: fix checking for invalid memory check
  s390x/tcg: add MMU for real addresses
  s390x/tcg: make lura(g) use the new _real mmu.
  s390x/tcg: make stora(g) use the new _real mmu
  s390x/tcg: make testblock use the new _real mmu
  s390x/tcg: make idte/ipte use the new _real mmu

 target/s390x/cpu.h         |  4 +++-
 target/s390x/excp_helper.c | 29 +++++++++++++++++++----------
 target/s390x/internal.h    |  2 ++
 target/s390x/mem_helper.c  | 36 +++++++++++-------------------------
 target/s390x/mmu_helper.c  | 19 +++++++++++++++++++
 target/s390x/translate.c   |  4 ----
 6 files changed, 54 insertions(+), 40 deletions(-)

-- 
2.13.5

             reply	other threads:[~2017-09-26 18:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-26 18:33 David Hildenbrand [this message]
2017-09-26 18:33 ` [Qemu-devel] [PATCH v1 1/6] s390x/tcg: fix checking for invalid memory check David Hildenbrand
2017-09-26 18:33 ` [Qemu-devel] [PATCH v1 2/6] s390x/tcg: add MMU for real addresses David Hildenbrand
2017-09-27 12:20   ` David Hildenbrand
2017-09-26 18:33 ` [Qemu-devel] [PATCH v1 3/6] s390x/tcg: make lura(g) use the new _real mmu David Hildenbrand
2017-09-26 18:33 ` [Qemu-devel] [PATCH v1 4/6] s390x/tcg: make stora(g) " David Hildenbrand
2017-09-26 18:33 ` [Qemu-devel] [PATCH v1 5/6] s390x/tcg: make testblock " David Hildenbrand
2017-09-26 18:33 ` [Qemu-devel] [PATCH v1 6/6] s390x/tcg: make idte/ipte " David Hildenbrand
2017-09-26 23:10 ` [Qemu-devel] [PATCH v1 0/6] s390x/tcg: fix some accesses using low address Richard Henderson
2017-09-27  7:38   ` Thomas Huth
2017-09-27 11:49 ` 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=20170926183318.12995-1-david@redhat.com \
    --to=david@redhat.com \
    --cc=agraf@suse.de \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    --cc=thuth@redhat.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 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).