qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Cornelia Huck <cohuck@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Thomas Huth <thuth@redhat.com>,
	qemu-s390x@nongnu.org, Cornelia Huck <cohuck@redhat.com>,
	qemu-devel@nongnu.org, David Hildenbrand <david@redhat.com>
Subject: [Qemu-devel] [PULL 3/7] s390x/mmu: ASC selection in s390_cpu_get_phys_page_debug()
Date: Thu, 22 Aug 2019 15:58:35 +0200	[thread overview]
Message-ID: <20190822135839.32340-5-cohuck@redhat.com> (raw)
In-Reply-To: <20190822135839.32340-1-cohuck@redhat.com>

From: David Hildenbrand <david@redhat.com>

Let's select the ASC before calling the function. This is a prepararion
to remove the ASC magic depending on the access mode from mmu_translate.

There is currently no way to distinguish if we have code or data access.
For now, we were using code access, because especially when debugging with
the gdbstub, we want to read and disassemble what we single-step.

Note: KVM guest can now no longer be crashed using qmp/hmp/gdbstub if they
happen to be in AR mode.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20190816084708.602-3-david@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
---
 target/s390x/helper.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/target/s390x/helper.c b/target/s390x/helper.c
index 1350ad319aba..948c0398d461 100644
--- a/target/s390x/helper.c
+++ b/target/s390x/helper.c
@@ -58,6 +58,11 @@ hwaddr s390_cpu_get_phys_page_debug(CPUState *cs, vaddr vaddr)
         vaddr &= 0x7fffffff;
     }
 
+    /* We want to read the code (e.g., see what we are single-stepping).*/
+    if (asc != PSW_ASC_HOME) {
+        asc = PSW_ASC_PRIMARY;
+    }
+
     if (mmu_translate(env, vaddr, MMU_INST_FETCH, asc, &raddr, &prot, false)) {
         return -1;
     }
-- 
2.20.1



  parent reply	other threads:[~2019-08-22 14:09 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-22 13:58 [Qemu-devel] [PULL 0/7] First batch of s390x changes for 4.2 Cornelia Huck
2019-08-22 13:58 ` [Qemu-devel] [PATCH for-4.1?] compat: disable edid on virtio-gpu base device Cornelia Huck
2019-08-22 14:03   ` Cornelia Huck
2019-08-22 14:45   ` no-reply
2019-08-22 13:58 ` [Qemu-devel] [PULL 1/7] s390x/tcg: Fix VERIM with 32/64 bit elements Cornelia Huck
2019-08-22 13:58 ` [Qemu-devel] [PULL 2/7] s390x/mmu: Trace the right value if setting/getting the storage key fails Cornelia Huck
2019-08-22 13:58 ` Cornelia Huck [this message]
2019-08-22 13:58 ` [Qemu-devel] [PULL 4/7] s390x/tcg: Rework MMU selection for instruction fetches Cornelia Huck
2019-08-22 13:58 ` [Qemu-devel] [PULL 5/7] s390x/tcg: Flush the TLB of all CPUs on SSKE and RRBE Cornelia Huck
2019-08-22 13:58 ` [Qemu-devel] [PULL 6/7] s390x/mmu: Better storage key reference and change bit handling Cornelia Huck
2019-08-22 13:58 ` [Qemu-devel] [PULL 7/7] s390x/mmu: Factor out storage key handling Cornelia Huck
2019-08-23 15:11 ` [Qemu-devel] [PULL 0/7] First batch of s390x changes for 4.2 Peter Maydell

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=20190822135839.32340-5-cohuck@redhat.com \
    --to=cohuck@redhat.com \
    --cc=david@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --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).