Message ID | 20250620172751.94231-32-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | accel/split/arm: Run EL2 using TCG and EL1/EL0 in hardware with HVF | expand |
On 6/20/25 10:27, Philippe Mathieu-Daudé wrote: > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > accel/split/split-accel-ops.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/accel/split/split-accel-ops.c b/accel/split/split-accel-ops.c > index 0f3d48fc68d..40cd39aea5c 100644 > --- a/accel/split/split-accel-ops.c > +++ b/accel/split/split-accel-ops.c > @@ -264,7 +264,18 @@ static int split_insert_breakpoint(CPUState *cpu, int type, > static int split_remove_breakpoint(CPUState *cpu, int type, > vaddr addr, vaddr len) > { > - g_assert_not_reached(); > + SplitAccelState *sas = SPLIT_ACCEL(cpu->accel->accel); > + AccelClass *hwc = ACCEL_GET_CLASS(sas->hw); > + AccelClass *swc = ACCEL_GET_CLASS(sas->sw); > + int err = 0; > + > + if (hwc->ops->remove_breakpoint) { > + err |= hwc->ops->remove_breakpoint(cpu, type, addr, len); > + } > + if (swc->ops->remove_breakpoint) { > + err |= swc->ops->remove_breakpoint(cpu, type, addr, len); > + } > + return err; > } > > static void split_remove_all_breakpoints(CPUState *cpu) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
diff --git a/accel/split/split-accel-ops.c b/accel/split/split-accel-ops.c index 0f3d48fc68d..40cd39aea5c 100644 --- a/accel/split/split-accel-ops.c +++ b/accel/split/split-accel-ops.c @@ -264,7 +264,18 @@ static int split_insert_breakpoint(CPUState *cpu, int type, static int split_remove_breakpoint(CPUState *cpu, int type, vaddr addr, vaddr len) { - g_assert_not_reached(); + SplitAccelState *sas = SPLIT_ACCEL(cpu->accel->accel); + AccelClass *hwc = ACCEL_GET_CLASS(sas->hw); + AccelClass *swc = ACCEL_GET_CLASS(sas->sw); + int err = 0; + + if (hwc->ops->remove_breakpoint) { + err |= hwc->ops->remove_breakpoint(cpu, type, addr, len); + } + if (swc->ops->remove_breakpoint) { + err |= swc->ops->remove_breakpoint(cpu, type, addr, len); + } + return err; } static void split_remove_all_breakpoints(CPUState *cpu)
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- accel/split/split-accel-ops.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)