QEMU With E2K User Support
Go to file
Jan Kiszka 5c61afec86 kvmvapic: Fix TB invalidation after instruction patching
Since 0b57e287, cpu_memory_rw_debug already triggers a TB invalidation.
As it doesn't (and cannot) set is_cpu_write_access=1 but "consumes" the
currently executed TB, the tb_invalidate_phys_page_range call from
patch_instruction didn't work anymore.

Fix this by open-coding the required bits to restore the CPU state from
the current TB position before patching and resume execution on the
patched instruction afterward.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Tested-by: Hervé Poussineau <hpoussin@reactos.org>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-11-10 12:25:17 +00:00
audio audio: Fix warning from static code analysis 2012-09-23 01:34:16 +04:00
block Merge remote-tracking branch 'origin/master' into threadpool 2012-10-31 10:42:51 +01:00
bsd-user
default-configs target-sparc64: disable VGA cirrus 2012-10-27 14:36:04 +00:00
docs serial: add pci-serial documentation 2012-10-22 13:26:42 -05:00
fpu softfloat: implement fused multiply-add NaN propagation for MIPS 2012-10-31 22:20:45 +01:00
fsdev
gdb-xml
hw kvmvapic: Fix TB invalidation after instruction patching 2012-11-10 12:25:17 +00:00
include/qemu cpu: Move thread_id to CPUState 2012-10-31 04:12:23 +01:00
libcacard Merge branch 'trivial-patches' of git://github.com/stefanha/qemu 2012-10-06 18:54:14 +02:00
linux-headers Update Linux kernel headers 2012-10-01 08:04:22 -05:00
linux-user target-mips: Add ASE DSP resources access check 2012-10-31 20:24:06 +01:00
net net: use "socket" model name for UDP sockets 2012-11-01 11:00:59 +01:00
pc-bios Update OpenBIOS PPC image 2012-08-28 20:38:39 +02:00
pixman@97336fad32 pixman: add submodule 2012-11-01 13:10:06 +01:00
qapi build: opts-visitor is not really part of QAPI 2012-10-30 09:30:52 +01:00
qga qemu-ga: ask and print error information from qemu-sockets 2012-10-23 13:54:56 +02:00
QMP qmp: add pull_event function 2012-10-24 10:26:22 +02:00
qom qom: object_delete should unparent the object first 2012-08-23 20:19:59 -05:00
roms Update OpenBIOS PPC image 2012-08-28 20:38:39 +02:00
scripts update-linux-headers.sh: Handle new kernel uapi/ directories 2012-10-30 23:39:53 -02:00
slirp cleanup useless return sentence 2012-10-05 15:10:21 +02:00
sysconfigs/target Eliminate cpus-x86_64.conf file 2012-09-21 15:12:58 +02:00
target-alpha Merge remote-tracking branch 'afaerber/qom-cpu' into staging 2012-11-01 11:12:32 -05:00
target-arm cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
target-cris cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
target-i386 target-i386: cpu: fix --disable-kvm compilation 2012-11-02 17:55:29 +01:00
target-lm32 cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
target-m68k target-m68k/m68k-semi.c: Log when put_user for returning values fails 2012-11-03 09:35:03 +00:00
target-microblaze microblaze: translate.c: Fix swaph decoding 2012-11-08 17:42:45 +01:00
target-mips target-mips: use ULL for 64 bit constants 2012-11-05 08:02:37 +01:00
target-openrisc cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
target-ppc Merge branch 'trivial-patches' of git://github.com/stefanha/qemu 2012-11-03 12:55:05 +00:00
target-s390x cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
target-sh4 cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
target-sparc Merge branch 'trivial-patches' of git://github.com/stefanha/qemu 2012-11-03 12:55:05 +00:00
target-unicore32 cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
target-xtensa cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
tcg tcg/ppc32: Use trampolines to trim the code size for mmu slow path accessors 2012-11-06 04:37:57 +04:00
tests Merge remote-tracking branch 'bonzini/threadpool' into staging 2012-11-01 11:13:39 -05:00
trace trace/simple: Replace asprintf by g_strdup_printf 2012-08-14 13:19:57 +01:00
ui Merge branch 'trivial-patches' of git://github.com/stefanha/qemu 2012-11-03 12:55:05 +00:00
.exrc qemu: add .exrc 2012-09-07 09:02:44 +03:00
.gitignore Remove libhw 2012-10-05 16:07:49 -05:00
.gitmodules pixman: add submodule 2012-11-01 13:10:06 +01:00
.mailmap
a.out.h
acl.c
acl.h
aes.c
aes.h
aio-posix.c aio: call aio_notify after setting I/O handlers 2012-10-30 09:30:53 +01:00
aio-win32.c aio: call aio_notify after setting I/O handlers 2012-10-30 09:30:53 +01:00
alpha-dis.c
alpha.ld
arch_init.c migration: Add dirty_pages_rate to query migrate output 2012-10-17 18:34:58 +02:00
arch_init.h compiler: use weak aliases to provide default definitions 2012-10-30 09:18:43 +01:00
arm-dis.c
arm.ld
async.c aio: clean up now-unused functions 2012-10-30 09:30:54 +01:00
balloon.c
balloon.h
bitmap.c
bitmap.h
bitops.c
bitops.h
block_int.h Merge remote-tracking branch 'kwolf/for-anthony' into staging 2012-10-29 10:34:05 -05:00
block-migration.c block-migration: handle errors with the return codes correctly 2012-10-17 18:34:59 +02:00
block-migration.h
block.c Merge remote-tracking branch 'kwolf/for-anthony' into staging 2012-10-29 10:34:05 -05:00
block.h Merge remote-tracking branch 'kwolf/for-anthony' into staging 2012-10-29 10:34:05 -05:00
blockdev-nbd.c qmp: add NBD server commands 2012-10-23 22:39:33 +02:00
blockdev.c Issue warning when deprecated drive parameter boot=on|off is used 2012-10-30 23:39:52 -02:00
blockdev.h
blockjob.c iostatus: forward block_job_iostatus_reset to block job 2012-10-24 10:26:22 +02:00
blockjob.h iostatus: forward block_job_iostatus_reset to block job 2012-10-24 10:26:22 +02:00
bswap.h
bt-host.c
bt-host.h
bt-vhci.c
buffered_file.c migration: add qemu_get_fd 2012-11-02 18:34:59 +01:00
buffered_file.h buffered_file: We can access directly to bandwidth_limit 2012-10-17 18:34:59 +02:00
cache-utils.c
cache-utils.h
Changelog
cmd.c
cmd.h
CODING_STYLE
compatfd.c
compatfd.h
compiler.h compiler: support Darwin weak references 2012-11-02 13:07:54 -05:00
config.h
configure tcg/ppc: ld/st optimization 2012-11-03 20:17:54 +04:00
console.c pixman: drop obsolete fields from DisplaySurface 2012-11-01 14:00:05 +01:00
console.h vmware_vga: Remove duplicated info from local state 2012-11-03 13:26:52 +00:00
COPYING
COPYING.LIB
coroutine-gthread.c
coroutine-sigaltstack.c
coroutine-ucontext.c
coroutine-win32.c
cpu-all.h cpus: Pass CPUState to run_on_cpu() 2012-10-31 04:12:23 +01:00
cpu-common.h exec: make some functions static 2012-11-01 19:49:45 +01:00
cpu-defs.h cpu: Move thread_id to CPUState 2012-10-31 04:12:23 +01:00
cpu-exec.c cpus: Pass CPUState to [qemu_]cpu_has_work() 2012-10-31 04:11:37 +01:00
cpus.c cpu: Move thread_id to CPUState 2012-10-31 04:12:23 +01:00
cpus.h
cputlb.c Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
cputlb.h Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
cris-dis.c
cursor_hidden.xpm
cursor_left_ptr.xpm
cursor.c
cutils.c fdsets: use weak aliases instead of qemu-tool.c/qemu-user.c 2012-10-30 09:18:44 +01:00
def-helper.h tcg: Fix MAX_OPC_PARAM_IARGS 2012-09-15 15:34:27 +00:00
device_tree.c device tree: simplify dumpdtb code 2012-10-05 02:35:11 +02:00
device_tree.h fdt: move dumpdtb interpretation code to device_tree.c 2012-10-05 02:35:11 +02:00
dis-asm.h
disas.c tcg-sparc: Assume v9 cpu always, i.e. force v8plus in 32-bit mode. 2012-09-21 22:02:16 +02:00
disas.h Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
dma-helpers.c Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
dma.h Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
dump-stub.c
dump.c Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
dump.h
elf.h
envlist.c
envlist.h
error.c error: add error_set_errno and error_setg_errno 2012-10-23 13:54:55 +02:00
error.h error: add error_set_errno and error_setg_errno 2012-10-23 13:54:55 +02:00
event_notifier-posix.c event_notifier: enable it to use pipes 2012-10-30 09:30:52 +01:00
event_notifier-win32.c event_notifier: add Win32 implementation 2012-10-30 09:30:52 +01:00
event_notifier.h event_notifier: enable it to use pipes 2012-10-30 09:30:52 +01:00
exec-all.h tcg/ppc32: Use trampolines to trim the code size for mmu slow path accessors 2012-11-06 04:37:57 +04:00
exec-memory.h memory: use AddressSpace for MemoryListener filtering 2012-10-22 14:50:07 +02:00
exec.c Merge branch 'trivial-patches' of git://github.com/stefanha/qemu 2012-11-03 12:55:05 +00:00
gdbstub.c target-xtensa: add FP registers 2012-09-22 17:59:12 +00:00
gdbstub.h
gen-icount.h
HACKING Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
hmp-commands.hx qmp: add drive-mirror command 2012-10-24 10:26:20 +02:00
hmp.c Merge remote-tracking branch 'kwolf/for-anthony' into staging 2012-10-29 10:34:05 -05:00
hmp.h qmp: add drive-mirror command 2012-10-24 10:26:20 +02:00
host-utils.c
host-utils.h
hppa-dis.c
hppa.ld
hwaddr.h Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
i386-dis.c
i386.ld
ia64-dis.c
ia64.ld
input.c input: index_from_key(): drop unused code 2012-09-27 09:50:36 -03:00
int128.h
iohandler.c aio: introduce AioContext, move bottom halves there 2012-10-30 09:30:53 +01:00
ioport.c
ioport.h
iorange.h
iov.c Merge remote-tracking branch 'origin/master' into threadpool 2012-10-31 10:42:51 +01:00
iov.h iov: add iov_cpy 2012-10-29 18:25:22 +02:00
json-lexer.c
json-lexer.h
json-parser.c json-parser: don't replicate tokens at each level of recursion 2012-08-16 13:41:15 -05:00
json-parser.h
json-streamer.c
json-streamer.h
kvm-all.c cpus: Pass CPUState to run_on_cpu() 2012-10-31 04:12:23 +01:00
kvm-stub.c memory: manage coalesced mmio via a MemoryListener 2012-10-22 14:50:00 +02:00
kvm.h i386: kvm: filter CPUID feature words earlier, on cpu.c 2012-10-30 23:39:49 -02:00
libfdt_env.h
LICENSE
lm32-dis.c
m68k-dis.c
m68k.ld
main-loop.c vl: delay thread initialization after daemonization 2012-11-02 13:07:55 -05:00
main-loop.h main-loop: use GSource to poll AIO file descriptors 2012-10-30 09:30:53 +01:00
MAINTAINERS MAINTAINERS: Update email address for Stefan Hajnoczi 2012-10-19 20:37:43 +02:00
Makefile Merge remote-tracking branch 'kraxel/pixman.v3' into staging 2012-11-01 11:14:39 -05:00
Makefile.dis
Makefile.objs Merge remote-tracking branch 'kraxel/pixman.v3' into staging 2012-11-01 11:14:39 -05:00
Makefile.target Remove libhw 2012-10-05 16:07:49 -05:00
Makefile.user
memory_mapping-stub.c
memory_mapping.c Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
memory_mapping.h Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
memory-internal.h exec: make some functions static 2012-11-01 19:49:45 +01:00
memory.c memory: fix rendering of a region obscured by another 2012-10-29 14:32:00 -05:00
memory.h Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
microblaze-dis.c
migration-exec.c migration: move qemu_fclose to process_incoming_migration 2012-11-02 18:35:07 +01:00
migration-fd.c migration: move qemu_fclose to process_incoming_migration 2012-11-02 18:35:07 +01:00
migration-tcp.c migration: move qemu_fclose to process_incoming_migration 2012-11-02 18:35:07 +01:00
migration-unix.c migration: move qemu_fclose to process_incoming_migration 2012-11-02 18:35:07 +01:00
migration.c migration: move process_incoming_migration to a coroutine 2012-11-02 18:35:08 +01:00
migration.h migration (incoming): add error propagation to fd and exec protocols 2012-10-23 13:54:56 +02:00
mips-dis.c
mips.ld
module.c
module.h
monitor.c target-i386: Pass X86CPU to cpu_x86_inject_mce() 2012-10-31 04:12:23 +01:00
monitor.h block: introduce BLOCK_JOB_READY event 2012-10-24 10:26:19 +02:00
nbd.c nbd: ask and print error information from qemu-sockets 2012-10-23 13:54:56 +02:00
nbd.h nbd: add nbd_export_get_blockdev 2012-09-19 15:26:31 +02:00
net.c net: Reject non-netdevs in qmp_netdev_del() 2012-11-01 11:05:57 +01:00
net.h monitor: Rename+move net_handle_fd_param -> monitor_handle_fd_param 2012-09-07 09:15:08 +03:00
notify.c
notify.h
os-posix.c Merge branch 'trivial-patches' of git://github.com/stefanha/qemu 2012-10-06 18:54:14 +02:00
os-win32.c
osdep.c compiler: support Darwin weak references 2012-11-02 13:07:54 -05:00
osdep.h win32: fix broken build due to missing QEMU_MADV_HUGEPAGE 2012-10-24 15:01:45 -05:00
oslib-posix.c aio: clean up now-unused functions 2012-10-30 09:30:54 +01:00
oslib-win32.c compiler: support Darwin weak references 2012-11-02 13:07:54 -05:00
page_cache.c
path.c
pci-ids.txt
pflib.c
pflib.h
poison.h
ppc64.ld
ppc-dis.c
ppc.ld
qapi-schema-guest.json qapi: Fix enumeration typo error 2012-09-14 08:21:29 +01:00
qapi-schema-test.json
qapi-schema.json Merge remote-tracking branch 'kwolf/for-anthony' into staging 2012-10-29 10:34:05 -05:00
qbool.c
qbool.h
qdict-test-data.txt
qdict.c
qdict.h
qemu_socket.h qemu-sockets: add socket_listen, socket_connect, socket_parse 2012-10-23 22:39:16 +02:00
qemu-aio.h aio: clean up now-unused functions 2012-10-30 09:30:54 +01:00
qemu-barrier.h qemu-barrier: Fix compilation on i386 hosts 2012-10-07 20:07:11 +02:00
qemu-bridge-helper.c
qemu-char.c chardev: Use timer instead of bottom-half to postpone open event 2012-10-31 22:20:44 +01:00
qemu-char.h Merge remote-tracking branch 'bonzini/threadpool' into staging 2012-11-01 11:13:39 -05:00
qemu-common.h Merge remote-tracking branch 'kraxel/pixman.v3' into staging 2012-11-01 11:14:39 -05:00
qemu-config.c Issue warning when deprecated drive parameter boot=on|off is used 2012-10-30 23:39:52 -02:00
qemu-config.h Command line support for seccomp with -sandbox (v8) 2012-08-16 13:41:16 -05:00
qemu-coroutine-int.h
qemu-coroutine-io.c
qemu-coroutine-lock.c aio: introduce AioContext, move bottom halves there 2012-10-30 09:30:53 +01:00
qemu-coroutine-sleep.c
qemu-coroutine.c
qemu-coroutine.h
qemu-doc.texi
qemu-error.c
qemu-error.h
qemu-file.h migration: replace qemu_stdio_fd with qemu_get_fd 2012-11-02 18:35:06 +01:00
qemu-ga.c qemu-ga: ga_open_pidfile(): add new line to pidfile 2012-10-09 03:42:42 -05:00
qemu-img-cmds.hx qemu-img: document 'info --backing-chain' 2012-10-24 10:26:19 +02:00
qemu-img.c tools: initialize main loop before block layer 2012-11-06 04:37:57 +04:00
qemu-img.texi qemu-img: document 'info --backing-chain' 2012-10-24 10:26:19 +02:00
qemu-io.c tools: initialize main loop before block layer 2012-11-06 04:37:57 +04:00
qemu-lock.h
qemu-log.c qemu-log: Add new log category for guest bugs 2012-10-20 07:56:22 +00:00
qemu-log.h qemu-log: Add new log category for guest bugs 2012-10-20 07:56:22 +00:00
qemu-nbd.c qemu-nbd: rewrite termination conditions to use a state machine 2012-09-19 15:26:29 +02:00
qemu-nbd.texi
qemu-objects.h
qemu-option-internal.h
qemu-option.c
qemu-option.h
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx Emulate qemu-kvms -no-kvm option 2012-10-30 23:39:53 -02:00
qemu-os-posix.h curses: don't initialize curses when qemu is daemonized 2012-09-23 07:11:28 +01:00
qemu-os-win32.h event_notifier: add Win32 implementation 2012-10-30 09:30:52 +01:00
qemu-pixman.c pixman: helper functions 2012-11-01 14:00:04 +01:00
qemu-pixman.h pixman: helper functions 2012-11-01 14:00:04 +01:00
qemu-progress.c
qemu-queue.h
qemu-seccomp.c Adding qemu-seccomp.[ch] (v8) 2012-08-16 13:41:16 -05:00
qemu-seccomp.h Adding qemu-seccomp.[ch] (v8) 2012-08-16 13:41:16 -05:00
qemu-sockets.c compiler: support Darwin weak references 2012-11-02 13:07:54 -05:00
qemu-tech.texi
qemu-thread-posix.c semaphore: implement fallback counting semaphores with mutex+condvar 2012-11-02 13:07:54 -05:00
qemu-thread-posix.h semaphore: implement fallback counting semaphores with mutex+condvar 2012-11-02 13:07:54 -05:00
qemu-thread-win32.c qemu-thread: add QemuSemaphore 2012-10-31 09:45:47 +01:00
qemu-thread-win32.h qemu-thread: add QemuSemaphore 2012-10-31 09:45:47 +01:00
qemu-thread.h qemu-thread: add QemuSemaphore 2012-10-31 09:45:47 +01:00
qemu-timer-common.c
qemu-timer.c build: pthread_atfork() needs include of pthread.h 2012-11-04 15:13:47 -06:00
qemu-timer.h tcg-sparc: Assume v9 cpu always, i.e. force v8plus in 32-bit mode. 2012-09-21 22:02:16 +02:00
qemu-tls.h
qemu-tool.c qemu-tool: do not depend on qemu-timer.c 2012-10-30 09:18:44 +01:00
qemu-user.c fdsets: use weak aliases instead of qemu-tool.c/qemu-user.c 2012-10-30 09:18:44 +01:00
qemu-x509.h
qemu-xattr.h
qemu.sasl
qerror.c error, qerror: drop QDict member 2012-08-13 14:17:53 -03:00
qerror.h Merge remote-tracking branch 'kwolf/for-anthony' into staging 2012-10-29 10:34:05 -05:00
qfloat.c
qfloat.h
qint.c
qint.h
qjson.c
qjson.h
qlist.c qlist: add qlist_size() 2012-08-16 13:41:15 -05:00
qlist.h qlist: add qlist_size() 2012-08-16 13:41:15 -05:00
qmp-commands.hx Merge remote-tracking branch 'kwolf/for-anthony' into staging 2012-10-29 10:34:05 -05:00
qmp.c compiler: support Darwin weak references 2012-11-02 13:07:54 -05:00
qobject.h json-parser: Fix potential NULL pointer segfault 2012-09-05 15:48:57 -03:00
qstring.c
qstring.h
qtest.c
qtest.h
range.h
readline.c
readline.h
README
rules.mak Support using a different compiler for Objective-C files 2012-08-16 13:41:15 -05:00
s390-dis.c
s390.ld
savevm.c migration: handle EAGAIN while reading QEMUFile 2012-11-02 18:35:07 +01:00
sh4-dis.c
softmmu_defs.h Remove unused CONFIG_TCG_PASS_AREG0 and dead code 2012-09-15 17:51:14 +00:00
softmmu_exec.h
softmmu_header.h Remove unused CONFIG_TCG_PASS_AREG0 and dead code 2012-09-15 17:51:14 +00:00
softmmu_template.h tcg: Add extended GETPC mechanism for MMU helpers with ldst optimization 2012-11-03 09:44:20 +00:00
softmmu-semi.h softmmu-semi: fix lock_user* functions not to deref NULL upon OOM 2012-08-22 10:47:14 -05:00
sparc64.ld
sparc-dis.c tcg-sparc: Dump illegal opode contents 2012-10-13 10:39:53 +00:00
sparc.ld
spice-qemu-char.c
sysemu.h vl.c: add missing static 2012-11-01 19:49:44 +01:00
tcg-runtime.c
tci-dis.c
tci.c tcg: remove obsolete jmp op 2012-10-06 18:47:04 +02:00
thread-pool.c threadpool: do not take lock in event_notifier_ready 2012-10-31 10:38:01 +01:00
thread-pool.h aio: add generic thread-pool facility 2012-10-31 10:37:48 +01:00
thunk.c
thunk.h
TODO
trace-events Merge remote-tracking branch 'kraxel/usb.69' into staging 2012-11-01 14:34:13 -05:00
translate-all.c
uboot_image.h
uri.c qemu: URI parsing library 2012-09-28 17:51:47 +02:00
uri.h qemu: URI parsing library 2012-09-28 17:51:47 +02:00
user-exec.c Remove unused CONFIG_TCG_PASS_AREG0 and dead code 2012-09-15 17:51:14 +00:00
VERSION Open up 1.3 development tree 2012-09-05 11:44:53 -05:00
version.rc
vgafont.h
vl.c Merge branch 'trivial-patches' of git://github.com/stefanha/qemu 2012-11-03 12:55:05 +00:00
vmstate.h vmstate: Add support for saving/loading bitmaps 2012-10-30 07:45:12 +00:00
x86_64.ld
xen-all.c Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
xen-mapcache.c Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
xen-mapcache.h Rename target_phys_addr_t to hwaddr 2012-10-23 08:58:25 -05:00
xen-stub.c xen: Introduce xen_modified_memory. 2012-10-03 13:48:45 +00:00

Read the documentation in qemu-doc.html or on http://wiki.qemu.org

- QEMU team