[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 038/114] target/riscv: use target_long_bits in pmpaddr granule checks
- To: qemu-devel@xxxxxxxxxx
- From: Yonggang Luo <luoyonggang@xxxxxxxxx>
- Date: Wed, 23 Sep 2026 21:15:12 +0800
- Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=20251104 header.d=gmail.com header.i="@gmail.com" header.h="Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From"
- Cc: Cornelia Huck <cohuck@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx, Chao Liu <chao.liu@xxxxxxxxxxxxxxxxxx>, Igor Mammedov <imammedo@xxxxxxxxxx>, Alistair Francis <alistair.francis@xxxxxxx>, Daniel Henrique Barboza <daniel.barboza@xxxxxxxxxxxxxxxx>, Peter Xu <peterx@xxxxxxxxxx>, Eric Blake <eblake@xxxxxxxxxx>, Philippe Mathieu-Daudé <philmd@xxxxxxxxxxxxxxxx>, Liu Zhiwei <zhiwei_liu@xxxxxxxxxxxxxxxxx>, Pierrick Bouvier <pierrick.bouvier@xxxxxxxxxxxxxxxx>, Peter Maydell <peter.maydell@xxxxxxxxxx>, Sunil V L <sunilvl@xxxxxxxxxxxxxxxx>, Stefan Hajnoczi <stefanha@xxxxxxxxxx>, Palmer Dabbelt <palmer@xxxxxxxxxxx>, Fabiano Rosas <farosas@xxxxxxx>, Xianglai Li <lixianglai@xxxxxxxxxxx>, Jiaxun Yang <jiaxun.yang@xxxxxxxxxxx>, Max Filippov <jcmvbkbc@xxxxxxxxx>, qemu-ppc@xxxxxxxxxx, Zhao Liu <zhao1.liu@xxxxxxxxx>, Paolo Bonzini <pbonzini@xxxxxxxxxx>, Bibo Mao <maobibo@xxxxxxxxxxx>, "Michael S. Tsirkin" <mst@xxxxxxxxxx>, Laurent Vivier <laurent@xxxxxxxxx>, David Hildenbrand <david@xxxxxxxxxx>, Richard Henderson <richard.henderson@xxxxxxxxxx>, Daniel P. Berrangé <berrange@xxxxxxxxxx>, Nicholas Piggin <npiggin@xxxxxxxxx>, qemu-riscv@xxxxxxxxxx, kvm@xxxxxxxxxxxxxxx, "Edgar E. Iglesias" <edgar.iglesias@xxxxxxxxx>, Alex Bennée <alex.bennee@xxxxxxxxxx>, Stafford Horne <shorne@xxxxxxxxx>, Marc-André Lureau <marcandre.lureau@xxxxxxxxxx>, Markus Armbruster <armbru@xxxxxxxxxx>, Weiwei Li <liwei1518@xxxxxxxxx>, Song Gao <17746591750@xxxxxxx>, qemu-arm@xxxxxxxxxx, qemu-s390x@xxxxxxxxxx, Brian Cain <brian.cain@xxxxxxxxxxxxxxxx>
- Delivery-date: Wed, 23 Sep 2026 13:23:12 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Replace TARGET_LONG_BITS with target_long_bits() for TOR/NAPOT
PMP address masking.
Signed-off-by: Yonggang Luo <luoyonggang@xxxxxxxxx>
---
target/riscv/tcg/pmp.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/target/riscv/tcg/pmp.c b/target/riscv/tcg/pmp.c
index 41b55519a8e..03ee7c74300 100644
--- a/target/riscv/tcg/pmp.c
+++ b/target/riscv/tcg/pmp.c
@@ -23,6 +23,7 @@
#include "qemu/log.h"
#include "qapi/error.h"
#include "cpu.h"
+#include "qemu/target-info.h"
#include "target/riscv/tcg/csr.h"
#include "trace.h"
#include "exec/cputlb.h"
@@ -643,14 +644,14 @@ target_ulong pmpaddr_csr_read(CPURISCVState *env,
uint32_t addr_index)
/* fallthrough */
case PMP_AMATCH_TOR:
/* Bit [g-1:0] read all zero */
- if (g >= 1 && g < TARGET_LONG_BITS) {
+ if (g >= 1 && g < target_long_bits()) {
uint64_t granule = 1ULL << g;
val = ROUND_DOWN(val, granule);
}
break;
case PMP_AMATCH_NAPOT:
/* Bit [g-2:0] read all one */
- if (g >= 2 && g < TARGET_LONG_BITS) {
+ if (g >= 2 && g < target_long_bits()) {
val = deposit64(val, 0, g - 1, -1ULL);
}
break;
--
2.52.0.windows.1
|