-
Paolo Bonzini authored
This ensures that cpu_reload_memory_map() is called as soon as tcg_cpu_address_space_init() is called, and before cpu->memory_dispatch is used. qemu-system-s390x never changes the address spaces after tcg_cpu_address_space_init() is called, and thus tcg_commit() is never called. This causes a SIGSEGV. Because memory_map_init() will now call mem_commit(), we have to initialize io_mem_* before address_space_memory and friends. Reported-by:
Philipp Kern <pkern@debian.org>
Reviewed-by:
Peter Maydell <peter.maydell@linaro.org>
Fixes: 0a1c71ce
Signed-off-by:
Paolo Bonzini <pbonzini@redhat.com>Paolo Bonzini authoredThis ensures that cpu_reload_memory_map() is called as soon as tcg_cpu_address_space_init() is called, and before cpu->memory_dispatch is used. qemu-system-s390x never changes the address spaces after tcg_cpu_address_space_init() is called, and thus tcg_commit() is never called. This causes a SIGSEGV. Because memory_map_init() will now call mem_commit(), we have to initialize io_mem_* before address_space_memory and friends. Reported-by:
Philipp Kern <pkern@debian.org>
Reviewed-by:
Peter Maydell <peter.maydell@linaro.org>
Fixes: 0a1c71ce
Signed-off-by:
Paolo Bonzini <pbonzini@redhat.com>
Loading