>> Instruction breakpoint/zero overhead loop handling code is built into
>> TBs pointed to by IBREAKA/LEND SRs. When these or related SRs get
>> changed TBs at virtual addresses corresponding to their old and their
>> new values must be invalidated.
>>
>> Virtual address range is passed to the tb_invalidate_phys_page_range,
>> which is incorrect in system emulation mode.
>>
>> To fix it use guest TLB/MMU to translate virtual address to physical
>> address.
>>
>> However the guest may not have virtual-to-physical mapping at the moment
>> of IBREAKA/LEND change, thus this fix is not 100% accurate.
>>
>> Signed-off-by: Max Filippov <jcmvb...@gmail.com>
>> ---
>>  exec-all.h                |    1 +
>>  exec.c                    |    9 ++++++---
>>  target-xtensa/op_helper.c |   29 ++++++++++++++++++-----------
>>  3 files changed, 25 insertions(+), 14 deletions(-)
> [snip]
>
> In addition to the breakage reported by Blue, a subject starting with
> "target-xtensa: " gives the impression that it only affects Xtensa.
> Please split it in two and wait for an Acked-by on the exec part before
> including it in an Xtensa PULL.

You're right, sorry about that.

-- 
Thanks.
-- Max

Reply via email to