QEMU With E2K User Support
Go to file
Stefan Hajnoczi 63f0f45f2e curl: implement .bdrv_detach/attach_aio_context()
The curl block driver uses fd handlers, timers, and BHs.  The fd
handlers and timers are managed on behalf of libcurl, which controls
them using callback functions that the block driver implements.

The simplest way to implement .bdrv_detach/attach_aio_context() is to
clean up libcurl in the old event loop and initialize it again in the
new event loop.  We do not need to keep track of anything since there
are no pending requests when the AioContext is changed.

Also make sure to use aio_set_fd_handler() instead of
qemu_aio_set_fd_handler() and aio_bh_new() instead of qemu_bh_new() so
the current AioContext is passed in.

Cc: Alexander Graf <agraf@suse.de>
Cc: Fam Zheng <famz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
2014-06-04 09:56:11 +02:00
audio audio: replace fprintf(stderr, ...) with error_report() in audio 2014-05-26 10:41:21 +04:00
backends build: convert some obj-specific CFLAGS to use new foo.o-cflags syntax 2014-05-08 15:27:49 +02:00
block curl: implement .bdrv_detach/attach_aio_context() 2014-06-04 09:56:11 +02:00
bsd-user Revert "bsd-user: replace fprintf(stderr, ...) with error_report()" 2014-06-02 13:26:59 +01:00
default-configs s390x: split flic into kvm and non-kvm parts 2014-05-20 13:05:57 +02:00
disas disas/libvixl: Update to libvixl 1.4 2014-05-13 16:09:35 +01:00
docs docs: Define refcount_bits value 2014-05-28 14:28:46 +02:00
dtc@bc895d6d09
fpu
fsdev
gdb-xml
hw VFIO patches: realtek NIC quirk + SPAPR IOMMU AddressSpace support 2014-06-03 14:37:43 +01:00
include block: add bdrv_set_aio_context() 2014-06-04 09:56:11 +02:00
libcacard libcacard: remove useless initializers 2014-05-26 10:41:22 +04:00
linux-headers linux-headers: update 2014-05-20 13:05:58 +02:00
linux-user target-i386: the x86 CPL is stored in CS.selector - auto update hflags accordingly. 2014-05-13 13:12:40 +02:00
net monitor: Add set_link arguments completion. 2014-05-15 15:16:02 -04:00
pc-bios seabios: update to 1.7.5 final 2014-06-02 16:49:00 +02:00
pixman@97336fad32
po
qapi qapi: Avoid output visitor crashing if it encounters a NULL value 2014-05-28 17:36:04 +02:00
qga qga: Drop superfluous error_is_set() 2014-05-09 09:11:31 -04:00
qobject qdict: Add qdict_join() 2014-05-19 11:36:48 +02:00
qom
roms seabios: update to 1.7.5 final 2014-06-02 16:49:00 +02:00
scripts qapi: zero-initialize all QMP command parameters 2014-05-21 09:25:31 -04:00
slirp
stubs
sysconfigs/target
target-alpha tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-arm tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-cris tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-i386 tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-lm32 tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-m68k tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-microblaze tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-mips tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-moxie tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-openrisc tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-ppc tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-s390x tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-sh4 tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-sparc tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-unicore32 tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
target-xtensa tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
tcg tcg/optimize: Remember garbage high bits for 32-bit ops 2014-05-28 09:33:56 -07:00
tests usb: improve ehci/uhci test 2014-06-02 16:28:59 +02:00
trace trace: [tracetool] Minimize the amount of per-backend code 2014-05-07 19:07:18 +02:00
ui sdl2: add support for text consoles 2014-06-02 16:10:12 +01:00
util purge error_is_set() 2014-05-22 18:14:01 +01:00
.exrc
.gitignore configure: Put tempfiles in a subdir of the build directory 2014-05-24 00:34:38 +04:00
.gitmodules
.mailmap
.travis.yml
aio-posix.c
aio-win32.c
arch_init.c arch_init: replace fprintf(stderr, ...) with error_report() 2014-05-24 00:10:42 +04: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: Replace in_use with operation blocker 2014-05-28 14:28:46 +02:00
block.c block: add bdrv_set_aio_context() 2014-06-04 09:56:11 +02:00
blockdev-nbd.c nbd: Close socket on negotiation failure. 2014-05-24 00:07:29 +04:00
blockdev.c blockdev: Plug memory leak in drive_init() 2014-05-30 14:26:54 +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
bt-vhci.c
Changelog
CODING_STYLE
configure trivial patches for 2014-05-26 2014-05-27 22:45:03 +01:00
COPYING
COPYING.LIB
coroutine-gthread.c do not call g_thread_init() for glib >= 2.31 2014-05-07 21:00:43 +04:00
coroutine-sigaltstack.c
coroutine-ucontext.c
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
device_tree.c
device-hotplug.c
disas.c
dma-helpers.c dma-helpers: avoid calling dma_bdrv_unmap() twice 2014-05-24 00:28:43 +04:00
dump.c dump: Drop pointless error_is_set(), DumpState member errp 2014-05-09 09:11:32 -04:00
exec.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
gdbstub.c
HACKING
hmp-commands.hx monitor: Add netdev_del id argument completion. 2014-05-15 15:16:02 -04:00
hmp.c Block patches 2014-05-20 11:57:52 +01:00
hmp.h monitor: Add netdev_del id argument completion. 2014-05-15 15:16:02 -04:00
iohandler.c iohandler.c: Properly initialize sigaction struct 2014-05-24 00:07:29 +04:00
ioport.c
iothread.c
kvm-all.c s390x/virtio-ccw: wire up irq routing and irqfds 2014-05-20 13:05:58 +02:00
kvm-stub.c s390x/virtio-ccw: wire up irq routing and irqfds 2014-05-20 13:05:58 +02:00
LICENSE
main-loop.c
MAINTAINERS MAINTAINERS: update Calxeda Highbank maintainer and status 2014-05-27 17:09:49 +01:00
Makefile Merge remote-tracking branch 'remotes/bonzini/configure' into staging 2014-05-13 11:30:07 +01:00
Makefile.objs libcacard: remove libcacard-specific CFLAGS and LIBS from global vars 2014-05-09 22:59:40 +02:00
Makefile.target Makefile.target: use $(INSTALL_PROG) for installing, not $(INSTALL) 2014-05-08 15:09:04 +02:00
memory_mapping.c
memory.c memory: Sanity check that no listeners remain on a destroyed AddressSpace 2014-05-30 12:59:00 -06:00
migration-exec.c
migration-fd.c
migration-rdma.c
migration-tcp.c
migration-unix.c
migration.c migration: show average throughput when migration finishes 2014-05-14 15:24:52 +02:00
module-common.c
monitor.c monitor: Add netdev_del id argument completion. 2014-05-15 15:16:02 -04:00
nbd.c nbd: Miscellaneous typo fixes. 2014-05-24 00:07:29 +04:00
os-posix.c
os-win32.c
page_cache.c
qapi-schema.json Merge remote-tracking branch 'remotes/qmp-unstable/queue/qmp' into staging 2014-05-22 19:04:49 +01: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: Explain qmp_chardev_add()'s unusual error handling 2014-05-21 11:57:58 +02:00
qemu-coroutine-io.c
qemu-coroutine-lock.c
qemu-coroutine-sleep.c
qemu-coroutine.c
qemu-doc.texi
qemu-file.c
qemu-img-cmds.hx
qemu-img.c qemu-img: Report error even with --oformat=json 2014-06-02 13:58:40 +02:00
qemu-img.texi
qemu-io-cmds.c
qemu-io.c qemu-io: Don't print NULL when open without non-option arg fails 2014-05-30 14:26:54 +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 target-lm32: add semihosting support 2014-05-24 19:42:29 +02:00
qemu-seccomp.c
qemu-tech.texi
qemu-timer.c vl.c: remove init_clocks call from main 2014-05-09 20:57:32 +02:00
qemu.nsi
qemu.sasl
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 qdev: Implement named GPIOs 2014-05-28 17:36:21 +02:00
README
rules.mak build: simplify and fix fix-obj-vars 2014-05-09 22:59:40 +02:00
savevm.c
spice-qemu-char.c
tcg-runtime.c tcg: Push tcg-runtime routines into exec/helper-* 2014-05-28 09:33:54 -07:00
tci.c
thread-pool.c aio: Fix use-after-free in cancellation path 2014-05-28 14:28:46 +02:00
thunk.c
tpm.c
trace-events qtest: improve ehci/uhci test 2014-06-02 17:07:21 +01: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
user-exec.c
VERSION
version.rc
vl.c machine: Make -machine opts properties of MachineState 2014-05-28 17:36:13 +02:00
vmstate.c
xbzrle.c
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 pass an inclusive address range to xc_domain_pin_memory_cacheattr 2014-05-07 16:17:57 +00:00
xen-mapcache.c

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

- QEMU team