qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v11 6/7] target/riscv: Apply pointer masking for virtualized


From: Alexey Baturo
Subject: Re: [PATCH v11 6/7] target/riscv: Apply pointer masking for virtualized memory accesses
Date: Thu, 28 Nov 2024 14:30:46 +0300

Hi Richard,

Thanks for the suggestions. I'll wait for a week or for extra comments on this series and would send a new fixed one.
Thanks again! 

ср, 27 нояб. 2024 г. в 19:08, Richard Henderson <richard.henderson@linaro.org>:
On 11/26/24 23:35, baturo.alexey@gmail.com wrote:
> From: Alexey Baturo <baturo.alexey@gmail.com>
>
> Signed-off-by: Alexey Baturo <baturo.alexey@gmail.com>
> ---
>   target/riscv/cpu.h                      |  2 ++
>   target/riscv/cpu_helper.c               | 19 +++++++++++++++++++
>   target/riscv/insn_trans/trans_rvh.c.inc | 11 +++++++++++
>   target/riscv/translate.c                |  4 ++++
>   4 files changed, 36 insertions(+)
>
> diff --git a/target/riscv/cpu.h b/target/riscv/cpu.h
> index 11e3a6d647..6bbd9c6c25 100644
> --- a/target/riscv/cpu.h
> +++ b/target/riscv/cpu.h
> @@ -634,6 +634,7 @@ FIELD(TB_FLAGS, BCFI_ENABLED, 28, 1)
>   /* If pointer masking should be applied and address sign extended */
>   FIELD(TB_FLAGS, PM_PMM, 29, 2)
>   FIELD(TB_FLAGS, PM_SIGNEXTEND, 31, 1)
> +FIELD(TB_FLAGS, PM_VPMM, 32, 2)

(1) tb_flags is only 32 bits wide, and this overflows.

(2) All of the logic for HSV/HLV is in op_helper.c, so there's no point in doing this
masking inline.  Do it in helper_hyp_* instead, possibly reusing pieces of adjust_addr
from vector_helper.c.


r~

reply via email to

[Prev in Thread] Current Thread [Next in Thread]