History | View | Annotate | Download (119.5 kB)
aio / timers: Add prctl(PR_SET_TIMERSLACK, 1, ...) to reduce timer slack
Where supported, called prctl(PR_SET_TIMERSLACK, 1, ...) toset one nanosecond timer slack to increase precision of timercalls.
Signed-off-by: Alex Bligh <alex@alex.org.uk>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
aio / timers: add ppoll support with qemu_poll_ns
Add qemu_poll_ns which works like g_poll but takes a nanosecondtimeout.
Merge remote-tracking branch 'filippov/tags/20130729-xtensa' into staging
xtensa queue 2013-07-29
qemu-ga: build it even if !system
Move qemu-ga build check out of if softmmu.. into its own section.We want to build qemu-ga for guest even if system build isn'tdone. It is controlled separately using --enable-guest-agent.Additionally, give error message if guest agent is requested but...
tests: QAPI schema parser tests
The parser handles erroneous input badly. To be improved shortly.
Signed-off-by: Markus Armbruster <armbru@redhat.com>Message-id: 1374939721-7876-2-git-send-email-armbru@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
tests/tcg/xtensa: Fix out-of-tree build
Signed-off-by: Andreas Färber <afaerber@suse.de>Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
seccomp: no need to check arch in syscall whitelist
v2 update:- set libseccomp 2.1.0 as requirement on configure script.
Since libseccomp 2.0 there's no need to check the architecture typeanymore.
Signed-off-by: Eduardo Otubo <otubo@linux.vnet.ibm.com>...
Merge remote-tracking branch 'rth/tcg-next' into staging
Merge remote-tracking branch 'riku/linux-user-for-upstream' into staging
rdma: core logic
Code that does need to be visible is keptwell contained inside this file and this is the onlynew additional file to the entire patch.
This file includes the entire protocol and interfacesrequired to perform RDMA migration.
Also, the configure and Makefile modifications to link...
configure: Make NPTL non-optional
Now all linux-user targets support building with NPTL, we can make itmandatory. This is a good idea because: * NPTL is no longer new and experimental; it is completely standard * in practice, linux-user without NPTL is nearly useless for...
linux-user: Enable NPTL for x86-64
Add x86-64 implementation of cpu_set_tls() (like the kernel, wejust have to call do_arch_prctl() to set FS); this allows us toenable NPTL.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
linux-user: Add i386 TLS setter
We can easily set the TLS on i386. Add code to do so.
Signed-off-by: Alexander Graf <agraf@suse.de>[PMM: also remove "target_nptl=no" line from configure, for consistency with other patches in this series]Signed-off-by: Peter Maydell <peter.maydell@linaro.org>...
linux-user: Enable NPTL for m68k
For m68k, per-thread data is a purely kernel construct with noCPU level support. Implement it via a field in the TaskState structure,used by cpu_set_tls() and the set_thread_area/get_thread_areasyscalls. This allows us to enable compilation with NPTL....
linux-user: Enable NPTL for SPARC targets
Provide the missing cpu_set_tls(), and resolve the FIXME incpu_clone_regs() by clearing the carry flag for the child.This allows us to turn on building with NPTL for SPARC.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>...
linux-user: Enable NPTL for OpenRISC
The OpenRISC kernel ignores CLONE_SETTLS in its copy_thread()implementation, so a cpu_set_tls() implementation is a no-op.cpu_clone_regs() was setting the syscall return value in thewrong register -- it is gpr11, not gpr2. With these two...
configure: Enable threading for unicore32-linux-user
unicore32-linux-user provides cpu_set_tls(), so the failureto enable target_nptl was presumably an oversight. Enable it.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>Reviewed-by: Richard Henderson <rth@twiddle.net>...
configure: Enable threading on all ppc and mips linux-user targets
Though threading (target_nptl) was enabled on the base PPC and MIPStargets, it wasn't enabled for the variants mipsn32, mipsn32el,mips64, mips64el, ppc64 or ppc46abi32 (probably an oversight)....
configure: Don't say target_nptl="no" if there is no linux-user target
For architectures with no linux-user target, don't claim no NPTLsupport. This has no behavioural change, but it means that wewon't accidentally add a new linux-user target without threading...
configure: Flip default of target_nptl
Most targets either (a) support threading or (b) don't have alinux-user/bsd-user target, so make it default to 'yes', with thosetargets that don't support threading having to specifically say so.
This is a mechanical no-behaviour-change commit; some of the...
gluster: Use pkg-config to configure GlusterFS block driver
Use pkg-config to determine the version and library dependencyfor GlusterFS block driver.
Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
gluster: Add discard support for GlusterFS block driver.
Implement bdrv_aio_discard for gluster.
Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>Reviewed-by: Kevin Wolf <kwolf@redhat.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
configure: Provide more helpful message if libvte not present
If the system has GTK but not libvte, it's more helpful totell the user that libvte is missing than to simply say thatGTK is not present.
Merge git://github.com/hw-claudio/qemu-aarch64-queue into tcg-next
tcg/aarch64: Implement tlb lookup fast path
Supports CONFIG_QEMU_LDST_OPTIMIZATION
Signed-off-by: Jani Kokkonen <jani.kokkonen@huawei.com>Reviewed-by: Richard Henderson <rth@twiddle.net>Reviewed-by: Claudio Fontana <claudio.fontana@huawei.com>
configure: Simplify alternate .text segment
For bsd-user and linux-user emulation modes QEMU needs to be linked at analternate .text segment address, so that it's out of the way of the guestexecutable. Instead of including modified linker scripts for each arch,...
configure: Add signed*signed check to [u]int128_t test
clang 3.3 with -fsanitize=undefined will fail to link code containing anint128_t * int128_t multiply (http://llvm.org/bugs/show_bug.cgi?id=16404)so add this to our configure test for whether [u]int128_t are usable....
configure: Fix "ERROR: ERROR: " for missing/incompatible DTC
error_exit already prepends "ERROR: ", so no need to print it manually.
Signed-off-by: Andreas Färber <afaerber@suse.de>Reviewed-by: Peter Maydell <peter.maydell@linaro.org>Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
configure: Require libfdt for arm, ppc, microblaze softmmu targets
A number of our softmmu targets (PPC, ARM, Microblaze) now more orless require flattened device tree support for various board modelsto work correctly. Make libfdt mandatory if the target list includes...
build: drop TARGET_TYPE
Just use the TARGET_NAME free string.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Reviewed-by: Eric Blake <eblake@redhat.com>Message-id: 1370349928-20419-6-git-send-email-pbonzini@redhat.comSigned-off-by: Peter Maydell <peter.maydell@linaro.org>
configure: dtc: Probe for libfdt_env.h
Currently QEMU provides a local clone of the file libfdt_env.h in/include. This file is supposed to come with the libfdt package and isonly needed for broken installs of libfdt. Now that we have submoduledtc, just ignore these broken installs and prompt for the dtc submodule...
main: use TARGET_ARCH only for the target-specific #define
Everything else needs to match the executable name, which isTARGET_NAME.
Before: $ sh4eb-linux-user/qemu-sh4eb --help usage: qemu-sh4 [options] program [arguments...] Linux CPU emulator (compiled for sh4 emulation)...
build: rename TARGET_ARCH2 to TARGET_NAME
Do not introduce any new use yet.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Message-id: 1370349928-20419-3-git-send-email-pbonzini@redhat.comSigned-off-by: Peter Maydell <peter.maydell@linaro.org>
Merge remote-tracking branch 'mjt/trivial-patches-next' into staging
Merge remote-tracking branch 'afaerber/qom-cpu' into staging
tcg/aarch64: implement user mode qemu ld/st
also put aarch64 in the list of archs that do not need an ldscript.
Signed-off-by: Jani Kokkoken <jani.kokkonen@huawei.com>Signed-off-by: Claudio Fontana <claudio.fontana@huawei.com>Reviewed-by: Richard Henderson <rth@twiddle.net>...
configure: permit compilation on arm aarch64
support compiling on aarch64.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>Signed-off-by: Claudio Fontana <claudio.fontana@huawei.com>Reviewed-by: Richard Henderson <rth@twiddle.net>Message-id: 51A5C5ED.90103@huawei.com...
configure: Drop CONFIG_ATFILE test
Nobody uses the CONFIG_ATFILE test now, so just drop it.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>Reviewed-by: Richard Henderson <rth@twiddle.net>Tested-by: Claudio Fontana <claudio.fontana@huawei.com>Message-id: 1370126121-22975-3-git-send-email-peter.maydell@linaro.org
configure: remove ${config_host_ld} variable
It was only used in one place (and already expanded in one other).
Signed-off-by: Ed Maste <emaste@freebsd.org>Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
configure: Disable host-bsd USB on FreeBSD
It hasn't built since FreeBSD 8.x, and is disabled by a patch in theFreeBSD ports tree. FreeBSD is migrating to QEMU's libusb support.
dump: Drop qmp_dump_guest_memory() stub and build for all targets
qmp_dump_guest_memory() calls dump_init() and returns an Error whencpu_get_dump_info() returns an error, as done by the stub.So there is no need to have a stub for qmp_dump_guest_memory()....
memory_mapping: Drop qemu_get_memory_mapping() stub
dump.c:dump_init() never checked for the return code anyway.If paging is not enabled, it will fall back to an identity map.If paging is enabled and getting memory mapping list is notimplemented, qemu_get_guest_memory_mapping() will return an error....
block: add block driver read only whitelist
We may want to include a driver in the whitelist for read only taskssuch as diagnosing or exporting guest data (with libguestfs as a goodexample). This patch introduces a readonly whitelist option, and forbackward compatibility, the old configure option --block-drv-whitelist...
configure: Autogenerate default target list
Autogenerate the default target list based on what files existin default-configs; this allows us to remove one of the placesthat has to be kept up to date with a complete list of everytarget we support.
configure: Report unknown target names more helpfully
If the user specifies a target list themselves, check each entryto make sure it's a target we recognise. This allows us to printa helpful error message, rather than falling through (where wewould probably eventually end up hitting the uninformative...
qemu: fix out of tree cross compile
The symlink to "asm" platform linux headers is made in the build tree bythe configure script but gcc is not told to look for them there.
The patch fixes this.
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
don't run pkg-config for features explicitly disabled
We test pkg-config for curses and curl even if those are explicitlydisabled. Move these tests inside `if "$feature" != "no"' sections.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
configure: remove confusing file manipulation
The configure script had some code to manipulate config-host.ld~ (i.e.,a common backup filename), comparing it with the newly-generated file.I believe the sense of the comparison was backwards.
Since it seemed to serve little purpose anyway, remove it to avoid any...
configure: try pkg-config ncurses first
When probing for ncurses, try pkg-config first rather than afterexplicit -lncurses and -lcurses. This fixes static linking in the casethat ncurses has additional dependencies, such as -ltinfo (as on FreeBSD).
Signed-off-by: Ed Maste <emaste@freebsd.org>...
configure: don't save any fixed local_statedir for win32
... because now we can get the dynamic value withqemu_get_local_state_pathname().
The only user of the fixed value was the guest agent, which we've moved toqemu_get_local_state_pathname() in the previous patch....
Remove OSS support for OpenBSD
Remove the OSS support for OpenBSD. The OSS API has not been usablefor quite some time.
Signed-off-by: Brad Smith <brad@comstyle.com>Reviewed-by: Laszlo Ersek <lersek@redhat.com>Reviewed-by: Andreas Färber <afaerber@suse.de>...
w32: Fix configure test for -march=i486
The latest version of MinGW needs a test for __sync_val_compare_and_swapto fix a missing symbol linker error.
Reported-by: Igor Mitsyanko <i.mitsyanko@gmail.com>Signed-off-by: Stefan Weil <sw@weilnetz.de>Message-id: 1368301619-32097-2-git-send-email-sw@weilnetz.de...
configure: Detect uuid on MacOSX (fixes compile failure)
Commit 7791dba3ec broke compilation on MacOSX, because it introduceda new include of util.h. On MacOSX this includes pwd.h which in turnincludes the system uuid/uuid.h, which causes a compile failure if...
qom: allow turning cast debugging off
Cast debugging can have a substantial cost (20% or more). Instead of addingspecial-cased "fast casts" in the hot paths, we can just disable it inreleases. The tracing facilities we just added make it easier to analyze...
S390: BIOS create link to src folder for .img file
For *.img files, there will be a link created directly to the src folder,like for all other blobs.
Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com>Signed-off-by: Alexander Graf <agraf@suse.de>
configure: Check that "libtool" is not the MacOSX one
The "libtool" binary on MacOSX is not GNU libtool, and doesn't supportanything like the same set of command line options. Test whether wehave accidentally picked this up (by looking for whether it handles...
trace: Add ftrace tracing backend
This patch adds a ftrace tracing backend which sends trace event toftrace marker file. You can effectively compare qemu trace data andkernel(especially, kvm.ko when using KVM) trace data.The ftrace backend is restricted to Linux only....
configure: Pick up libseccomp include path
openSUSE 12.3 has seccomp.h in /usr/include/libseccomp-1.0.1,so add `pkg-config --cflags libseccomp` output to QEMU_CFLAGS.
Cc: qemu-stable@nongnu.orgSigned-off-by: Andreas Färber <afaerber@suse.de>Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
audio: replace audio card configuration with default-configs
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Message-id: 1366303444-24620-6-git-send-email-pbonzini@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
audio: remove the need for audio card CONFIG_* symbols
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Message-id: 1366303444-24620-3-git-send-email-pbonzini@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
audio: remove HAS_AUDIO
Several targets can have wavcapture/-soundhw support via PCI cards.HAS_AUDIO is a useless limitation, remove it.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Message-id: 1366303444-24620-4-git-send-email-pbonzini@redhat.com...
audio: remove CONFIG_* symbols
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Message-id: 1366303444-24620-5-git-send-email-pbonzini@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
tcg-arm: Convert to CONFIG_QEMU_LDST_OPTIMIZATION
Move the slow path out of line, as the TODO's mention.This allows the fast path to be unconditional, which canspeed up the fast path as well, depending on the core.
Signed-off-by: Richard Henderson <rth@twiddle.net>
s390-ccw.img: build s390-ccw rom on s3900 system by default
Lets build the s390-ccw rom if on s390. Also fix the separate buildfolder case.
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>Signed-off-by: Alexander Graf <agraf@suse.de>
block/ssh: Require libssh2 >= 1.2.8.
libssh2 >= 1.2.8 is required to enable this block device (becausethat version introduced the libssh2_session_handshake call).
Change the test to use pkg-config exclusively. If the user requests--enable-libssh2 and the minimum version is not available, then the...
build-sys: must link with -fstack-protector
It is needed to give that flag to the linker as well, but latestlibtool 2.4.2 still swallows that argument, so let's pass it withlibtool -Wc argument.
qemu-1.4.0/stubs/arch-query-cpu-def.c:6: undefined reference to `__stack_chk_guard'...
usb-host: raise libusbx minimum version to 1.0.13
Allows to remove one FIXME. Makes LIBUSB_LOG_LEVEL_WARNING build errorsgo away. And starting with that version libusb has a LIBUSBX_API_VERSIONdefine which allows to easily #ifdef version dependencies should that...
vhost-scsi: new device supporting the tcm_vhost Linux kernel module
The WWPN specified in configfs is passed to "-device vhost-scsi-pci".The tgpt field of the SET_ENDPOINT ioctl is obsolete now, so it is notavailable from the QEMU command-line. Instead, I hardcode it to zero....
configure: QEMU_INCLUDES are the same for all subtargets
Reviewed-by: Peter Maydell <peter.maydell@redhat.com>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
elfload: use abi_short/ushort instead of target_short/ushort
The alignment is a characteristic of the ABI, not the CPU.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
elfload: use abi_int/uint instead of target_int/uint
elfload: only give abi_long/ulong the alignment specified by the target
Previously, this was done for target_long/ulong, and propagated toabi_long/ulong via a typedef. But target_long/ulong should nothave any specific alignment, it is never used to access guest...
elfload: use abi_llong/ullong instead of target_llong/ullong
configure: move CONFIG_QEMU_LDST_OPTIMIZATION to config-host.mak
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
configure: move common libraries to config-host.mak
Move -lm to the end of the line, so that it can be picked up as adependency by pixman in the static build case.
Reviewed-by: Peter Maydell <peter.maydell@redhat.com>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>...
configure: eliminate target_libs_softmmu
configure: CONFIG_NO_XEN is duplicated
We already define it in Makefile.target. But we need to avoid acurious double negation in order to eliminate it.
Tested-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>Reviewed-by: Peter Maydell <peter.maydell@linaro.org>...
configure: remove duplicate test
We already had a test to add -march=i486 when needed. Make theexisting test independent of vhost-net, so that it is also usedunder Win32.
configure: Put cross compile flags in EXTRA_CFLAGS
The cross compile CFLAGS are needed to properly build pixman (and any othersubmodules). Only the EXTRA_CFLAGS set is passed to submodules not QEMU_CFLAGS,so put the cross compile flags in EXTRA_CFLAGS instead....
configure/Make: Build libfdt from submodule DTC
Configure to use the DTC submodule to build libfdt when no system libfdtis found. Prompt to install the DTC submodule if --enable-fdt is set butno DTC can be found.
DTC has no out-of-tree build capability, so the configure will symlink...
Fix warnings suppressors to honor --disable-werror
Replace
#pragma GCC diagnostic ignored FOO [Troublesome code...] #pragma GCC diagnostic error FOO
by
#pragma GCC diagnostic push #pragma GCC diagnostic ignored FOO [Troublesome code...]...
qtest: add libqos including PCI support
This includes basic PCI support for the PC platform. Enoughabstraction should be present to support non-PC platforms too.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Message-id: 1366123521-4330-3-git-send-email-aliguori@us.ibm.com
use libusb for usb-host
Reimplement usb-host on top of libusb.Reasons to do this:
(1) Largely rewritten from scratch, nice opportunity to kill historical cruft. (2) Offload usbfs handling to libusb. (3) Have a single portable code base instead of bsd + linux variants....
Merge remote-tracking branch 'bonzini/hw-dirs' into staging
tcg-ppc64: Use getauxval for ISA detection
Glibc 2.16 includes an easy way to get feature bits previouslyburied in /proc or the program startup auxiliary vector. Use it.
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>Signed-off-by: Richard Henderson <rth@twiddle.net>
configure: fix TPM logic
A non-native i386 or x86_64 emulator should not have TPM passthroughsupport, since the TPM is only present for those hosts.
Reviewed-by: Andreas Färber <afaerber@suse.de>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Add linux-headers to QEMU_INCLUDES
virtio/dataplane/vring.c requires the Linux headers and is built for alltargets. So we need to add the corresponding include to QEMU_INCLUDES toavoid that outdated distribution headers are used.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>...
block: Add support for Secure Shell (ssh) block device.
qemu-system-x86_64 -drive file=ssh://hostname/some/image
QEMU will ssh into 'hostname' and open '/some/image' which is madeavailable as a standard block device.
You can specify a username (ssh://user@host/...) and/or a port number...
block: ssh: Use libssh2_sftp_fsync (if supported by libssh2) to flush to disk.
libssh2_sftp_fsync is an extension to libssh2 to support fsync(2) oversftp, which is itself an extension of OpenSSH.
If both libssh2 and the ssh daemon support it, this will allow...
cpu-exec: Allow "-d exec" in non-debug builds (drop CONFIG_DEBUG_EXEC)
The CONFIG_DEBUG_EXEC define compiles out a single qemu_log_mask()call, which is a pretty trivial cost even for something in the maincpu_exec() loop. Having this be conditionally defined means that...
hw: move virtio devices to hw/ subdirectories
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
configure: Provide and use convenience error reporting function
Provide a convenience function for reporting an error and exiting,and update various places in the configure script to use it.This allows us to be a little more consistent about how format...
configure: Don't fall back to gthread coroutine backend
The gthread coroutine backend is broken and does not produce a workingQEMU; it is only useful for some very limited debugging situations.Clean up the backend selection logic in configure so that it now runs...
configure: remove unset variables
These variables have not been set for a long time. Do notinclude them in config-host.mak.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Message-id: 1364918276-11866-1-git-send-email-pbonzini@redhat.comSigned-off-by: Anthony Liguori <aliguori@us.ibm.com>
Merge remote-tracking branch 'stefanha/trivial-patches' into staging
w32: Fix build with older gcc (unresolved symbol)
The cross i586-mingw32msvc-gcc 4.4.4 from Debian Squeeze does not support__sync_val_compare_and_swap by default.
Using -march=i686 fixes that and should also result in better code.
Signed-off-by: Stefan Weil <sw@weilnetz.de>...
configure: show debug-info option in --help output
"--enable-debug-info" and "--disable-debug-info" were not shownin --help output.
Signed-off-by: Dunrong Huang <huangdr@cloud-times.com>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Add top level changes for moxie
Signed-off-by: Anthony Green <green@moxielogic.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Merge branch 'for-upstream' of git://github.com/mwalle/qemu