[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection
From: |
Cornelia Huck |
Subject: |
Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug() |
Date: |
Thu, 8 Aug 2019 14:57:13 +0200 |
On Mon, 5 Aug 2019 17:29:39 +0200
David Hildenbrand <address@hidden> wrote:
> Let's select the ASC before calling the function and use MMU_DATA_LOAD.
> This is a preparation to:
> - Remove the ASC magic depending on the access mode from mmu_translate
> - Implement IEP support, where we could run into access exceptions
'IEP' was instruction execution protection?
> trying to fetch instructions
>
> Signed-off-by: David Hildenbrand <address@hidden>
> ---
> target/s390x/helper.c | 10 +++++++++-
> 1 file changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/target/s390x/helper.c b/target/s390x/helper.c
> index 13ae9909ad..08166558a0 100644
> --- a/target/s390x/helper.c
> +++ b/target/s390x/helper.c
> @@ -58,7 +58,15 @@ hwaddr s390_cpu_get_phys_page_debug(CPUState *cs, vaddr
> vaddr)
> vaddr &= 0x7fffffff;
> }
>
> - if (mmu_translate(env, vaddr, MMU_INST_FETCH, asc, &raddr, &prot,
> false)) {
> + /*
> + * We want to read the code, however, not run into access exceptions
> + * (especially, IEP).
> + */
> + if (asc != PSW_ASC_HOME) {
> + asc = PSW_ASC_PRIMARY;
> + }
Previously, if we'd go in here specifying access register mode, we'd
hw_error() out. Now, that would be rewritten to using primary. Could
that be a problem, or do we filter out access register mode even
earlier?
(As an aside, I'm not sure the guest crashing qemu by specifying access
register mode was a good idea. Or do we get to slap the guest before
that happens?)
> +
> + if (mmu_translate(env, vaddr, MMU_DATA_LOAD, asc, &raddr, &prot, false))
> {
> return -1;
> }
> return raddr;
- [Qemu-devel] [PATCH-for-4.2 v1 0/9] s390x: MMU changes and extensions, David Hildenbrand, 2019/08/05
- [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(), David Hildenbrand, 2019/08/05
- Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(),
Cornelia Huck <=
- Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(), Thomas Huth, 2019/08/12
- Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(), David Hildenbrand, 2019/08/12
- Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(), Cornelia Huck, 2019/08/12
- Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(), David Hildenbrand, 2019/08/12
- Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(), Cornelia Huck, 2019/08/12
- Re: [Qemu-devel] [PATCH-for-4.2 v1 1/9] s390x/mmu: Better ASC selection in s390_cpu_get_phys_page_debug(), David Hildenbrand, 2019/08/12
[Qemu-devel] [PATCH-for-4.2 v1 4/9] s390x/mmu: Add EDAT2 translation support, David Hildenbrand, 2019/08/05
[Qemu-devel] [PATCH-for-4.2 v1 2/9] s390x/tcg: Rework MMU selection for instruction fetches, David Hildenbrand, 2019/08/05