[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 57914e: memory: update comments and fix some
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] 57914e: memory: update comments and fix some typos |
Date: |
Wed, 07 Feb 2018 15:01:43 -0800 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 57914ecb069e56ca53fc97a53437bcf684f5cc13
https://github.com/qemu/qemu/commit/57914ecb069e56ca53fc97a53437bcf684f5cc13
Author: Jay Zhou <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M include/exec/memory.h
Log Message:
-----------
memory: update comments and fix some typos
Signed-off-by: Jay Zhou <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: b850f664a1dbbc1ea27bef12cd251ee5da0bfe05
https://github.com/qemu/qemu/commit/b850f664a1dbbc1ea27bef12cd251ee5da0bfe05
Author: Philippe Mathieu-Daudé <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M include/hw/qdev-core.h
Log Message:
-----------
qdev: rename typedef qdev_resetfn() -> DeviceReset()
following the DeviceRealize and DeviceUnrealize typedefs,
this unify a bit the new QOM API.
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 46795cf2e2f643ace9454822022ba8b1e9c0cf61
https://github.com/qemu/qemu/commit/46795cf2e2f643ace9454822022ba8b1e9c0cf61
Author: Philippe Mathieu-Daudé <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M hw/core/qdev.c
M include/hw/qdev-core.h
Log Message:
-----------
qdev: add helpers to be more explicit when using abstract QOM parent functions
QOM API learning curve is quite hard, in particular when devices inherit from
abstract parent.
To be more explicit about when a device class change the parent hooks, add few
helpers hoping a device class_init() will be easier to understand.
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: bf853881690db8bbd1de39e4be580310a9cb0ebc
https://github.com/qemu/qemu/commit/bf853881690db8bbd1de39e4be580310a9cb0ebc
Author: Philippe Mathieu-Daudé <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M hw/i386/kvm/i8254.c
M hw/i386/kvm/i8259.c
M hw/input/adb-kbd.c
M hw/input/adb-mouse.c
M hw/intc/arm_gic.c
M hw/intc/arm_gic_kvm.c
M hw/intc/arm_gicv3.c
M hw/intc/arm_gicv3_its_kvm.c
M hw/intc/arm_gicv3_kvm.c
M hw/intc/i8259.c
M hw/net/vmxnet3.c
M hw/pci-bridge/gen_pcie_root_port.c
M hw/scsi/vmw_pvscsi.c
M hw/timer/i8254.c
M hw/vfio/amd-xgbe.c
M hw/vfio/calxeda-xgmac.c
M hw/virtio/virtio-pci.c
M target/alpha/cpu.c
M target/arm/cpu.c
M target/cris/cpu.c
M target/hppa/cpu.c
M target/i386/cpu.c
M target/lm32/cpu.c
M target/m68k/cpu.c
M target/microblaze/cpu.c
M target/mips/cpu.c
M target/moxie/cpu.c
M target/nios2/cpu.c
M target/openrisc/cpu.c
M target/ppc/translate_init.c
M target/s390x/cpu.c
M target/sh4/cpu.c
M target/sparc/cpu.c
M target/tilegx/cpu.c
M target/tricore/cpu.c
M target/unicore32/cpu.c
M target/xtensa/cpu.c
Log Message:
-----------
qdev: use device_class_set_parent_realize/unrealize/reset()
changes generated using the following Coccinelle patch:
@@
type DeviceParentClass;
DeviceParentClass *pc;
DeviceClass *dc;
identifier parent_fn;
identifier child_fn;
@@
(
+device_class_set_parent_realize(dc, child_fn, &pc->parent_fn);
-pc->parent_fn = dc->realize;
...
-dc->realize = child_fn;
|
+device_class_set_parent_unrealize(dc, child_fn, &pc->parent_fn);
-pc->parent_fn = dc->unrealize;
...
-dc->unrealize = child_fn;
|
+device_class_set_parent_reset(dc, child_fn, &pc->parent_fn);
-pc->parent_fn = dc->reset;
...
-dc->reset = child_fn;
)
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Acked-by: David Gibson <address@hidden>
Acked-by: Cornelia Huck <address@hidden>
Reviewed-by: Laurent Vivier <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: fe29141bee3e8603a39838897698d8349c3daef0
https://github.com/qemu/qemu/commit/fe29141bee3e8603a39838897698d8349c3daef0
Author: Alexey Kardashevskiy <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M accel/kvm/kvm-all.c
M accel/kvm/trace-events
Log Message:
-----------
kvm: Add kvm_set_user_memory tracepoint
This adds a tracepoint to trace the KVM_SET_USER_MEMORY_REGION ioctl
parameters which is quite useful for debugging VFIO memory regions
being actually registered with KVM.
Signed-off-by: Alexey Kardashevskiy <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: e85687ffe2233e35864cb1c307183df29c05f622
https://github.com/qemu/qemu/commit/e85687ffe2233e35864cb1c307183df29c05f622
Author: Marcelo Tosatti <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M numa.c
Log Message:
-----------
qemu: improve hugepage allocation failure message
Improve hugepage allocation failure message, indicating
what is happening to the user.
Signed-off-by: Marcelo Tosatti <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 0b15209571e5eae706027f42da2ecd175eddc4e3
https://github.com/qemu/qemu/commit/0b15209571e5eae706027f42da2ecd175eddc4e3
Author: linzhecheng <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M memory.c
Log Message:
-----------
memory: set ioeventfd_update_pending after address_space_update_ioeventfds
We should set ioeventfd_update_pending same as memory_region_update_pending.
Signed-off-by: linzhecheng <address@hidden>
Message-Id: <address@hidden>
Cc: address@hidden
Fixes: ade9c1aac5292ff698fa550adebe794c37d86cc9
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: c6caae553c65475009dc18fdae0c89a1a1d7b427
https://github.com/qemu/qemu/commit/c6caae553c65475009dc18fdae0c89a1a1d7b427
Author: Fam Zheng <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M hw/scsi/scsi-generic.c
Log Message:
-----------
scsi-generic: Simplify error handling code
Coverity doesn't like the ignored return value introduced in
9d3b155186c278 (hw/block: Fix the return type), and other callers are
converted already in ceff3e1f01.
This one was added lately in d9bcd6f7f23a and missed the train. Do it
now.
Signed-off-by: Fam Zheng <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 4e4b57342e14f260ca6e2d4cfcbafb876d227909
https://github.com/qemu/qemu/commit/4e4b57342e14f260ca6e2d4cfcbafb876d227909
Author: Peter Xu <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M chardev/char-pty.c
Log Message:
-----------
chardev: fix incorrect unref of source
glib reported error when pty chardev used:
$ ./qemu-system-x86_64 -chardev pty,id=foo -device isa-serial,chardev=foo
qemu-system-x86_64: -chardev pty,id=foo: char device redirected to /dev/pts/2
(label foo)
(qemu-system-x86_64:27885): GLib-CRITICAL **: g_source_unref: assertion 'source
!= NULL' failed
(qemu-system-x86_64:27885): GLib-CRITICAL **: g_source_unref: assertion 'source
!= NULL' failed
This patch fixes that.
Fixes: 2c716ba150 ("chardev: introduce qemu_chr_timeout_add_ms()")
CC: Paolo Bonzini <address@hidden>
Reported-by: Marc-André Lureau <address@hidden>
Signed-off-by: Peter Xu <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 4183e2ea6d092ea9d7f18af085cb1076fae08512
https://github.com/qemu/qemu/commit/4183e2ea6d092ea9d7f18af085cb1076fae08512
Author: Greg Kurz <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M util/readline.c
Log Message:
-----------
readline: don't free completions in readline_free()
Since commit e5dc1a6c6c43, QEMU aborts on exit if completion was used
in the monitor:
*** Error in `obj/ppc64-softmmu/qemu-system-ppc64': double free or
corruption (fasttop): 0x00000100331069d0 ***
/home/greg/Work/qemu/qemu-spapr/util/readline.c:514
/home/greg/Work/qemu/qemu-spapr/monitor.c:586
/home/greg/Work/qemu/qemu-spapr/monitor.c:4125
argv=<optimized out>, envp=<optimized out>) at
/home/greg/Work/qemu/qemu-spapr/vl.c:4795
Completion strings are not persistent accross completions (why would
they?). They are allocated under readline_completion(), which already
takes care of freeing them before returning.
Maybe all completion related bits should be moved out of ReadLineState
to a dedicated structure ?
In the meantime, let's drop the offending lines from readline_free()
to fix the crash.
Signed-off-by: Greg Kurz <address@hidden>
Message-Id: <address@hidden>
Fixes: e5dc1a6c6c43
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: b90d80a73e2f546117a776e899f826e2a9eb8301
https://github.com/qemu/qemu/commit/b90d80a73e2f546117a776e899f826e2a9eb8301
Author: Greg Kurz <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M scripts/qemugdb/timers.py
Log Message:
-----------
scripts/qemu-gdb/timers.py: define encoding in header comment
This is required otherwise python complains because of the
accentuated letter in Alex's last name:
Traceback (most recent call last):
File "scripts/qemu-gdb.py", line 29, in <module>
from qemugdb import aio, mtree, coroutine, tcg, timers
File "scripts/qemugdb/timers.py", line 1
SyntaxError: Non-ASCII character '\xc3' in file scripts/qemugdb/timers.py
on line 1, but no encoding declared;
see http://www.python.org/peps/pep-0263.html for details
Signed-off-by: Greg Kurz <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 9d70618c6842570226866f9409d7b8c4d6489da6
https://github.com/qemu/qemu/commit/9d70618c6842570226866f9409d7b8c4d6489da6
Author: Peter Maydell <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M include/exec/memory-internal.h
Log Message:
-----------
memory-internal.h: Remove obsolete claim that header is obsolete
The memory-internal.h header claims that it is for "obsolete
exec.c functions" which "will be removed soon". This statement
was added in 2011, six years ago, but the header is still here.
(Admittedly none of the prototypes added in commit 67d95c153bef55f6
are still in the header.)
It's convenient to have a place to put prototypes for functions
which are used internally to the various .c files of the memory
system or by the accel/tcg code, which is inevitably fairly
closely coupled. So keep the header but update the comments to
reflect what we're actually using it for.
Signed-off-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 50876ead08531686275e6fe1999a2d80c7450d67
https://github.com/qemu/qemu/commit/50876ead08531686275e6fe1999a2d80c7450d67
Author: Thomas Huth <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M default-configs/arm-softmmu.mak
M default-configs/i386-softmmu.mak
M default-configs/mips-softmmu-common.mak
M default-configs/ppc-softmmu.mak
M default-configs/ppcemb-softmmu.mak
M default-configs/x86_64-softmmu.mak
M hw/i2c/Makefile.objs
M hw/nvram/Makefile.objs
Log Message:
-----------
i2c: Add a CONFIG_I2C master switch to the configuration files
The i2c core and the at24c EEPROM should only be compiled and linked
on the machines that support i2c. Otherwise it's quite strange to see
the at24c-eeprom to be "available" on qemu-system-s390x for example.
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: d781e24d05dfc7737af577ad9f03e9064015c337
https://github.com/qemu/qemu/commit/d781e24d05dfc7737af577ad9f03e9064015c337
Author: Izik Eidus <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M target/i386/hvf/hvf.c
M target/i386/hvf/vmx.h
Log Message:
-----------
Add missing hvdos public domain attribution:
hvf.c and vmx.h contain code from hvdos.c that is released as public domain:
from hvdos github: https://github.com/mist64/hvdos
"License
See LICENSE.txt (2-clause-BSD).
In order to simplify use of this code as a template, you can consider any parts
from "hvdos.c" and "interface.h" as being in the public domain."
Signed-off-by: Izik Eidus <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 4d98a8e5ecfc6b26c8b5d79feb25a3d0330638c5
https://github.com/qemu/qemu/commit/4d98a8e5ecfc6b26c8b5d79feb25a3d0330638c5
Author: Paolo Bonzini <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M target/i386/hvf/hvf.c
Log Message:
-----------
hvf: ept_emulation_fault() needs NetApp BSD attribution
Add the BSD license there.
Reported-by: Izik Eidus <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: b1cef6d02f84bd842fb94a6109ad4e2ad873e8e5
https://github.com/qemu/qemu/commit/b1cef6d02f84bd842fb94a6109ad4e2ad873e8e5
Author: Peter Maydell <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M accel/tcg/user-exec.c
M configure
M include/qemu/processor.h
M include/qemu/timer.h
M linux-user/syscall.c
Log Message:
-----------
Drop remaining bits of ia64 host support
We dropped support for ia64 host CPUs in the 2.11 release (removing
the TCG backend for it, and advertising the support as being
completely removed in the changelog). However there are a few bits
and pieces of code still floating about. Remove those, too.
We can drop the check in configure for "ia64 or hppa host?"
entirely, because we don't support hppa hosts either any more.
Signed-off-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 3e32370a96d2ad82839d97e7e622bca793de8af5
https://github.com/qemu/qemu/commit/3e32370a96d2ad82839d97e7e622bca793de8af5
Author: Daniel P. Berrange <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M util/qemu-sockets.c
Log Message:
-----------
sockets: fix parsing of ipv4/ipv6 opts in parse_socket_addr
The inet_parse() function looks for 'ipv4' and 'ipv6' flags, but only
treats them as bare bool flags. The normal QemuOpts parsing would allow
on/off values to be set too.
This updates inet_parse() so that its handling of the 'ipv4' and 'ipv6'
flags matches that done by QemuOpts.
This impacts the NBD block driver parsing the legacy filename syntax and
the migration code parsing the socket scheme.
Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 6c549dc14113a8a389ef6cf8c9078df66e208ebd
https://github.com/qemu/qemu/commit/6c549dc14113a8a389ef6cf8c9078df66e208ebd
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-05 (Mon, 05 Feb 2018)
Changed paths:
M hw/display/exynos4210_fimd.c
Log Message:
-----------
exynos4210: workaround UBSAN compilation error
gcc 5.4.0-6ubuntu1~16.04.5 build with UBSAN enabled error:
CC hw/display/exynos4210_fimd.o
/home/petmay01/linaro/qemu-for-merges/hw/display/exynos4210_fimd.c: In
function ‘fimd_get_buffer_id’:
/home/petmay01/linaro/qemu-for-merges/hw/display/exynos4210_fimd.c:1105:5:
error: case label does not reduce to an integer constant
case FIMD_WINCON_BUF2_STAT:
Because FIMD_WINCON_BUF2_STAT case contains an integer
overflow, use U suffix to get the unsigned type.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 247724cb302af5d70c8853154b640dfabf2bbb56
https://github.com/qemu/qemu/commit/247724cb302af5d70c8853154b640dfabf2bbb56
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M configure
Log Message:
-----------
build-sys: add --enable-sanitizers
Typical slowdown introduced by AddressSanitizer is 2x.
UBSan shouldn't have much impact on runtime cost.
Enable it by default when --enable-debug, unless --disable-sanitizers.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: d83414e1fd1941ca8228b5cf6a06697bd1ff7f83
https://github.com/qemu/qemu/commit/d83414e1fd1941ca8228b5cf6a06697bd1ff7f83
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M .travis.yml
M configure
M include/qemu/compiler.h
M util/coroutine-ucontext.c
Log Message:
-----------
ucontext: annotate coroutine stack for ASAN
It helps ASAN to detect more leaks on coroutine stacks, and to get rid
of some extra warnings.
Before:
tests/test-coroutine -p
/basic/lifecycle
/basic/lifecycle: ==20781==WARNING: ASan doesn't fully support
makecontext/swapcontext functions and may produce false positives in
some cases!
==20781==WARNING: ASan is ignoring requested __asan_handle_no_return:
stack top: 0x7ffcb184d000; bottom 0x7ff6c4cfd000; size: 0x0005ecb50000
(25446121472)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
OK
After:
tests/test-coroutine -p /basic/lifecycle
/basic/lifecycle: ==21110==WARNING: ASan doesn't fully support
makecontext/swapcontext functions and may produce false positives in
some cases!
OK
A similar work would need to be done for sigaltstack & windows fibers
to have similar coverage. Since ucontext is preferred, I didn't bother
checking the other coroutine implementations for now.
Update travis to fix the build with ASAN annotations.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 0750b060216de69ed1f14bc08181bf4ad27fc622
https://github.com/qemu/qemu/commit/0750b060216de69ed1f14bc08181bf4ad27fc622
Author: Peter Xu <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/virtio/trace-events
M hw/virtio/vhost.c
Log Message:
-----------
vhost: add traces for memory listeners
Trace these operations on two memory listeners. It helps to verify the
new memory listener fix, and good to keep them there.
Signed-off-by: Peter Xu <address@hidden>
Message-Id: <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 0bbe435410c37c230c6e7bd926931a13810816e2
https://github.com/qemu/qemu/commit/0bbe435410c37c230c6e7bd926931a13810816e2
Author: Peter Xu <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M target/arm/kvm.c
Log Message:
-----------
arm: postpone device listener unregister
It's a preparation for follow-up patch to call region_del() in
memory_listener_unregister(), otherwise all device addr attached with
kvm_devices_head will be reset before calling kvm_arm_set_device_addr.
Signed-off-by: Peter Xu <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 369686267a4612d4000a1b67720c7f0aedd27539
https://github.com/qemu/qemu/commit/369686267a4612d4000a1b67720c7f0aedd27539
Author: Peter Xu <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/vfio/common.c
Log Message:
-----------
vfio: listener unregister before unset container
After next patch, listener unregister will need the container to be
alive. Let's move this unregister phase to be before unset container,
since that operation will free the backend container in kernel,
otherwise we'll get these after next patch:
qemu-system-x86_64: VFIO_UNMAP_DMA: -22
qemu-system-x86_64: vfio_dma_unmap(0x559bf53a4590, 0x0, 0xa0000) = -22 (Invalid
argument)
Signed-off-by: Peter Xu <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Acked-by: Alex Williamson <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: d25836cafd7508090d211e97acfc0abc5ae88daa
https://github.com/qemu/qemu/commit/d25836cafd7508090d211e97acfc0abc5ae88daa
Author: Peter Xu <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/virtio/vhost.c
M memory.c
Log Message:
-----------
memory: do explicit cleanup when remove listeners
When unregister memory listeners, we should call, e.g.,
region_del() (and possibly other undo operations) on every existing
memory region sections there, otherwise we may leak resources that are
held during the region_add(). This patch undo the stuff for the
listeners, which emulates the case when the address space is set from
current to an empty state.
I found this problem when debugging a refcount leak issue that leads to
a device unplug event lost (please see the "Bug:" line below). In that
case, the leakage of resource is the PCI BAR memory region refcount.
And since memory regions are not keeping their own refcount but onto
their owners, so the vfio-pci device's (who is the owner of the PCI BAR
memory regions) refcount is leaked, and event missing.
We had encountered similar issues before and fixed in other
way (ee4c112846, "vhost: Release memory references on cleanup"). This
patch can be seen as a more high-level fix of similar problems that are
caused by the resource leaks from memory listeners. So now we can remove
the explicit unref of memory regions since that'll be done altogether
during unregistering of listeners now.
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1531393
Signed-off-by: Peter Xu <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: a8aa6197a2aec4ca4ef5a4fdd8a39216e7f42da6
https://github.com/qemu/qemu/commit/a8aa6197a2aec4ca4ef5a4fdd8a39216e7f42da6
Author: Klim Kireev <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M chardev/char-socket.c
Log Message:
-----------
chardev/char-socket: add POLLHUP handler
The following behavior was observed for QEMU configured by libvirt
to use guest agent as usual for the guests without virtio-serial
driver (Windows or the guest remaining in BIOS stage).
In QEMU on first connect to listen character device socket
the listen socket is removed from poll just after the accept().
virtio_serial_guest_ready() returns 0 and the descriptor
of the connected Unix socket is removed from poll and it will
not be present in poll() until the guest will initialize the driver
and change the state of the serial to "guest connected".
In libvirt connect() to guest agent is performed on restart and
is run under VM state lock. Connect() is blocking and can
wait forever.
In this case libvirt can not perform ANY operation on that VM.
The bug can be easily reproduced this way:
Terminal 1:
qemu-system-x86_64 -m 512 -device pci-serial,chardev=serial1 -chardev
socket,id=serial1,path=/tmp/console.sock,server,nowait
(virtio-serial and isa-serial also fit)
Terminal 2:
minicom -D unix\#/tmp/console.sock
(type something and press enter)
C-a x (to exit)
Do 3 times:
minicom -D unix\#/tmp/console.sock
C-a x
It needs 4 connections, because the first one is accepted by QEMU, then two are
queued by
the kernel, and the 4th blocks.
The problem is that QEMU doesn't add a read watcher after succesful read
until the guest device wants to acquire recieved data, so
I propose to install a separate pullhup watcher regardless of
whether the device waits for data or not.
Signed-off-by: Klim Kireev <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: e6a354be6ea0a52f5921f230a91518625247af82
https://github.com/qemu/qemu/commit/e6a354be6ea0a52f5921f230a91518625247af82
Author: Ladi Prosek <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/misc/ivshmem.c
Log Message:
-----------
ivshmem: Don't update non-existent MSI routes
As of commit 660c97eef6f8 ("ivshmem: use kvm irqfd for msi notifications"),
QEMU crashes with:
kvm_irqchip_commit_routes: Assertion `ret == 0' failed.
if the ivshmem device is configured with more vectors than what the server
supports. This is caused by the ivshmem_vector_unmask() being called on
vectors that have not been initialized by ivshmem_add_kvm_msi_virq().
This commit fixes it by adding a simple check to the mask and unmask
callbacks.
Note that the opposite mismatch, if the server supplies more vectors than
what the device is configured for, is already handled and leads to output
like:
Too many eventfd received, device has 1 vectors
To reproduce the assert, run:
ivshmem-server -n 0
and QEMU with:
-device ivshmem-doorbell,chardev=iv
-chardev socket,path=/tmp/ivshmem_socket,id=iv
then load the Windows driver, at the time of writing available at:
https://github.com/virtio-win/kvm-guest-drivers-windows/tree/master/ivshmem
The issue is believed to have been masked by other guest drivers, notably
Linux ones, not enabling MSI-X on the device.
Fixes: 660c97eef6f8 ("ivshmem: use kvm irqfd for msi notifications")
Signed-off-by: Ladi Prosek <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 089fd80376196adc0274a53eb9729c3ef7ee5ae7
https://github.com/qemu/qemu/commit/089fd80376196adc0274a53eb9729c3ef7ee5ae7
Author: Ladi Prosek <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/misc/ivshmem.c
Log Message:
-----------
ivshmem: Always remove irqfd notifiers
As of commit 660c97eef6f8 ("ivshmem: use kvm irqfd for msi notifications"),
QEMU crashes with:
ivshmem: msix_set_vector_notifiers failed
msix_unset_vector_notifiers: Assertion `dev->msix_vector_use_notifier &&
dev->msix_vector_release_notifier' failed.
if MSI-X is repeatedly enabled and disabled on the ivshmem device, for example
by loading and unloading the Windows ivshmem driver. This is because
msix_unset_vector_notifiers() doesn't call any of the release notifier callbacks
since MSI-X is already disabled at that point (msix_enabled() returning false
is how this transition is detected in the first place). Thus
ivshmem_vector_mask()
doesn't run and when MSI-X is subsequently enabled again ivshmem_vector_unmask()
fails.
This is fixed by keeping track of unmasked vectors and making sure that
ivshmem_vector_mask() always runs on MSI-X disable.
Fixes: 660c97eef6f8 ("ivshmem: use kvm irqfd for msi notifications")
Signed-off-by: Ladi Prosek <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 0b88dd942073e7e65f095551d60be5dc0c8e1413
https://github.com/qemu/qemu/commit/0b88dd942073e7e65f095551d60be5dc0c8e1413
Author: Ladi Prosek <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/misc/ivshmem.c
Log Message:
-----------
ivshmem: Improve MSI irqfd error handling
Adds a rollback path to ivshmem_enable_irqfd() and fixes
ivshmem_disable_irqfd() to bail if irqfd has not been enabled.
To reproduce, run:
ivshmem-server -n 0
and QEMU with:
-device ivshmem-doorbell,chardev=iv
-chardev socket,path=/tmp/ivshmem_socket,id=iv
then load, unload, and load again the Windows driver, at the time of writing
available at:
https://github.com/virtio-win/kvm-guest-drivers-windows/tree/master/ivshmem
The issue is believed to have been masked by other guest drivers, notably
Linux ones, not enabling MSI-X on the device.
Signed-off-by: Ladi Prosek <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: a40227911c4cac4ac2551c57058d220baae4e91f
https://github.com/qemu/qemu/commit/a40227911c4cac4ac2551c57058d220baae4e91f
Author: Ladi Prosek <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/misc/ivshmem.c
Log Message:
-----------
ivshmem: Disable irqfd on device reset
The effects of ivshmem_enable_irqfd() was not undone on device reset.
This manifested as:
ivshmem_add_kvm_msi_virq: Assertion `!s->msi_vectors[vector].pdev' failed.
when irqfd was enabled before reset and then enabled again after reset, making
ivshmem_enable_irqfd() run for the second time.
To reproduce, run:
ivshmem-server
and QEMU with:
-device ivshmem-doorbell,chardev=iv
-chardev socket,path=/tmp/ivshmem_socket,id=iv
then install the Windows driver, at the time of writing available at:
https://github.com/virtio-win/kvm-guest-drivers-windows/tree/master/ivshmem
and crash-reboot the guest by inducing a BSOD.
Signed-off-by: Ladi Prosek <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 9857c2d2f7fb09fe37d7a72b004b1f7bcf70248c
https://github.com/qemu/qemu/commit/9857c2d2f7fb09fe37d7a72b004b1f7bcf70248c
Author: Paolo Bonzini <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M cpus.c
Log Message:
-----------
cpus: hax: register/unregister thread with RCU, exit loop on unplug
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 57615ed56c005ba0405420eb871f85fa1e5e563b
https://github.com/qemu/qemu/commit/57615ed56c005ba0405420eb871f85fa1e5e563b
Author: Paolo Bonzini <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M cpus.c
Log Message:
-----------
cpus: kvm: unregister thread with RCU
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: d2831ab065765c8af13a5bb42627150323a96662
https://github.com/qemu/qemu/commit/d2831ab065765c8af13a5bb42627150323a96662
Author: Paolo Bonzini <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M cpus.c
Log Message:
-----------
cpus: dummy: unregister thread with RCU, exit loop on unplug
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 9b0605f9837b68fd56c7fc7c96a3a1a3b983687d
https://github.com/qemu/qemu/commit/9b0605f9837b68fd56c7fc7c96a3a1a3b983687d
Author: Paolo Bonzini <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M cpus.c
Log Message:
-----------
cpus: tcg: unregister thread with RCU, fix exiting of loop on unplug
Keep running until cpu_can_run(cpu) becomes false, for consistency
with other acceslerators.
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 8178e6376f311a5691ab6122e15863faa9a1f008
https://github.com/qemu/qemu/commit/8178e6376f311a5691ab6122e15863faa9a1f008
Author: Paolo Bonzini <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M cpus.c
Log Message:
-----------
cpus: hvf: unregister thread with RCU
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: dbadee4ff4a02d4b4cc138dd63b769b1d9391896
https://github.com/qemu/qemu/commit/dbadee4ff4a02d4b4cc138dd63b769b1d9391896
Author: Paolo Bonzini <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M cpus.c
Log Message:
-----------
cpus: join thread when removing a vCPU
If no one joins the thread, its associated memory is leaked.
Reported-by: CheneyLin <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 0f2956f9159e4aecc9f4de6b8412a1d1ac5a2da0
https://github.com/qemu/qemu/commit/0f2956f9159e4aecc9f4de6b8412a1d1ac5a2da0
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M hw/virtio/vhost.c
M include/qemu/memfd.h
M util/memfd.c
Log Message:
-----------
memfd: add error argument, instead of perror()
This will allow callers to silence error report when the call is
allowed to failed.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: c5b2a9e0782c54402b3e06afd14b4c1de9efba8f
https://github.com/qemu/qemu/commit/c5b2a9e0782c54402b3e06afd14b4c1de9efba8f
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M include/qemu/memfd.h
M util/memfd.c
Log Message:
-----------
memfd: add hugetlb support
Linux commit 749df87bd7bee5a79cef073f5d032ddb2b211de8 (v4.14-rc1)
added a new flag MFD_HUGETLB to memfd_create() that specify the file
to be created resides in the hugetlbfs filesystem. This is the
generic hugetlbfs filesystem not associated with any specific mount
point.
hugetlbfs does not support sealing operations in v4.14, therefore
specifying MFD_ALLOW_SEALING with MFD_HUGETLB will result in EINVAL.
However, I added sealing support in "[PATCH v3 0/9] memfd: add sealing
to hugetlb-backed memory" series, queued in -mm tree for v4.16.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 2ef8c0c99be7ee5b9dbceaae41b8890e7c81240f
https://github.com/qemu/qemu/commit/2ef8c0c99be7ee5b9dbceaae41b8890e7c81240f
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M include/qemu/memfd.h
M util/memfd.c
Log Message:
-----------
memfd: add hugetlbsize argument
Learn to specificy hugetlb size as qemu_memfd_create() argument.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: dbb9e0f40d7d561dcffcf7e41ac9f6a5ec90e5b5
https://github.com/qemu/qemu/commit/dbb9e0f40d7d561dcffcf7e41ac9f6a5ec90e5b5
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M backends/Makefile.objs
A backends/hostmem-memfd.c
M qemu-options.hx
Log Message:
-----------
Add memfd based hostmem
Add a new memory backend, similar to hostmem-file, except that it
doesn't need to create files. It also enforces memory sealing.
This backend is mainly useful for sharing the memory with other
processes.
Note that Linux supports transparent huge-pages of shmem/memfd memory
since 4.8. It is relatively easier to set up THP than a dedicate
hugepage mount point by using "madvise" in
/sys/kernel/mm/transparent_hugepage/shmem_enabled.
Since 4.14, memfd allows to set hugetlb requirement explicitly.
Pending for merge in 4.16 is memfd sealing support for hugetlb backed
memory.
Usage:
-object memory-backend-memfd,id=mem1,size=1G
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 7a9ec6541be5a3e70e9760811601454a92e0f4bb
https://github.com/qemu/qemu/commit/7a9ec6541be5a3e70e9760811601454a92e0f4bb
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M tests/vhost-user-test.c
Log Message:
-----------
tests: keep compiling failing vhost-user tests
Let's protect the failing tests under a QTEST_VHOST_USER_FIXME
environment variable, so we keep compiling the tests and we can easily
run them.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 83265145a4f42a38f10bad0051e3a8229f19c166
https://github.com/qemu/qemu/commit/83265145a4f42a38f10bad0051e3a8229f19c166
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M tests/vhost-user-test.c
Log Message:
-----------
vhost-user-test: make read-guest-mem setup its own qemu
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 7e49f5e8e508ed020c96798b3f7083e24e0e425b
https://github.com/qemu/qemu/commit/7e49f5e8e508ed020c96798b3f7083e24e0e425b
Author: Marc-André Lureau <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M tests/vhost-user-test.c
Log Message:
-----------
tests: use memfd in vhost-user-test
This will exercise the memfd memory backend and should generally be
better for testing than memory-backend-file (thanks to anonymous files
and sealing).
If memfd is available, it is preferred.
However, in order to check that file & memfd backends both work
correctly, the read-guest-mem test is checked explicitly for each.
Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 8f6d701044bc87197aac8aa2a627d70ce8471726
https://github.com/qemu/qemu/commit/8f6d701044bc87197aac8aa2a627d70ce8471726
Author: Klim Kireev <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M tests/test-filter-redirector.c
Log Message:
-----------
tests/test-filter-redirector: move close()
Since we have separate handler on POLLHUP, which drops data
after closing the connection we need to fix this test, because
it sends data and instantly close the socket creating race condition.
In some cases on other end of socket client closes it faster than
reads data. To prevent it I suggest to close socket after recieving.
Signed-off-by: Klim Kireev <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: d661d9a42bdbe25013eac9bbf1341c159fade09a
https://github.com/qemu/qemu/commit/d661d9a42bdbe25013eac9bbf1341c159fade09a
Author: Justin Terry (VM) <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M configure
M qemu-options.hx
Log Message:
-----------
Add the Windows Hypervisor Platform accelerator.
Introduces the configure support for the new Windows Hypervisor Platform that
allows for hypervisor acceleration from usermode components on the Windows
platform.
Signed-off-by: Justin Terry (VM) <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 29b22c79bcacce7839209c7344948e8c305fa2d3
https://github.com/qemu/qemu/commit/29b22c79bcacce7839209c7344948e8c305fa2d3
Author: Justin Terry (VM) <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M accel/stubs/Makefile.objs
A accel/stubs/whpx-stub.c
A include/sysemu/whpx.h
Log Message:
-----------
Add the WHPX vcpu API
Adds support for the Windows Hypervisor Platform accelerator (WHPX) stubs and
introduces the whpx.h sysemu API for managing the vcpu scheduling and
management.
Signed-off-by: Justin Terry (VM) <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 812d49f2a3eed1f53d5a922461e81ea7e3581dd5
https://github.com/qemu/qemu/commit/812d49f2a3eed1f53d5a922461e81ea7e3581dd5
Author: Justin Terry (VM) <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M target/i386/Makefile.objs
A target/i386/whpx-all.c
Log Message:
-----------
Introduce the WHPX impl
Implements the Windows Hypervisor Platform accelerator (WHPX) target. Which
acts as a hypervisor accelerator for QEMU on the Windows platform. This enables
QEMU much greater speed over the emulated x86_64 path's that are taken on
Windows today.
1. Adds support for vPartition management.
2. Adds support for vCPU management.
3. Adds support for MMIO/PortIO.
4. Registers the WHPX ACCEL_CLASS.
Signed-off-by: Justin Terry (VM) <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 19306806ae30b7fb5fe61a9130c6995402acad00
https://github.com/qemu/qemu/commit/19306806ae30b7fb5fe61a9130c6995402acad00
Author: Justin Terry (VM) <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M cpus.c
M include/sysemu/hw_accel.h
M target/i386/helper.c
Log Message:
-----------
Add the WHPX acceleration enlightenments
Implements the WHPX accelerator cpu enlightenments to actually use the whpx-all
accelerator on Windows platforms.
Signed-off-by: Justin Terry (VM) <address@hidden>
Message-Id: <address@hidden>
[Register/unregister VCPU thread with RCU. - Paolo]
Signed-off-by: Paolo Bonzini <address@hidden>
Commit: 7b213bb4755dc99e447c19c532768ef5105b9771
https://github.com/qemu/qemu/commit/7b213bb4755dc99e447c19c532768ef5105b9771
Author: Peter Maydell <address@hidden>
Date: 2018-02-07 (Wed, 07 Feb 2018)
Changed paths:
M .travis.yml
M accel/kvm/kvm-all.c
M accel/kvm/trace-events
M accel/stubs/Makefile.objs
A accel/stubs/whpx-stub.c
M accel/tcg/user-exec.c
M backends/Makefile.objs
A backends/hostmem-memfd.c
M chardev/char-pty.c
M chardev/char-socket.c
M configure
M cpus.c
M default-configs/arm-softmmu.mak
M default-configs/i386-softmmu.mak
M default-configs/mips-softmmu-common.mak
M default-configs/ppc-softmmu.mak
M default-configs/ppcemb-softmmu.mak
M default-configs/x86_64-softmmu.mak
M hw/core/qdev.c
M hw/display/exynos4210_fimd.c
M hw/i2c/Makefile.objs
M hw/i386/kvm/i8254.c
M hw/i386/kvm/i8259.c
M hw/input/adb-kbd.c
M hw/input/adb-mouse.c
M hw/intc/arm_gic.c
M hw/intc/arm_gic_kvm.c
M hw/intc/arm_gicv3.c
M hw/intc/arm_gicv3_its_kvm.c
M hw/intc/arm_gicv3_kvm.c
M hw/intc/i8259.c
M hw/misc/ivshmem.c
M hw/net/vmxnet3.c
M hw/nvram/Makefile.objs
M hw/pci-bridge/gen_pcie_root_port.c
M hw/scsi/scsi-generic.c
M hw/scsi/vmw_pvscsi.c
M hw/timer/i8254.c
M hw/vfio/amd-xgbe.c
M hw/vfio/calxeda-xgmac.c
M hw/vfio/common.c
M hw/virtio/trace-events
M hw/virtio/vhost.c
M hw/virtio/virtio-pci.c
M include/exec/memory-internal.h
M include/exec/memory.h
M include/hw/qdev-core.h
M include/qemu/compiler.h
M include/qemu/memfd.h
M include/qemu/processor.h
M include/qemu/timer.h
M include/sysemu/hw_accel.h
A include/sysemu/whpx.h
M linux-user/syscall.c
M memory.c
M numa.c
M qemu-options.hx
M scripts/qemugdb/timers.py
M target/alpha/cpu.c
M target/arm/cpu.c
M target/arm/kvm.c
M target/cris/cpu.c
M target/hppa/cpu.c
M target/i386/Makefile.objs
M target/i386/cpu.c
M target/i386/helper.c
M target/i386/hvf/hvf.c
M target/i386/hvf/vmx.h
A target/i386/whpx-all.c
M target/lm32/cpu.c
M target/m68k/cpu.c
M target/microblaze/cpu.c
M target/mips/cpu.c
M target/moxie/cpu.c
M target/nios2/cpu.c
M target/openrisc/cpu.c
M target/ppc/translate_init.c
M target/s390x/cpu.c
M target/sh4/cpu.c
M target/sparc/cpu.c
M target/tilegx/cpu.c
M target/tricore/cpu.c
M target/unicore32/cpu.c
M target/xtensa/cpu.c
M tests/test-filter-redirector.c
M tests/vhost-user-test.c
M util/coroutine-ucontext.c
M util/memfd.c
M util/qemu-sockets.c
M util/readline.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging
* socket option parsing fix (Daniel)
* SCSI fixes (Fam)
* Readline double-free fix (Greg)
* More HVF attribution fixes (Izik)
* WHPX (Windows Hypervisor Platform Extensions) support (Justin)
* POLLHUP handler (Klim)
* ivshmem fixes (Ladi)
* memfd memory backend (Marc-André)
* improved error message (Marcelo)
* Memory fixes (Peter Xu, Zhecheng)
* Remove obsolete code and comments (Peter M.)
* qdev API improvements (Philippe)
* Add CONFIG_I2C switch (Thomas)
# gpg: Signature made Wed 07 Feb 2018 15:24:08 GMT
# gpg: using RSA key BFFBD25F78C7AE83
# gpg: Good signature from "Paolo Bonzini <address@hidden>"
# gpg: aka "Paolo Bonzini <address@hidden>"
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1
# Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83
* remotes/bonzini/tags/for-upstream: (47 commits)
Add the WHPX acceleration enlightenments
Introduce the WHPX impl
Add the WHPX vcpu API
Add the Windows Hypervisor Platform accelerator.
tests/test-filter-redirector: move close()
tests: use memfd in vhost-user-test
vhost-user-test: make read-guest-mem setup its own qemu
tests: keep compiling failing vhost-user tests
Add memfd based hostmem
memfd: add hugetlbsize argument
memfd: add hugetlb support
memfd: add error argument, instead of perror()
cpus: join thread when removing a vCPU
cpus: hvf: unregister thread with RCU
cpus: tcg: unregister thread with RCU, fix exiting of loop on unplug
cpus: dummy: unregister thread with RCU, exit loop on unplug
cpus: kvm: unregister thread with RCU
cpus: hax: register/unregister thread with RCU, exit loop on unplug
ivshmem: Disable irqfd on device reset
ivshmem: Improve MSI irqfd error handling
...
Signed-off-by: Peter Maydell <address@hidden>
# Conflicts:
# cpus.c
Compare: https://github.com/qemu/qemu/compare/17a5bbb44df9...7b213bb4755d
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] 57914e: memory: update comments and fix some typos,
GitHub <=