]> git.proxmox.com Git - mirror_qemu.git/commit - target/riscv/cpu_helper.c
target/riscv: Fix the translation of physical address
authorZong Li <zong.li@sifive.com>
Tue, 28 Jul 2020 08:26:16 +0000 (16:26 +0800)
committerAlistair Francis <alistair.francis@wdc.com>
Sat, 22 Aug 2020 05:37:55 +0000 (22:37 -0700)
commit9ef82119b10d996cef63af679af5c1a7a85e6c19
tree4acfa382f3bb0c52fe5b7a6c73a95c1b00a97c1e
parenta52ea3e7d2a498e36a399b6ae39b5623e3864fce
target/riscv: Fix the translation of physical address

The real physical address should add the 12 bits page offset. It also
causes the PMP wrong checking due to the minimum granularity of PMP is
4 byte, but we always get the physical address which is 4KB alignment,
that means, we always use the start address of the page to check PMP for
all addresses which in the same page.

Signed-off-by: Zong Li <zong.li@sifive.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <370a983d0f9e8a9a927b9bb8af5e7bc84b1bf9b1.1595924470.git.zong.li@sifive.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
target/riscv/cpu_helper.c