mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-12-24 00:18:36 -07:00
Using phys_page_find to translate an AddressSpace to a MemoryRegionSection is unwieldy. It requires to pass the page index rather than the address, and later memory_region_section_addr has to be called. Replace memory_region_section_addr with a function that does all of it: call phys_page_find, compute the offset within the region, and check how big the current mapping is. This way, a large flat region can be written with a single lookup rather than a page at a time. address_space_translate will also provide a single point where IOMMU forwarding is implemented. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> |
||
|---|---|---|
| .. | ||
| user | ||
| address-spaces.h | ||
| cpu-all.h | ||
| cpu-common.h | ||
| cpu-defs.h | ||
| cputlb.h | ||
| def-helper.h | ||
| exec-all.h | ||
| gdbstub.h | ||
| gen-icount.h | ||
| hwaddr.h | ||
| ioport.h | ||
| iorange.h | ||
| memory-internal.h | ||
| memory.h | ||
| poison.h | ||
| softmmu-semi.h | ||
| softmmu_defs.h | ||
| softmmu_exec.h | ||
| softmmu_header.h | ||
| softmmu_template.h | ||
| spinlock.h | ||