On 15 January 2015 at 15:32, Lluís Vilanova <vilan...@ac.upc.edu> wrote: > I haven't reviewed the patches, but that's a much appreciated cleanup! I was > also trying to make sense of all the variants while implementing guest memory > access tracing
I drew the following terrible ASCII art diagram of the remaining memory access functions... (pastebin link for those without fixed-width mail clients: http://pastebin.ubuntu.com/9757219/ ) If anybody feels they can rearrange it into something less confusing do feel free :-) +--------------------------------------------------------------------------------------------------------------+ | | | +-------------------------------------------------------------------------------------------------+ | | | | | | | | | | | +--------------------------------------------------------------------------------------+ | | | | | | | | | | | v v | | | | MemoryRegion callbacks ld/st_*_p, memcpy, etc ! <--+ | | | ^ on host memory | | | | ^ ^ ^ | | | | | | | | | | | | | | | | | | | | | | | | | + | | | | | + +ld/st_*_phys ! | | | | | +-----------------> io_mem_read, <-----------+ | | | | | + io_mem_write ! | | | | | io_read*, io_write* <---+ | | | | | ^ | | | | | | | | + | | | | | + address_space_{rw,read,write} ! | | | | + ^ ^ | | | +helper_ld_* <------+ | | | | | ^ | | | | | | | | | | + | | | | cpu_physical_memory_rw &c+---+ | cpu_physical_memory_write_rom ! | | | | ^ ! | ^ | | | | | + | | | + | | dma_memory_rw &c ! | | +----+ cpu_ld/st_* ! | | | | | | | | + | | +-------------+ generated TCG code | + +-----------------+ cpu_physical_memory_rw_debug ! ! marks APIs intended for use by other parts of QEMU -- PMM