• P
    exec.c: Collect AddressSpace related fields into a CPUAddressSpace struct · 32857f4d
    Peter Maydell 提交于
    Gather up all the fields currently in CPUState which deal with the CPU's
    AddressSpace into a separate CPUAddressSpace struct. This paves the way
    for allowing the CPU to know about more than one AddressSpace.
    
    The rearrangement also allows us to make the MemoryListener a directly
    embedded object in the CPUAddressSpace (it could not be embedded in
    CPUState because 'struct MemoryListener' isn't defined for the user-only
    builds). This allows us to resolve the FIXME in tcg_commit() by going
    directly from the MemoryListener to the CPUAddressSpace.
    
    This patch extracts the actual update of the cached dispatch pointer
    from cpu_reload_memory_map() (which is renamed accordingly to
    cpu_reloading_memory_map() as it is only responsible for breaking
    cpu-exec.c's RCU critical section now). This lets us keep the definition
    of the CPUAddressSpace struct private to exec.c.
    Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
    Message-Id: <1443709790-25180-4-git-send-email-peter.maydell@linaro.org>
    Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
    32857f4d
cpu.h 24.0 KB