On Tue, 16 Feb 2021 at 11:28, 沈梦姣 <shen.mengji...@icloud.com> wrote: > Look at the store/load helper, it will use the tlb entry to do the address > translation(from guest virtual address to host virtual address) but where the > tlb is filled for the data ram and io address, I know where the code ram is > filled(tb_find->tb_lookup__cpu_state...)
The common QEMU code calls the target CPU tlb_fill function, which tries to translate the guest virtual address to a physical address (usually by walking the guest page tables). If it succeeds then will update the QEMU TLB by calling either tlb_set_page() or tlb_set_page_with_attrs(). If it fails then it arranges to deliver a suitable exception to the guest. thanks -- PMM