From: Hongyong Zang zanghongy...@huawei.com
Virtio-serial set up (max_ports+1)*2 vqs when device probes, but may not all
io_ports are used.
These patches create vqs of port0 and control port when probing the device,
then
create io-vqs when called add_port().
Hongyong Zang (2):
virtio-pci:
From: Hongyong Zang zanghongy...@huawei.com
changes in vp_try_to_find_vqs:
Virtio-serial's probe() calls it to request irqs and setup vqs of port0 and
controls; add_port() calls it to set up vqs of io_port.
it will not create virtqueue if the name is null.
Signed-off-by: Hongyong Zang
From: Hongyong Zang zanghongy...@huawei.com
Add setup_port_vq(). Create the io ports' vqs when add_port.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
drivers/char/virtio_console.c | 65 ++--
1 files changed, 61 insertions(+), 4 deletions(-)
From: Hongyong Zang zanghongy...@huawei.com
If a guest's ram_size exceeds KVM_32BIT_GAP_START, the corresponding kvm tool's
virtual address size should be (ram_size + KVM_32BIT_GAP_SIZE), rather than
ram_size.
Use macro define KVM_32BIT_MAX_MEM_SIZE instead of magic number
0x1ULL.
From: Hongyong Zang zanghongy...@huawei.com
If a guest's ram_size exceeds KVM_32BIT_GAP_START, the corresponding kvm tool's
virtual address size should be (ram_size + KVM_32BIT_GAP_SIZE), rather than
ram_size.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
tools/kvm/x86/bios.c |2
From: Hongyong Zang zanghongy...@huawei.com
If a guest's ram_size exceeds KVM_32BIT_GAP_START, the corresponding kvm tool's
virtual address size should be (ram_size + KVM_32BIT_GAP_SIZE), rather than
ram_size.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
tools/kvm/x86/kvm.c |4
From: Hongyong Zang zanghongy...@huawei.com
In pci_enable_msix(), the guest's virtio-serial driver tries to set msi-x
with one vector per queue. But it fails and eventually all virtio-serial
ports share one MSI-X vector. Because every virtio-serial port has *two*
virtqueues, virtio-serial needs
From: Hongyong Zang zanghongy...@huawei.com
Vhost-net uses its own vhost_memory, which results from user space (qemu) info,
to translate GPA to HVA. Since kernel's kvm structure already maintains the
address relationship in its member *kvm_memslots*, these patches use kernel's
kvm_memslots
From: Hongyong Zang zanghongy...@huawei.com
Use kvm's memslots instead of vhost_memory to traslate address
from GPA to HVA.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
drivers/vhost/vhost.c | 53 ++--
1 files changed, 20 insertions(+),
From: Hongyong Zang zanghongy...@huawei.com
This function finds the kvm structure from its corresponding user
space process, such as qemu process.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
include/linux/kvm_host.h |2 +-
virt/kvm/kvm_main.c | 13 +
2 files
From: Hongyong Zang zanghongy...@huawei.com
This patch series, adds a PIO BAR4 for guest notifying qemu. And the new
notification way of PIO BAR4 reduces 30% time in comparison with the original
MMIO BAR0 way.
Meantime, this patch adds a memory API named kvm_set_ioeventfd_pio_long which
is about
From: Hongyong Zang zanghongy...@huawei.com
This patch adds a PIO BAR4 for guest notifying qemu to reduce notification time.
And the new notification way of PIO BAR4 reduces 30% time in comparison with the
original MMIO BAR0 way.
Also, this patch introduces a new feature named IVSHMEM_PIO_NOTIFY
From: Hongyong Zang zanghongy...@huawei.com
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
docs/specs/ivshmem_device_spec.txt |8 ++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/docs/specs/ivshmem_device_spec.txt
b/docs/specs/ivshmem_device_spec.txt
index
From: Hongyong Zang zanghongy...@huawei.com
The new memory API, named kvm_set_ioeventfd_pio_long, is about ioeventfd for
PIO long.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
kvm-all.c | 23 +++
kvm-stub.c |5 +
kvm.h |1 +
memory.c | 20
From: Hongyong Zang zanghongy...@huawei.com
When a guest boots with ioeventfd, an error (by gdb) occurs:
Program received signal SIGSEGV, Segmentation fault.
0x006009cc in setup_ioeventfds (s=0x171dc40)
at /home/louzhengwei/git_source/qemu-kvm/hw/ivshmem.c:363
363
From: Hongyong Zang zanghongy...@huawei.com
Ivshmem cannot work, and the command lspci cannot show ivshmem BAR2 in the
guest.
As for pci_register_bar(), parameter MemoryRegion should be s-bar instead of
s-ivshmem.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
hw/ivshmem.c |2 +-
From: Hongyong Zang zanghongy...@huawei.com
This patch, adds a PIO BAR3 for guest notifying qemu. And we find the new
notification way of PIO BAR3 reduces 30% time in comparison with the original
MMIO BAR0 way.
Signed-off-by: Hongyong Zang zanghongy...@huawei.com
---
hw/ivshmem.c | 24
From: Hongyong Zang zanghongy...@huawei.com
Ivshmem(nahanni) is a mechanism for sharing host memory with VMs running on the
same host. Currently, guest notifies qemu by reading or writing ivshmem
device's PCI MMIO BAR0(Doorbell).
This patch, changes this PCI MMIO BAR0(Doorbell) to PIO. And we
18 matches
Mail list logo