CPUWatchpoint::vaddr/len are of type vaddr.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
target/arm/internals.h | 9 +++++----
target/arm/hyp_gdbstub.c | 8 ++++----
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/target/arm/internals.h b/target/arm/internals.h
index 05ceb9bcf5d..a19c805af45 100644
--- a/target/arm/internals.h
+++ b/target/arm/internals.h
@@ -26,6 +26,7 @@
#define TARGET_ARM_INTERNALS_H
#include "exec/hwaddr.h"
+#include "exec/vaddr.h"
#include "exec/breakpoint.h"
#include "hw/registerfields.h"
#include "tcg/tcg-gvec-desc.h"
@@ -1946,10 +1947,10 @@ bool find_hw_breakpoint(CPUState *cpu, uint64_t pc);
int insert_hw_breakpoint(uint64_t pc);
int delete_hw_breakpoint(uint64_t pc);
-bool check_watchpoint_in_range(int i, target_ulong addr);
-CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, target_ulong addr);
-int insert_hw_watchpoint(target_ulong addr, target_ulong len, int type);
-int delete_hw_watchpoint(target_ulong addr, target_ulong len, int type);
+bool check_watchpoint_in_range(int i, vaddr addr);
+CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, vaddr addr);
+int insert_hw_watchpoint(vaddr addr, vaddr len, int type);
+int delete_hw_watchpoint(vaddr addr, vaddr len, int type);
/* Return the current value of the system counter in ticks */
uint64_t gt_get_countervalue(CPUARMState *env);
diff --git a/target/arm/hyp_gdbstub.c b/target/arm/hyp_gdbstub.c
index 4e52d37ed80..4d8fd933868 100644
--- a/target/arm/hyp_gdbstub.c
+++ b/target/arm/hyp_gdbstub.c
@@ -125,7 +125,7 @@ int delete_hw_breakpoint(uint64_t pc)
* need to ensure you mask the address as required and set BAS=0xff
*/
-int insert_hw_watchpoint(target_ulong addr, target_ulong len, int type)
+int insert_hw_watchpoint(vaddr addr, vaddr len, int type)
{
HWWatchpoint wp = {
.wcr = R_DBGWCR_E_MASK, /* E=1, enable */
@@ -182,7 +182,7 @@ int insert_hw_watchpoint(target_ulong addr, target_ulong len, int type)
return 0;
}
-bool check_watchpoint_in_range(int i, target_ulong addr)
+bool check_watchpoint_in_range(int i, vaddr addr)
{
HWWatchpoint *wp = get_hw_wp(i);
uint64_t addr_top, addr_bottom = wp->wvr;
@@ -214,7 +214,7 @@ bool check_watchpoint_in_range(int i, target_ulong addr)
* Delete a breakpoint and shuffle any above down
*/
-int delete_hw_watchpoint(target_ulong addr, target_ulong len, int type)
+int delete_hw_watchpoint(vaddr addr, vaddr len, int type)
{
int i;
for (i = 0; i < cur_hw_wps; i++) {
@@ -239,7 +239,7 @@ bool find_hw_breakpoint(CPUState *cpu, uint64_t pc)
return false;
}
-CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, target_ulong addr)
+CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, vaddr addr)
{
int i;
--
2.47.1
On 4/15/25 10:22, Philippe Mathieu-Daudé wrote: > CPUWatchpoint::vaddr/len are of type vaddr. > > Signed-off-by: Philippe Mathieu-Daudé<philmd@linaro.org> > --- > target/arm/internals.h | 9 +++++---- > target/arm/hyp_gdbstub.c | 8 ++++---- > 2 files changed, 9 insertions(+), 8 deletions(-) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
On 4/15/25 10:22, Philippe Mathieu-Daudé wrote:
> CPUWatchpoint::vaddr/len are of type vaddr.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> target/arm/internals.h | 9 +++++----
> target/arm/hyp_gdbstub.c | 8 ++++----
> 2 files changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/target/arm/internals.h b/target/arm/internals.h
> index 05ceb9bcf5d..a19c805af45 100644
> --- a/target/arm/internals.h
> +++ b/target/arm/internals.h
> @@ -26,6 +26,7 @@
> #define TARGET_ARM_INTERNALS_H
>
> #include "exec/hwaddr.h"
> +#include "exec/vaddr.h"
> #include "exec/breakpoint.h"
> #include "hw/registerfields.h"
> #include "tcg/tcg-gvec-desc.h"
> @@ -1946,10 +1947,10 @@ bool find_hw_breakpoint(CPUState *cpu, uint64_t pc);
> int insert_hw_breakpoint(uint64_t pc);
> int delete_hw_breakpoint(uint64_t pc);
>
> -bool check_watchpoint_in_range(int i, target_ulong addr);
> -CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, target_ulong addr);
> -int insert_hw_watchpoint(target_ulong addr, target_ulong len, int type);
> -int delete_hw_watchpoint(target_ulong addr, target_ulong len, int type);
> +bool check_watchpoint_in_range(int i, vaddr addr);
> +CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, vaddr addr);
> +int insert_hw_watchpoint(vaddr addr, vaddr len, int type);
> +int delete_hw_watchpoint(vaddr addr, vaddr len, int type);
>
> /* Return the current value of the system counter in ticks */
> uint64_t gt_get_countervalue(CPUARMState *env);
> diff --git a/target/arm/hyp_gdbstub.c b/target/arm/hyp_gdbstub.c
> index 4e52d37ed80..4d8fd933868 100644
> --- a/target/arm/hyp_gdbstub.c
> +++ b/target/arm/hyp_gdbstub.c
> @@ -125,7 +125,7 @@ int delete_hw_breakpoint(uint64_t pc)
> * need to ensure you mask the address as required and set BAS=0xff
> */
>
> -int insert_hw_watchpoint(target_ulong addr, target_ulong len, int type)
> +int insert_hw_watchpoint(vaddr addr, vaddr len, int type)
> {
> HWWatchpoint wp = {
> .wcr = R_DBGWCR_E_MASK, /* E=1, enable */
> @@ -182,7 +182,7 @@ int insert_hw_watchpoint(target_ulong addr, target_ulong len, int type)
> return 0;
> }
>
> -bool check_watchpoint_in_range(int i, target_ulong addr)
> +bool check_watchpoint_in_range(int i, vaddr addr)
> {
> HWWatchpoint *wp = get_hw_wp(i);
> uint64_t addr_top, addr_bottom = wp->wvr;
> @@ -214,7 +214,7 @@ bool check_watchpoint_in_range(int i, target_ulong addr)
> * Delete a breakpoint and shuffle any above down
> */
>
> -int delete_hw_watchpoint(target_ulong addr, target_ulong len, int type)
> +int delete_hw_watchpoint(vaddr addr, vaddr len, int type)
> {
> int i;
> for (i = 0; i < cur_hw_wps; i++) {
> @@ -239,7 +239,7 @@ bool find_hw_breakpoint(CPUState *cpu, uint64_t pc)
> return false;
> }
>
> -CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, target_ulong addr)
> +CPUWatchpoint *find_hw_watchpoint(CPUState *cpu, vaddr addr)
> {
> int i;
>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
© 2016 - 2025 Red Hat, Inc.