- Jun 19, 2014
-
-
Wanlong Gao authored
Signed-off-by:
Wanlong Gao <gaowanlong@cn.fujitsu.com> Reviewed-by:
Eduardo Habkost <ehabkost@redhat.com> Signed-off-by:
Paolo Bonzini <pbonzini@redhat.com> Signed-off-by:
Hu Tao <hutao@cn.fujitsu.com> Signed-off-by:
Blue Swirl <blauwirbel@gmail.com> Signed-off-by:
Andre Przywara <andre.przywara@amd.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Acked-by:
Michael S. Tsirkin <mst@redhat.com> MST: comment tweaks
-
Michael S. Tsirkin authored
This test needs a bit more work: issues have been found on legacy systems, disable it for now to avoid false positives for people. Will re-enable after issues are addressed. Reported-by:
Igor Mammedov <imammedo@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
This test creates a 'server' chardev to listen for vhost-user messages. Once VHOST_USER_SET_MEM_TABLE is received it mmaps each received region, and read 1k bytes from it. The read data is compared to data from readl. The test requires hugetlbfs to be already mounted and writable. The mount point defaults to '/hugetlbfs' and can be specified via the environment variable QTEST_HUGETLBFS_PATH. The rom pc-bios/pxe-virtio.rom is used to instantiate a virtio pcicontroller. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> MST: fix up coding style MST: disable vhost test temporarily This test needs a bit more work: issues have been found on legacy systems, disable it for now to avoid false positives for people. Will re-enable after issues are addressed. Reported-by:
Igor Mammedov <imammedo@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
chardev depends on lots of external symbols that are not necessarily needed to be able to use, for example, 'socket chardev'. So add stubs for these functions: - bdrv_commit_all - qemu_chr_open_msmouse - is_daemonized - qemu_add_machine_init_done_notifier - monitor_init - qemu_notify_event - vc_init and this array: - serial_hds Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
This document describes the basic message format used by vhost-user for communication over a unix domain socket. The protocol is based on the existing ioctl interface used for the kernel version of vhost. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
The supplied chardev id will be inspected for supported options. Only a socket backend, with a set path (i.e. a Unix socket) and optionally the server parameter set, will be allowed. Other options (nowait, telnet) will make the chardev unusable and the netdev will not be initialised. Additional checks for validity: - requires `-numa node,memdev=..` - requires `-device virtio-net-*` The `vhostforce` option is used to force vhost-net when we deal with non-MSIX guests. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Acked-by:
Luiz Capitulino <lcapitulino@redhat.com> Reviewed-by:
Eric Blake <eblake@redhat.com>
-
Nikolay Nikolaev authored
Add a new QEMU netdev backend that is intended to invoke vhost_net with the vhost-user backend. It uses an Unix socket chardev to establish a communication with the 'slave' (client and server mode supported). At runtime the netdev will handle OPEN/CLOSE events from the chardev. Upon disconnection it will set link_down accordingly and notify virtio-net; the virtio-net interface will go down. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
Handle the feature bits negotiation when using vhost-user. Allow the underlying implementation to have a finer control over all the bits except the VIRTIO_NET_F_MAC. Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
The initialization takes a chardev backed by a unix domain socket. It should implement qemu_fe_set_msgfds in order to be able to pass file descriptors to the remote process. Each ioctl request of vhost-kernel has a vhost-user message equivalent, which is sent over the control socket. The general approach is to copy the data from the supplied argument pointer to a designated field in the message. If a file descriptor is to be passed it will be placed in the fds array for inclusion in the sendmsg control header. VHOST_SET_MEM_TABLE ignores the supplied vhost_memory structure and scans the global ram_list for ram blocks with a valid fd field set. This would be set when the '-object memory-file' option with share=on property is used. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
Use vhost_set_backend_type to initialise a proper vhost_ops structure. In vhost_net_init and vhost_net_start_one call conditionally TAP related initialisation depending on the vhost backend type. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
Decouple vhost from the Linux kernel by introducing vhost_ops. The intention is to provide different backends - a 'kernel' backend based on the ioctl interface, and an 'user' backend based on a UNIX domain socket and shared memory interface. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
vhost_dev_init will replace devfd and devpath with a single opaque argument. This is initialised with a file descriptor. When TAP is used (through vhost_net), open /dev/vhost-net and pass the fd as an opaque parameter in VhostNetOptions. The same applies to vhost-scsi - open /dev/vhost-scsi and pass the fd. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
This decouples virtio-net from the TAP netdev backend and allows support for other backends to be implemented. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
The poll callback needs to be called when bringing up or down the vhost_net instance. As it is not mandatory for an NetClient to implement it, invoke it only when it is set. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
Generalize the features get/ack to be used for both vhost-net and vhost-scsi. In vhost-net add vhost_net_get_feature_bits to select the feature bit set depending on the NetClient kind. Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
This is used to detect that the remote end has disconnected. Just call tcp_char_disconnect on receiving this event. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
This extends the existing qemu_chr_fe_get_msgfd by allowing to read a set of fds. The function for receiving the fds - unix_process_msgfd is extended to allocate the needed array size. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
This will set an array of file descriptors to the internal structures. The next time a message is send the array will be send as ancillary data. This feature works on the UNIX domain socket backend only. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
This function will attempt to read data from the chardev trying to fill the buffer up to the given length. Add tcp_chr_disconnect to reuse disconnection code where needed. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
Add a function to check if the eventfd capability is present in KVM in the host kernel. Signed-off-by:
Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Acked-by:
Paolo Bonzini <pbonzini@redhat.com>
-
Jason Wang authored
It's hard to track all mac addresses and their configurations (e.g vlan or ipv6) in qemu. Without this information, it's impossible to build proper garp packet after migration. The only possible solution to this is let guest (who knows all configurations) to do this. So, this patch introduces a new readonly config status bit of virtio-net, VIRTIO_NET_S_ANNOUNCE which is used to notify guest to announce presence of its link through config update interrupt.When guest has done the announcement, it should ack the notification through VIRTIO_NET_CTRL_ANNOUNCE_ACK cmd. This feature is negotiated by a new feature bit VIRTIO_NET_F_ANNOUNCE (which has already been supported by Linux guest). During load, a counter of announcing rounds is set so that after the vm is running it can trigger rounds of config interrupts to notify the guest to build and send the correct garps. Cc: Liuyongan <liuyongan@huawei.com> Cc: Amos Kong <akong@redhat.com> Signed-off-by:
Jason Wang <jasowang@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Jason Wang authored
This patch introduces self_announce_delay() to calculate the delay for the next announce round. This could be used by other device e.g virtio-net who wants to do announcing by itself. Signed-off-by:
Jason Wang <jasowang@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Jason Wang authored
Export it for other users. Signed-off-by:
Jason Wang <jasowang@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Michael S. Tsirkin authored
Names with spaces in them are nasty, let's not go there. Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Markus Armbruster authored
Signed-off-by:
Markus Armbruster <armbru@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Reviewed-by:
Eric Blake <eblake@redhat.com>
-
Markus Armbruster authored
Signed-off-by:
Markus Armbruster <armbru@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Reviewed-by:
Eric Blake <eblake@redhat.com>
-
Michael S. Tsirkin authored
Update ACPI tables test to match new ACPI tables after adding the memory hotplug feature. Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Michael S. Tsirkin authored
pdate precompiled ACPI hex files for iasl-less hosts after adding the memory hotplug feature Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
also make handler edge based to avoid losing events, the same as it has been done for PCI and CPU hotplug handlers. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Needed for Windows to use hotplugged memory device, otherwise it complains that server is not configured for memory hotplug. Tests shows that aftewards it uses dynamically provided proximity value from _PXM() method if available. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
... it will be used by acpi-build code and by unit tests Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
- provides static SSDT object for memory hotplug that can handle upto 256 hotplugable memory slots - SSDT template for memory devices and runtime generator of them in SSDT table. Signed-off-by:
Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com> Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Notify PIIX4_PM/ICH9LPC device about hotplug event, so that it would send SCI to guest notifying about newly added memory. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
the link will used later to access device implementing ACPI functions instead of adhoc lookup in QOM tree. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Adds an optional subsection that allows to migrate current state of acpi_memory_hotplug of ACPI PM device. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Add memory hotplug initialization/handling to ICH9 LPC device and enable it by default for post 2.0 machine types Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Propeties of object should be available after its instances_init() callback is finished and not added in PCIDeviceClass.init which is roughly corresponds to realize() method. Moving properties adding into instances_init will fix missing property error when global/compat property mechanism is used. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Add memory hotplug initialization/handling to PIIX4_PM device and enable it by default for post 2.0 machine types Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> MST: resolve conflict in pc.h
-
Igor Mammedov authored
... and report error if plugged in device is not supported. Later these callbacks will be used by memory hotplug. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Acked-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-