[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250115-pmu_event_info-v2-0-84815b70383b@rivosinc.com>
Date: Wed, 15 Jan 2025 10:30:40 -0800
From: Atish Patra <atishp@...osinc.com>
To: Anup Patel <anup@...infault.org>, Will Deacon <will@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>,
Mayuresh Chitale <mchitale@...tanamicro.com>
Cc: linux-riscv@...ts.infradead.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, Palmer Dabbelt <palmer@...osinc.com>,
kvm@...r.kernel.org, kvm-riscv@...ts.infradead.org,
Atish Patra <atishp@...osinc.com>
Subject: [PATCH v2 0/9] Add SBI v3.0 PMU enhancements
SBI v3.0 specification[1] added two new improvements to the PMU chaper.
1. Added an additional get_event_info function to query event availablity
in bulk instead of individual SBI calls for each event. This helps in
improving the boot time.
2. Raw event width allowed by the platform is widened to have 56 bits
with RAW event v2 as per new clarification in the priv ISA[2].
Apart from implementing these new features, this series improves the gpa
range check in KVM and updates the kvm SBI implementation to SBI v3.0.
The opensbi patches have been merged. This series can be found at [4].
This series will conflict with counter delegation patch series[4]. This
series is gated on SBI v3.0 freeze requirement while counter delegation
series is very early. I will rebase one of them on the other as we gather
more reviews and closer to merge.
[1] https://github.com/riscv-non-isa/riscv-sbi-doc/releases/download/vv3.0-rc2/riscv-sbi.pdf
[2] https://github.com/riscv/riscv-isa-manual/issues/1578
[3] https://github.com/atishp04/linux/tree/b4/pmu_event_info_v2
[4] https://lore.kernel.org/kvm/20250114-counter_delegation-v2-0-8ba74cdb851b@rivosinc.com/
Signed-off-by: Atish Patra <atishp@...osinc.com>
---
Changes in v2:
- Dropped PATCH 2 to be taken during rcX.
- Improved gpa range check validation by introducing a helper function
and checking the entire range.
- Link to v1: https://lore.kernel.org/r/20241119-pmu_event_info-v1-0-a4f9691421f8@rivosinc.com
---
Atish Patra (9):
drivers/perf: riscv: Add SBI v3.0 flag
drivers/perf: riscv: Add raw event v2 support
RISC-V: KVM: Add support for Raw event v2
drivers/perf: riscv: Implement PMU event info function
drivers/perf: riscv: Export PMU event info function
KVM: Add a helper function to validate vcpu gpa range
RISC-V: KVM: Use the new gpa range validate helper function
RISC-V: KVM: Implement get event info function
RISC-V: KVM: Upgrade the supported SBI version to 3.0
arch/riscv/include/asm/kvm_vcpu_pmu.h | 3 +
arch/riscv/include/asm/kvm_vcpu_sbi.h | 2 +-
arch/riscv/include/asm/sbi.h | 13 +++
arch/riscv/kvm/vcpu_pmu.c | 75 +++++++++++++-
arch/riscv/kvm/vcpu_sbi_pmu.c | 3 +
arch/riscv/kvm/vcpu_sbi_sta.c | 6 +-
drivers/perf/riscv_pmu_sbi.c | 190 +++++++++++++++++++++++++---------
include/linux/kvm_host.h | 2 +
include/linux/perf/riscv_pmu.h | 2 +
virt/kvm/kvm_main.c | 21 ++++
10 files changed, 258 insertions(+), 59 deletions(-)
---
base-commit: e32a80927434907f973f38a88cd19d7e51991d24
change-id: 20241018-pmu_event_info-986e21ce6bd3
--
Regards,
Atish patra
Powered by blists - more mailing lists