All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Hildenbrand <david@redhat.com>
To: Janis Schoetterl-Glausch <scgl@linux.ibm.com>,
	qemu-s390x@nongnu.org,
	Richard Henderson <richard.henderson@linaro.org>
Cc: Cornelia Huck <cohuck@redhat.com>, Thomas Huth <thuth@redhat.com>,
	qemu-devel@nongnu.org
Subject: Re: [PATCH] target/s390x/tcg: SPX: check validity of new prefix
Date: Mon, 27 Jun 2022 18:27:11 +0200	[thread overview]
Message-ID: <bb5c26f1-5b78-8abe-48ba-72cb78597d05@redhat.com> (raw)
In-Reply-To: <20220627131251.2832076-1-scgl@linux.ibm.com>

On 27.06.22 15:12, Janis Schoetterl-Glausch wrote:
> According to the architecture, SET PREFIX must try to access the new
> prefix area and recognize an addressing exception if the area is not
> accessible.
> For qemu this check prevents a crash in cpu_map_lowcore after an
> inaccessible prefix area has been set.

I don't think that's possible. Our memory increments are 1 MiB and one
would have to cross a 1~MiB range with the second page to trigger that.
IIRC that's impossible with SPX address alignment requirements?


> 
> Signed-off-by: Janis Schoetterl-Glausch <scgl@linux.ibm.com>
> ---
> 
> 
> Is there a stricter check to see if the memory is accessible?
> 
> 
>  target/s390x/tcg/misc_helper.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/target/s390x/tcg/misc_helper.c b/target/s390x/tcg/misc_helper.c
> index aab9c47747..c8447b36fc 100644
> --- a/target/s390x/tcg/misc_helper.c
> +++ b/target/s390x/tcg/misc_helper.c
> @@ -158,6 +158,10 @@ void HELPER(spx)(CPUS390XState *env, uint64_t a1)
>      if (prefix == old_prefix) {
>          return;
>      }
> +    if (!mmu_absolute_addr_valid(prefix, true) ||
> +        !mmu_absolute_addr_valid(prefix + TARGET_PAGE_SIZE, true)) {
> +        tcg_s390_program_interrupt(env, PGM_ADDRESSING, GETPC());
> +    }
>  
>      env->psa = prefix;
>      HELPER_LOG("prefix: %#x\n", prefix);
> 
> base-commit: 3a821c52e1a30ecd9a436f2c67cc66b5628c829f


-- 
Thanks,

David / dhildenb



  reply	other threads:[~2022-06-27 16:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-27 13:12 [PATCH] target/s390x/tcg: SPX: check validity of new prefix Janis Schoetterl-Glausch
2022-06-27 16:27 ` David Hildenbrand [this message]
2022-06-27 17:06   ` Janis Schoetterl-Glausch
2022-06-27 17:10     ` 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=bb5c26f1-5b78-8abe-48ba-72cb78597d05@redhat.com \
    --to=david@redhat.com \
    --cc=cohuck@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=scgl@linux.ibm.com \
    --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 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.