Hi,

On Wed, 26 Jan 2022, 16:58 Ayan Kumar Halder, <ayan.kumar.hal...@xilinx.com>
wrote:

> Refer to Armv8 ARM DDI 0487G.b, Page D13-3219 "ISS encoding for an
> exception
> from a Data Abort" :-
> ISV - ISS[23:14] holds a valid instruction syndrome
>
> When the ISV is 0, the instruction could not be decoded by the hardware
> (ie ISS
> is invalid). One should immediately return an error to the caller with an
> appropriate error message.


That's going to be very spammy because we have use-case where it could trap
without a valid ISV (e.g. when break-before-make happens). So please don't
had a message.

That makes me think that the same will be valid for your other patch.

There is no use of the MMIO handler. This is the
> reason why one should check for ISV before attempting to find a MMIO
> handler.
>
> Signed-off-by: Ayan Kumar Halder <ayank...@xilinx.com>
> ---
>
> Suggested by Julien Grall in
> https://lists.xenproject.org/archives/html/xen-devel/2022-01/msg01245.html
>
>  xen/arch/arm/io.c | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/xen/arch/arm/io.c b/xen/arch/arm/io.c
> index 729287e37c..14d39222f2 100644
> --- a/xen/arch/arm/io.c
> +++ b/xen/arch/arm/io.c
> @@ -109,6 +109,13 @@ enum io_state try_handle_mmio(struct cpu_user_regs
> *regs,
>
>      ASSERT(hsr.ec == HSR_EC_DATA_ABORT_LOWER_EL);
>
> +    /* All the instructions used on emulated MMIO region should be valid
> */
> +    if ( !dabt.valid )
> +    {
> +        gprintk(XENLOG_DEBUG, "No valid instruction syndrome for data
> abort\n");
> +        return IO_ABORT;
> +    }
> +
>      handler = find_mmio_handler(v->domain, info.gpa);
>      if ( !handler )
>      {
> @@ -121,10 +128,6 @@ enum io_state try_handle_mmio(struct cpu_user_regs
> *regs,
>          return rc;
>      }
>
> -    /* All the instructions used on emulated MMIO region should be valid
> */
> -    if ( !dabt.valid )
> -        return IO_ABORT;
> -
>      /*
>       * Erratum 766422: Thumb store translation fault to Hypervisor may
>       * not have correct HSR Rt value.
> --
> 2.17
>

Reply via email to