QEMU With E2K User Support
Go to file
Alexey Kardashevskiy da95324ebe spapr_iommu: Enable multiple TCE requests
Currently only single TCE entry per request is supported (H_PUT_TCE).
However PAPR+ specification allows multiple entry requests such as
H_PUT_TCE_INDIRECT and H_STUFF_TCE. Having less transitions to the host
kernel via ioctls, support of these calls can accelerate IOMMU operations.

This implements H_STUFF_TCE and H_PUT_TCE_INDIRECT.

This advertises "multi-tce" capability to the guest if the host kernel
supports it (KVM_CAP_SPAPR_MULTITCE) or guest is running in TCG mode.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Alexander Graf <agraf@suse.de>
2014-06-16 13:24:39 +02:00
audio audio: Drop superfluous conditionals around g_free() 2014-06-13 12:34:54 +02:00
backends build: convert some obj-specific CFLAGS to use new foo.o-cflags syntax 2014-05-08 15:27:49 +02:00
block vdi: remove double conversion 2014-06-10 19:39:34 +04:00
bsd-user bsd-user: Fix syscall format, add strace support for more syscalls 2014-06-11 00:25:06 +01:00
default-configs target-ppc: Enable Building of libdecnumber 2014-06-16 13:24:29 +02:00
disas disas/libvixl: Update to libvixl 1.4 2014-05-13 16:09:35 +01:00
docs libcacard: improve documentation 2014-06-10 07:44:01 +02:00
dtc@bc895d6d09 dtc: add submodule 2013-04-18 13:50:53 +02:00
fpu softfloat: Introduce float32_to_uint64_round_to_zero 2014-04-08 11:20:00 +02:00
fsdev virtfs-proxy-helper: fix call to accept 2014-04-28 08:55:32 +04:00
gdb-xml target-arm: Support fp registers in gdb stub 2013-12-17 19:42:32 +00:00
hw spapr_iommu: Enable multiple TCE requests 2014-06-16 13:24:39 +02:00
include macio ide: Do remainder access asynchronously 2014-06-16 13:24:38 +02:00
libcacard Merge remote-tracking branch 'remotes/bonzini/configure' into staging 2014-06-11 15:36:48 +01:00
libdecnumber libdecnumber: Fix decNumberSetBCD 2014-06-16 13:24:29 +02:00
linux-headers linux-headers: update 2014-05-20 13:05:58 +02:00
linux-user target-arm: A64: Implement two-register SHA instructions 2014-06-09 16:06:12 +01:00
net net: Export valid host network devices list 2014-06-11 10:10:29 -04:00
pc-bios PPC: Add u-boot firmware for e500 2014-06-16 13:24:35 +02:00
pixman@97336fad32
po po: add proper Language: tags to .po files 2014-04-28 08:55:32 +04:00
qapi qapi: Extract qapi/block.json definitions 2014-06-06 16:25:48 +02:00
qga qga: Fix handle fd leak in acquire_privilege() 2014-06-03 15:07:59 -05:00
qobject json-parser: drop superfluous assignment for token variable 2014-06-11 10:10:29 -04:00
qom qerror.h: Remove QERR defines that are only used once 2014-04-25 09:19:59 -04:00
roms PPC: Add u-boot firmware for e500 2014-06-16 13:24:35 +02:00
scripts trace: Multi-backend tracing 2014-06-09 15:43:40 +02:00
slirp slirp: Remove unused zero_ethaddr[] variable 2014-06-10 19:39:34 +04:00
stubs dump: Make DumpState and endian conversion routines available for arch-specific dump code 2014-06-16 13:24:36 +02:00
sysconfigs/target
target-alpha softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-arm target-arm: Use Common Tables in AES Instructions 2014-06-16 13:24:33 +02:00
target-cris target-cris/translate.c: Remove _t_gen_mov_TN_env and _t_gen_mov_env_TN 2014-06-09 01:04:44 +02:00
target-i386 target-i386: Use Common ShiftRows and InvShiftRows Tables 2014-06-16 13:24:33 +02:00
target-lm32 softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-m68k softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-microblaze target-microblaze: Delete unused sign_extend() function 2014-06-10 19:39:34 +04:00
target-mips softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-moxie softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-openrisc softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-ppc spapr_iommu: Enable multiple TCE requests 2014-06-16 13:24:39 +02:00
target-s390x s390x/kvm: inject via flic 2014-06-10 09:50:27 +02:00
target-sh4 softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-sparc softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-unicore32 softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
target-xtensa softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
tcg Merge remote-tracking branch 'remotes/bonzini/softmmu-smap' into staging 2014-06-05 21:06:14 +01:00
tests vmstate: Refactor opening of files 2014-06-16 04:55:27 +02:00
trace glib-compat.h: add new thread API emulation on top of pre-2.31 API 2014-06-10 07:44:01 +02:00
ui spice: add mouse cursor support 2014-06-13 12:34:57 +02:00
util util: Add InvMixColumns 2014-06-16 13:24:33 +02:00
.exrc
.gitignore configure: Put tempfiles in a subdir of the build directory 2014-05-24 00:34:38 +04:00
.gitmodules PPC: Add u-boot firmware for e500 2014-06-16 13:24:35 +02:00
.mailmap Update mailmap 2013-09-05 09:40:31 -05:00
.travis.yml trace: Multi-backend tracing 2014-06-09 15:43:40 +02:00
aio-posix.c aio: make aio_poll(ctx, true) block with no fds 2013-12-06 16:53:51 +01:00
aio-win32.c aio: make aio_poll(ctx, true) block with no fds 2013-12-06 16:53:51 +01:00
arch_init.c migration: catch unknown flags in ram_load 2014-06-16 04:55:27 +02:00
async.c aio: fix qemu_bh_schedule() bh->ctx race condition 2014-06-04 09:56:06 +02:00
balloon.c
block-migration.c block: fix wrong order in live block migration setup 2014-06-04 11:22:39 +02:00
block.c throttle: add throttle_detach/attach_aio_context() 2014-06-04 09:56:12 +02:00
blockdev-nbd.c nbd: Close socket on negotiation failure. 2014-05-24 00:07:29 +04:00
blockdev.c blockdev: acquire AioContext in block_set_io_throttle 2014-06-04 09:56:12 +02:00
blockjob.c block: Move op_blocker check from block_job_create to its caller 2014-05-28 14:28:46 +02:00
bt-host.c sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
bt-vhci.c sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
Changelog Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
CODING_STYLE CODING_STYLE: Section about mixed declarations 2014-03-27 19:22:49 +04:00
configure PPC: Add u-boot firmware for e500 2014-06-16 13:24:35 +02:00
COPYING
COPYING.LIB
coroutine-gthread.c glib-compat.h: add new thread API emulation on top of pre-2.31 API 2014-06-10 07:44:01 +02:00
coroutine-sigaltstack.c
coroutine-ucontext.c Fix warnings suppressors to honor --disable-werror 2013-04-17 10:28:04 -05:00
coroutine-win32.c
cpu-exec.c cpu: make CPU_INTERRUPT_RESET available on all targets 2014-05-13 13:21:51 +02:00
cpus.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
cputlb.c softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
device_tree.c device_tree: qemu_fdt_setprop: Rename val_array arg 2013-12-20 01:58:12 +01:00
device-hotplug.c machine: Remove QEMUMachine indirection from MachineClass 2014-05-05 19:08:49 +02:00
disas.c monitor: QEMU Monitor Instruction Disassembly Incorrect for PowerPC LE Mode 2014-06-16 13:24:26 +02:00
dma-helpers.c dma-helpers: avoid calling dma_bdrv_unmap() twice 2014-05-24 00:28:43 +04:00
dump.c dump: Make DumpState and endian conversion routines available for arch-specific dump code 2014-06-16 13:24:36 +02:00
exec.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
gdbstub.c exec: Change cpu_breakpoint_{insert,remove{,_by_ref,_all}} argument 2014-03-13 19:20:48 +01:00
HACKING HACKING: Document vaddr type usage 2013-07-23 02:41:31 +02:00
hmp-commands.hx monitor: Add delvm and loadvm argument completion 2014-06-11 10:10:29 -04:00
hmp.c Block patches 2014-05-20 11:57:52 +01:00
hmp.h monitor: Add delvm and loadvm argument completion 2014-06-11 10:10:29 -04:00
iohandler.c iohandler.c: Properly initialize sigaction struct 2014-05-24 00:07:29 +04:00
ioport.c portio: Allow to mark portio lists as coalesced MMIO flushing 2013-10-17 17:24:15 +02:00
iothread.c iothread: make IOThread struct definition public 2014-04-04 20:48:02 +02:00
kvm-all.c Merge remote-tracking branch 'remotes/kvm/uq/master' into staging 2014-06-05 19:16:28 +01:00
kvm-stub.c s390x/virtio-ccw: wire up irq routing and irqfds 2014-05-20 13:05:58 +02:00
LICENSE LICENSE: clarify 2013-08-12 09:15:12 -05:00
main-loop.c main-loop: Suppress "I/O thread spun" warnings for qtest 2014-03-13 21:36:50 +01:00
MAINTAINERS MAINTAINERS: update Calxeda Highbank maintainer and status 2014-05-27 17:09:49 +01:00
Makefile trace: Multi-backend tracing 2014-06-09 15:43:40 +02:00
Makefile.objs libcacard: remove libcacard-specific CFLAGS and LIBS from global vars 2014-05-09 22:59:40 +02:00
Makefile.target target-ppc: Enable Building of libdecnumber 2014-06-16 13:24:29 +02:00
memory_mapping.c cpu: Use QTAILQ for CPU list 2013-09-03 12:25:55 +02:00
memory.c memory: Sanity check that no listeners remain on a destroyed AddressSpace 2014-05-30 12:59:00 -06:00
migration-exec.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
migration-fd.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
migration-rdma.c rdma: Fix block during rdma migration 2014-06-16 04:55:27 +02:00
migration-tcp.c Coverity: Fix failure path for qemu_accept in migration 2014-05-05 22:15:03 +02:00
migration-unix.c Coverity: Fix failure path for qemu_accept in migration 2014-05-05 22:15:03 +02:00
migration.c migration: catch unknown flags in ram_load 2014-06-16 04:55:27 +02:00
module-common.c module: implement module loading 2014-02-20 13:14:18 +01:00
monitor.c monitor: QEMU Monitor Instruction Disassembly Incorrect for PowerPC LE Mode 2014-06-16 13:24:26 +02:00
nbd.c nbd: Miscellaneous typo fixes. 2014-05-24 00:07:29 +04:00
os-posix.c oslib-posix: Fix build on FreeBSD 2014-03-13 14:34:16 +00:00
os-win32.c util: Split out exec_dir from os_find_datadir 2014-02-20 13:12:54 +01:00
page_cache.c migration: Plug memory leak in migrate-set-cache-size command 2014-06-10 19:54:43 +04:00
qapi-schema.json qapi: Extract qapi/block.json definitions 2014-06-06 16:25:48 +02:00
qdev-monitor.c qdev: Implement named GPIOs 2014-05-28 17:36:21 +02:00
qdict-test-data.txt
qemu-bridge-helper.c
qemu-char.c char: fix avail_connections init in qemu_chr_open_eventfd() 2014-06-13 12:34:55 +02:00
qemu-coroutine-io.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
qemu-coroutine-lock.c coroutine: remove qemu_co_queue_wait_insert_head 2013-12-02 17:11:49 +01:00
qemu-coroutine-sleep.c coroutine: add co_aio_sleep_ns() to allow sleep in block drivers 2013-10-30 12:22:09 +01:00
qemu-coroutine.c coroutine: add ./configure --disable-coroutine-pool 2013-09-12 10:12:48 +02:00
qemu-doc.texi doc: grammify "allows to" 2014-04-18 10:33:36 +04:00
qemu-file.c Make qemu_peek_buffer loop until it gets it's data 2014-05-05 22:15:03 +02:00
qemu-img-cmds.hx qemu-img: add -l for snapshot in convert 2013-12-04 15:19:00 +01:00
qemu-img.c qemu-img: Document check exit codes 2014-06-04 11:30:32 +02:00
qemu-img.texi qemu-img: Document check exit codes 2014-06-04 11:30:32 +02:00
qemu-io-cmds.c qemu-io-cmds: Fixed typo in example for writev. 2014-03-19 09:39:41 +01:00
qemu-io.c trace: Multi-backend tracing 2014-06-09 15:43:40 +02:00
qemu-log.c
qemu-nbd.c qemu-nbd: Don't use qerror_report() 2014-05-28 14:28:46 +02:00
qemu-nbd.texi nbd: Miscellaneous typo fixes. 2014-05-24 00:07:29 +04:00
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx pc,pci,virtio,qdev fixes, tests 2014-06-05 21:52:37 +01:00
qemu-seccomp.c seccomp: add shmctl(), mlock(), and munlock() to the syscall whitelist 2014-04-25 14:52:03 -03:00
qemu-tech.texi
qemu-timer.c vl.c: remove init_clocks call from main 2014-05-09 20:57:32 +02:00
qemu.nsi nsis: Improved support for parallel installation of 32 and 64 bit code 2013-11-07 07:02:44 +01:00
qemu.sasl sasl: Avoid 'Could not find keytab file' in syslog 2014-03-15 13:54:18 +04:00
qmp-commands.hx Merge remote-tracking branch 'remotes/qmp-unstable/queue/qmp' into staging 2014-05-22 19:04:49 +01:00
qmp.c qmp: Don't use error_is_set() to suppress additional errors 2014-05-09 09:11:32 -04:00
qtest.c qtest: fix hex2nib for capital characters 2014-06-10 19:39:34 +04:00
README Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
rules.mak rules.mak: Rewrite unnest-vars 2014-06-10 13:59:02 +02:00
savevm.c qerror.h: Remove QERR defines that are only used once 2014-04-25 09:19:59 -04:00
softmmu_template.h softmmu: move softmmu_template.h out of include/ 2014-06-05 16:10:33 +02:00
spice-qemu-char.c spice: hook qemu_chr_fe_set_open() event to ports 2014-02-03 11:05:15 +01:00
tcg-runtime.c tcg: Push tcg-runtime routines into exec/helper-* 2014-05-28 09:33:54 -07:00
tci.c Merge remote-tracking branch 'remotes/bonzini/softmmu-smap' into staging 2014-06-05 21:06:14 +01:00
thread-pool.c aio: Fix use-after-free in cancellation path 2014-05-28 14:28:46 +02:00
thunk.c
tpm.c Use error_is_set() only when necessary 2014-02-17 11:57:23 -05:00
trace-events spapr_iommu: Enable multiple TCE requests 2014-06-16 13:24:39 +02:00
translate-all.c tcg-mips: Constrain the code_gen_buffer to be within one 256mb segment 2014-05-24 08:45:00 -07:00
translate-all.h translate-all: Change tb_check_watchpoint() argument to CPUState 2014-03-13 19:20:48 +01:00
user-exec.c softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
VERSION Open 2.1 development tree 2014-04-17 20:39:32 +01:00
version.rc Use qemu-project.org domain name 2013-10-11 09:34:56 -07:00
vl.c trace: Multi-backend tracing 2014-06-09 15:43:40 +02:00
vmstate.c savevm: Ignore minimum_version_id_old if there is no load_state_old 2014-05-05 22:15:03 +02:00
xbzrle.c xbzrle.c: Avoid undefined behaviour with signed arithmetic 2014-04-18 10:33:36 +04:00
xen-common-stub.c xen: factor out common functions 2014-05-07 16:16:43 +00:00
xen-common.c xen: factor out common functions 2014-05-07 16:16:43 +00:00
xen-hvm-stub.c xen: factor out common functions 2014-05-07 16:16:43 +00:00
xen-hvm.c xen: replace ffsl with ctzl 2014-06-11 00:25:06 +01:00
xen-mapcache.c hw: move headers to include/ 2013-04-08 18:13:10 +02:00

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

- QEMU team