unicorn/qemu
Sergey Fedorov 3a9c5e7509
cpu-exec: Fix direct jump to TB spanning page
It is not safe to make a direct jump to a TB spanning two pages in
system emulation because the mapping for the second page can get changed
but we don't take care of direct jumps in this case.

However in user mode emulation, this is not the case because there's
only static address translation and TBs are always invalidated properly.

Backports commit c88c67e58b61618a904d2333ceebefc3c852d32e from qemu
2018-02-24 03:24:53 -05:00
..
crypto crypto: Clean up includes 2018-02-19 00:47:40 -05:00
default-configs arm64eb: add support for ARM64 big endian. 2017-04-24 23:30:01 +08:00
docs docs: clarify memory region lifecycle 2018-02-12 15:11:21 -05:00
fpu fpu: silence warnings 2018-02-22 09:52:28 -05:00
hw qemu-common: push cpu.h inclusion out of qemu-common.h 2018-02-24 01:50:56 -05:00
include osdep: Move default qemu_hw_version() value to a macro 2018-02-24 03:16:34 -05:00
qapi qapi: Change visit_type_FOO() to no longer return partial objects 2018-02-23 19:53:17 -05:00
qobject util: move declarations out of qemu-common.h 2018-02-22 09:25:48 -05:00
qom tcg: Remove needless CPUState::current_tb 2018-02-23 23:45:42 -05:00
scripts qapi: Change visit_type_FOO() to no longer return partial objects 2018-02-23 19:53:17 -05:00
target-arm cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
target-i386 target-i386: Move TCG initialization to realize time 2018-02-24 03:23:09 -05:00
target-m68k cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
target-mips cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
target-sparc cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
tcg cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
util util: align memory allocations to 2M on AArch64 2018-02-23 13:56:59 -05:00
aarch64.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
aarch64eb.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
accel.c accel: make configure_accelerator return void 2018-02-24 00:31:28 -05:00
arm.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
armeb.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
CODING_STYLE
configure config.status: Pass extra parameters 2018-02-22 10:12:54 -05:00
COPYING
COPYING.LIB
cpu-exec-common.c cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
cpu-exec.c cpu-exec: Fix direct jump to TB spanning page 2018-02-24 03:24:53 -05:00
cpus.c cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
cputlb.c cpu: move exec-all.h inclusion out of cpu.h 2018-02-24 02:39:08 -05:00
exec.c memory: remove unnecessary masking of MemoryRegion ram_addr 2018-02-24 03:01:34 -05:00
gen_all_header.sh arm64eb: add support for ARM64 big endian. 2017-04-24 23:30:01 +08:00
glib_compat.c glib_compat: backport hashtable iterator interfaces 2018-02-21 13:18:44 -05:00
HACKING
header_gen.py mips: move CP0 functions out of cpu.h 2018-02-24 01:57:30 -05:00
ioport.c hw: remove pio_addr_t 2018-02-24 02:43:16 -05:00
LICENSE
m68k.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
Makefile qapi: Turn generators' mandatory option -i into an argument 2018-02-19 15:22:27 -05:00
Makefile.objs crypto: move crypto objects out of libqemuutil.la 2018-02-17 15:23:50 -05:00
Makefile.target tcg: split tcg_op_defs to -common 2018-02-17 15:23:51 -05:00
memory_mapping.c include/qemu/osdep.h: Don't include qapi/error.h 2018-02-21 23:08:18 -05:00
memory.c memory: remove unnecessary masking of MemoryRegion ram_addr 2018-02-24 03:01:34 -05:00
mips64.h mips: move CP0 functions out of cpu.h 2018-02-24 01:57:30 -05:00
mips64el.h mips: move CP0 functions out of cpu.h 2018-02-24 01:57:30 -05:00
mips.h mips: move CP0 functions out of cpu.h 2018-02-24 01:57:30 -05:00
mipsel.h mips: move CP0 functions out of cpu.h 2018-02-24 01:57:30 -05:00
powerpc.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
qapi-schema.json qapi: Lazy creation of array types 2018-02-19 18:55:35 -05:00
qemu-log.c log: move qemu_log_close/qemu_log_flush from header to log.c 2018-02-22 11:13:17 -05:00
qemu-timer.c all: Clean up includes 2018-02-19 01:34:28 -05:00
rules.mak
softmmu_template.h exec.c: Pass MemTxAttrs to iotlb_to_region so it uses the right AS 2018-02-17 23:19:00 -05:00
sparc64.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
sparc.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00
tcg-runtime.c all: Clean up includes 2018-02-19 01:34:28 -05:00
translate-all.c memory: remove unnecessary masking of MemoryRegion ram_addr 2018-02-24 03:01:34 -05:00
translate-all.h translate-all: remove unnecessary argument to tb_invalidate_phys_range 2018-02-13 09:04:51 -05:00
translate-common.c exec: Clean up includes 2018-02-19 00:49:55 -05:00
unicorn_common.h qom/cpu: Add MemoryRegion property 2018-02-18 21:54:50 -05:00
VERSION
vl.c hw: explicitly include qemu/log.h 2018-02-24 02:00:45 -05:00
vl.h
x86_64.h cputlb: move CPU_LOOP() for tlb_reset() to exec.c 2018-02-23 10:46:31 -05:00