Message ID | 20250620172751.94231-33-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 40cd39aea5c..eb52d690c7c 100644 > --- a/accel/split/split-accel-ops.c > +++ b/accel/split/split-accel-ops.c > @@ -258,7 +258,18 @@ static int split_update_guest_debug(CPUState *cpu) > static int split_insert_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->insert_breakpoint) { > + err |= hwc->ops->insert_breakpoint(cpu, type, addr, len); > + } > + if (swc->ops->insert_breakpoint) { > + err |= swc->ops->insert_breakpoint(cpu, type, addr, len); > + } > + return err; > } > > static int split_remove_breakpoint(CPUState *cpu, int type, 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 40cd39aea5c..eb52d690c7c 100644 --- a/accel/split/split-accel-ops.c +++ b/accel/split/split-accel-ops.c @@ -258,7 +258,18 @@ static int split_update_guest_debug(CPUState *cpu) static int split_insert_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->insert_breakpoint) { + err |= hwc->ops->insert_breakpoint(cpu, type, addr, len); + } + if (swc->ops->insert_breakpoint) { + err |= swc->ops->insert_breakpoint(cpu, type, addr, len); + } + return err; } static int split_remove_breakpoint(CPUState *cpu, int type,
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- accel/split/split-accel-ops.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)