Richard Henderson <richard.hender...@linaro.org> writes:
> On 5/19/20 9:21 AM, Ahmed Karaman wrote: >> The issue arose because the page crossings check in use_goto_tb() >> function is required only in the system mode. Checking it in both modes >> causes an unnecessary overhead in the user mode. > > It is not only required in system mode. > > You can see failures in user-mode if you modify executable pages, or change > their permissions with mmap. Such as if the guest program contains a > JIT. If we kept better track couldn't we just tb_flush() if a new +x region gets mmaped? I guess that would be sub-optimal compared to having a translation cache per mmap region. -- Alex Bennée