On 26.09.22 15:38, Alex Bennée wrote:
As most HVF devices are done purely in software we need to make sure we properly encode the source CPU in MemTxAttrs. This will allow the device emulations to use those attributes rather than relying on current_cpu (although current_cpu will still be correct in this case). Signed-off-by: Alex Bennée <alex.ben...@linaro.org> Cc: Mads Ynddal <m...@ynddal.dk> Cc: Alexander Graf <ag...@csgraf.de> --- target/arm/hvf/hvf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index 060aa0ccf4..13b7971560 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -1233,11 +1233,11 @@ int hvf_vcpu_exec(CPUState *cpu) val = hvf_get_reg(cpu, srt); address_space_write(&address_space_memory, hvf_exit->exception.physical_address, - MEMTXATTRS_UNSPECIFIED, &val, len); + MEMTXATTRS_CPU(cpu->cpu_index), &val, len);
I think it would make a safer API if MEMTXATTRS_CPU() would take CPUState * as argument so you can just pass in cpu here.
For the HVF part however, Acked-by: Alexander Graf <ag...@csgraf.de> Alex