summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | util/hbitmap.c: Use ctpopl rather than reimplementing a local equivalentPeter Maydell2014-06-111-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function popcountl() in hbitmap.c is effectively a reimplementation of what host-utils.h provides as ctpopl(). Use ctpopl() directly; this fixes a failure to compile on NetBSD (whose strings.h erroneously exposes a system popcountl() which clashes with this one). Reported-by: Martin Husemann <martin@duskware.de> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * | bsd-user: refresh freebsd system call numbersStacey Son2014-06-111-368/+445
| |/ | | | | | | | | | | | | | | | | | | | | | | Update FreeBSD system call numbers in freebsd/syscall_nr.h. Signed-off-by: Stacey Son <sson@FreeBSD.org> Reviewed-by: Ed Maste <emaste@freebsd.org> Signed-off-by: Sean Bruno <sbruno@freebsd.org> Message-id: 1401220104-7147-2-git-send-email-sbruno@freebsd.org Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* | Merge remote-tracking branch 'remotes/bonzini/configure' into stagingPeter Maydell2014-06-1110-223/+424
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | * remotes/bonzini/configure: rules.mak: Rewrite unnest-vars configure: unset interfering variables configure: duplicate/incorrect order of -lrt libcacard: improve documentation libcacard: actually use symbols file libcacard: replace qemu thread primitives with glib ones vscclient: use glib thread primitives not qemu glib-compat.h: add new thread API emulation on top of pre-2.31 API Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * rules.mak: Rewrite unnest-varsFam Zheng2014-06-101-79/+158
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The macro unnest-vars is the most important, complicated but hard to track magic in QEMU's build system. Rewrite it in a (hopefully) clearer way, with more comments, to make it easier to understand and maintain. Remove DSO_CFLAGS and module-objs-m that are not used. A bonus fix of this version is, per object variables are properly protected in save-objs and load-objs, before including sub-dir Makefile.objs, just as nested variables are. So the occasional same object name from different directory levels won't step on each other's foot. Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * configure: unset interfering variablesCornelia Huck2014-06-101-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The check for big or little endianness relies on grep reporting match/non-match on the generated binary. If the user specified --binary-files=without-match in their GREP_OPTIONS, this will fail. Let's follow what autoconf does and unset GREP_OPTIONS and CLICOLOR_FORCE at the beginning of the script. Reported-by: Eugene (jno) Dvurechenski <jno@linux.vnet.ibm.com> Suggested-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * configure: duplicate/incorrect order of -lrtRick Liu2014-06-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '-lrt' flag duplication/incorrect order would cause 'undefined reference to clock_gettime' error during compilation time. Before fix: ... -o qemu-bridge-helper qemu-bridge-helper.o -lrt -pthread -lgthread-2.0 -lrt -lglib-2.0 After fix: ... -o qemu-bridge-helper qemu-bridge-helper.o -pthread -lgthread-2.0 -lrt -lglib-2.0 Reference: http://hi.baidu.com/sanitywolf/item/7a8b69c1e76dd220a0b50ab1 Signed-off-by: Rick Liu <yrliu.ca@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * libcacard: improve documentationPaolo Bonzini2014-06-101-17/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using the file-backed smartcard backend is black magic, but it can be useful if your only smartcard bricks itself if it is accessed the wrong way too many times. Complete the documentation to include the art of creating certificates and using them with QEMU, based on Ray Strode's useful tutorial at https://blogs.gnome.org/halfline/2013/09/08/another-smartcard-post/ but with ccid-card-emulated or vscclient instead of SPICE. Cc: Ray Strode <rstrode@redhat.com> Reviewed-by: Alon Levy <alevy@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * libcacard: actually use symbols fileMichael Tokarev2014-06-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | libtool has an argument for .syms file, which is -export-symbols. There's no argument `-export-syms', and it looks like at least on linux, -export-syms is just ignored. Use the correct argument, -export-symbols, to actually get the right export list. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Alon Levy <alevy@redhat.com> Tested-by: Alon Levy <alevy@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * libcacard: replace qemu thread primitives with glib onesMichael Tokarev2014-06-103-30/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace QemuMutex with GMutex and QemuCond with GCond (with corresponding function changes), to make libcacard independent of qemu internal functions. After this step, none of libcacard internals use any qemu-provided symbols. Maybe it's a good idea to stop including qemu-common.h internally too. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Alon Levy <alevy@redhat.com> Tested-by: Alon Levy <alevy@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * vscclient: use glib thread primitives not qemuMichael Tokarev2014-06-101-33/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use glib-provided thread primitives in vscclient instead of qemu ones, and do not use qemu sockets in there (open-code call to WSAStartup() for windows to initialize things). This way, vscclient becomes more stand-alone, independent on qemu internals. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Alon Levy <alevy@redhat.com> Tested-by: Alon Levy <alevy@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * glib-compat.h: add new thread API emulation on top of pre-2.31 APIMichael Tokarev2014-06-103-60/+138
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thread API changed in glib-2.31 significantly. Before that version, conditionals and mutexes were only allocated dynamically, using _new()/_free() interface. in 2.31 and up, they're allocated statically as regular variables, and old interface is deprecated. (Note: glib docs says the new interface is available since version 2.32, but it was actually introduced in version 2.31). Create the new interface using old primitives, by providing non-opaque definitions of the base types (GCond and GMutex) using GOnces. Replace #ifdeffery around GCond and GMutex in trace/simple.c and coroutine-gthread.c too because it does not work anymore with the new glib-compat.h. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> [Use GOnce to support lazy initialization; introduce CompatGMutex and CompatGCond. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* | Merge remote-tracking branch 'remotes/mjt/tags/trivial-patches-2014-06-10' ↵Peter Maydell2014-06-1026-153/+46
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into staging trivial patches for 2014-06-10 # gpg: Signature made Tue 10 Jun 2014 17:07:19 BST using RSA key ID A4C3D7DB # gpg: Good signature from "Michael Tokarev <mjt@tls.msk.ru>" # gpg: aka "Michael Tokarev <mjt@corpit.ru>" # gpg: aka "Michael Tokarev <mjt@debian.org>" # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 6EE1 95D1 886E 8FFB 810D 4324 457C E0A0 8044 65C5 # Subkey fingerprint: 6F67 E18E 7C91 C5B1 5514 66A7 BEE5 9D74 A4C3 D7DB * remotes/mjt/tags/trivial-patches-2014-06-10: (25 commits) virtio.c: fix error message hw: vmware_vga: don't return cursorx when the driver asks for cursory register migration: Plug memory leak in migrate-set-cache-size command libcacard: Clean up dead stores before g_free() libcacard: Drop superfluous conditionals around g_free() cpu/x86: correctly set errors in x86_cpu_parse_featurestr smbios: use g_free directly on NULL pointers vdi: remove double conversion apb: Fix compiler warnings (large constants) hw/net/ne2000-isa: Register vmstate struct target-microblaze: Delete unused sign_extend() function hw/misc/milkymist-softusb: Remove unused softusb_{read, write}_pmem() target-i386/translate.c: Remove unused tcg_gen_lshift() hw/isa/pc87312: Remove unused function is_parallel_epp() hw/intc/openpic: Remove unused function IRQ_testbit() hw/dma/xilinx_axidma: Remove unused stream_halted() function util/qemu-sockets.c: Avoid unused variable warnings hw/sd/sd.c: Drop unused sd_acmd_type[] array hw/i386/pc.c: Remove unused parallel_io and parallel_irq variables slirp: Remove unused zero_ethaddr[] variable ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * | virtio.c: fix error messageMichael Tokarev2014-06-101-1/+1
| | | | | | | | | | | | | | | Suggested-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw: vmware_vga: don't return cursorx when the driver asks for cursory registerNicolas Owens2014-06-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hello qemu-*@nongnu.org, this is my first contribution. apologies if something is incorrect. this patch fixes vmware_vga.c so that it actually returns the cursory register when asked for, instead of cursorx. Signed-off-by: Nicolas Owens <mischief@offblast.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | migration: Plug memory leak in migrate-set-cache-size commandChen Gang2014-06-102-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We call g_free() after cache_fini() in migration_end(), but we don't call it after cache_fini() in xbzrle_cache_resize(), leaking the memory. cache_init() and cache_fini() are a pair. Since cache_init() allocates the cache, let cache_fini() free it. This plugs the leak. Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | libcacard: Clean up dead stores before g_free()Markus Armbruster2014-06-102-6/+0
| | | | | | | | | | | | | | | | | | Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | libcacard: Drop superfluous conditionals around g_free()Markus Armbruster2014-06-105-32/+12
| | | | | | | | | | | | | | | Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | cpu/x86: correctly set errors in x86_cpu_parse_featurestrPaolo Bonzini2014-06-101-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | Because of the "goto out", the contents of local_err are leaked and lost. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | smbios: use g_free directly on NULL pointersPaolo Bonzini2014-06-101-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | No need to wrap it with an if. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Benoit Canet <benoit@irqsave.net> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | vdi: remove double conversionPaolo Bonzini2014-06-101-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This should be a problem when running on big-endian machines. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Benoit Canet <benoit@irqsave.net> Reviewed-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | apb: Fix compiler warnings (large constants)Stefan Weil2014-06-101-2/+2
| | | | | | | | | | | | | | | | | | | | | Both constants need more than 32 bit. Signed-off-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw/net/ne2000-isa: Register vmstate structPeter Maydell2014-06-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The ne2000-isa device defines a VMState struct for migration, but we forgot to actually register it. Correct this deficiency by setting dc->vmsd. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | target-microblaze: Delete unused sign_extend() functionPeter Maydell2014-06-101-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | The sign_extend() function is unused; delete it. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw/misc/milkymist-softusb: Remove unused softusb_{read, write}_pmem()Peter Maydell2014-06-101-25/+0
| | | | | | | | | | | | | | | | | | | | | | | | The functions softusb_read_pmem() and softusb_write_pmem() are unused; remove them. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | target-i386/translate.c: Remove unused tcg_gen_lshift()Peter Maydell2014-06-101-8/+0
| | | | | | | | | | | | | | | | | | | | | The function tcg_gen_lshift() is unused; remove it. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw/isa/pc87312: Remove unused function is_parallel_epp()Peter Maydell2014-06-101-5/+0
| | | | | | | | | | | | | | | | | | | | | The function is_parallel_epp() is unused; remove it. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw/intc/openpic: Remove unused function IRQ_testbit()Peter Maydell2014-06-101-5/+0
| | | | | | | | | | | | | | | | | | | | | The IRQ_testbit() function is never used; remove it. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw/dma/xilinx_axidma: Remove unused stream_halted() functionPeter Maydell2014-06-101-5/+0
| | | | | | | | | | | | | | | | | | | | | The stream_halted() function is never used; remove it. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | util/qemu-sockets.c: Avoid unused variable warningsPeter Maydell2014-06-101-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'on' variable is never used, and 'off' is only used if IPV6_V6ONLY is defined; delete 'on' and move 'off' to the point where it is used. This avoids warnings from clang 3.4. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw/sd/sd.c: Drop unused sd_acmd_type[] arrayPeter Maydell2014-06-101-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop the sd_acmd_type[] array: it is never used. (The equivalent sd_cmd_type[] array for normal commands is used to identify those commands whose argument includes the card address in the top 16 bits; but for app commands the card address is passed with the APP_CMD prefix, not with the argument to the app command itself.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | hw/i386/pc.c: Remove unused parallel_io and parallel_irq variablesPeter Maydell2014-06-101-3/+0
| | | | | | | | | | | | | | | | | | | | | The variables parallel_io and parallel_irq are unused; delete them. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | slirp: Remove unused zero_ethaddr[] variablePeter Maydell2014-06-101-2/+0
| | | | | | | | | | | | | | | | | | | | | The zero_ethaddr[] array is never used; delete it. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | qtest: fix hex2nib for capital charactersSergey Fedorov2014-06-101-1/+1
| | | | | | | | | | | | | | | | | | | | | Signed-off-by: Sergey Fedorov <serge.fdrv@gmail.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | net: cadence_gem: Remove &desc[0] usagesPeter Crosthwaite2014-06-101-2/+2
| | | | | | | | | | | | | | | | | | | | | Just use desc instead. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | net: cadence_gem: Comment spelling sweepPeter Crosthwaite2014-06-101-6/+6
| | | | | | | | | | | | | | | | | | | | | Fix some typos in comments. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | net: cadence_gem: Add Tx descriptor fetch printfPeter Crosthwaite2014-06-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add a debug printf for TX descriptor fetching. This is helpful to anyone needing to debug TX ring buffer traversal. It is also now consistent with the RX code which has a similar printf. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
| * | net: cadence_gem: Fix Tx descriptor updatePeter Crosthwaite2014-06-101-5/+7
|/ / | | | | | | | | | | | | | | | | | | | | The local variable "desc" was being used to read-modify-write the first descriptor (of a multi-desc packet) upon packet completion. desc however continues to be used by the code as the current descriptor. Give this first desc RMW it's own local variable to avoid trampling. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
* | Merge remote-tracking branch 'remotes/kraxel/tags/pull-console-20140610-1' ↵Peter Maydell2014-06-101-13/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into staging console: two little bugfixes. # gpg: Signature made Tue 10 Jun 2014 12:01:07 BST using RSA key ID D3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" * remotes/kraxel/tags/pull-console-20140610-1: console: fix -vga none -sdl crash console: kill MAX_CONSOLES, alloc consoles dynamically Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * | console: fix -vga none -sdl crashGerd Hoffmann2014-06-101-4/+1
| | | | | | | | | | | | | | | | | | | | | Call get_alloc_displaystate() for proper initialization instead of allocating with g_new(). Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | console: kill MAX_CONSOLES, alloc consoles dynamicallyGerd Hoffmann2014-06-101-9/+4
|/ / | | | | | | Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
* | Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20140610' into stagingPeter Maydell2014-06-1010-130/+560
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several patches for s390: - bugfixes: A fix for a long-standing bug in the css code as well as a fixup for the recent I/O adapter support. - Exploitation of the userspace cmma enablement/reset interface, if it is present. - Some debuggability improvements by logging unmanageable conditions. - virtio-ccw finally gets migration support for its structures. - Some cleanup as to how floating interrupts are injected. # gpg: Signature made Tue 10 Jun 2014 08:57:56 BST using RSA key ID C6F02FAF # gpg: Can't check signature: public key not found * remotes/cohuck/tags/s390x-20140610: s390x/kvm: inject via flic s390x: cleanup interrupt injection s390x/kvm: add alternative injection interface s390x: consolidate floating interrupts s390/virtio-ccw: migration support s390x/kvm: Log unmanageable program interruptions s390x/kvm: Log unmanageable external interruptions s390x/kvm: enable/reset cmma via vm attributes s390x/kvm: make flic play well with old kernels s390x/css: handle emw correctly for tsch Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * s390x/kvm: inject via flicCornelia Huck2014-06-103-1/+29
| | | | | | | | | | | | | | | | Try to inject floating interrupts via the flic if it is available. This allows us to inject the full range of floating interrupts. Reviewed-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390x: cleanup interrupt injectionCornelia Huck2014-06-106-120/+91
| | | | | | | | | | | | | | Remove the need for a cpu to inject a floating interrupt on kvm. Acked-by: Thomas Huth <thuth@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390x/kvm: add alternative injection interfaceCornelia Huck2014-06-102-0/+88
| | | | | | | | | | | | | | | | | | | | | | Add kvm_s390_{vcpu,floating}_interrupt, which offer the possibility to inject interrupts with larger payloads (when a kvm backend becomes available). Moreover, kvm_s390_floating_interrupt() does no longer have the bogus requirement for a vcpu. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390x: consolidate floating interruptsCornelia Huck2014-06-104-40/+52
| | | | | | | | | | | | | | | | | | | | Move the injection code for all floating interrupts to interrupt.c and add a comment. Also get rid of the #ifdef CONFIG_KVM for the service interrupt. Reviewed-by: Thomas Huth <thuth@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390/virtio-ccw: migration supportJens Freimann2014-06-103-0/+208
| | | | | | | | | | | | | | | | | | This patch adds live migration support for virtio-ccw devices. It's not done with vmstate because virtio itself is not yet ported to vmstate either. Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390x/kvm: Log unmanageable program interruptionsThomas Huth2014-06-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | The kernel only drops to userspace if an endless program interrupt loop has been detected. Let's print an error message in this case to inform the user about the crash and stop the affected CPU with a panic event, just like it is already done for the external interruption loop detection. Signed-off-by: Thomas Huth <thuth@linux.vnet.ibm.com> Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390x/kvm: Log unmanageable external interruptionsThomas Huth2014-06-101-6/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Interception code 0x14 only drops to userspace when an unmanageable external interruption interception occured (e.g. if the External New PSW does not disable external interruptions). Instead of bailing out via the default handler, it is better to inform the user with a proper error message that also includes the bad PSW, and to stop the affected CPU with a panic event instead. Signed-off-by: Thomas Huth <thuth@linux.vnet.ibm.com> Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390x/kvm: enable/reset cmma via vm attributesDominik Dingel2014-06-104-0/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Exploit the new api for userspace-controlled cmma. If supported, enable cmma during kvm initialization and register a reset handler for cmma, which is also called directly from the load IPL code. The reset functionality is needed to reset the cmma state of the guest pages, e.g. if a system reset is triggered via qemu monitor; otherwise this could result in data corruption. A guest triggered reboot may now lead to multiple cmma resets; this is OK, however, as this is slowpath anyway and the simplest way to achieve the intended effects. Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
| * s390x/kvm: make flic play well with old kernelsCornelia Huck2014-06-101-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | If we run with an old kernel that does not support KVM_CAP_IRQ_ROUTING, we don't have to do anything in the ->register_io_adapter and ->io_adapter_map callbacks and therefore should return 0 instead of -ENOSYS (just as the non-kvm flic does). This fixes using adapter interrupts when running under an older kernel, which broke with "s390x: add I/O adapter registration". Reported-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
OpenPOWER on IntegriCloud