[Qemu-devel] PCI device assign problems!
Hi, I am trying to run a PCI card as a pass-throughed device. The PCI driver works well on physical PC but failed on a full-virtualized PC. The KVM confiuration is OK as a pass-throughed network card works. I debuged the PCI driver and found that the some registers of this PCI card should be filled with the physical address of DMA regions. However, the PCI card can only get the virtualized physical address. So for a PCI device, it cannot be passthroughed if it requires some physical address to be filled into some registers, right? If it is so, how to make it work as a passthroughed device? Appreciated if someone can provide some help. Yi
[Qemu-devel] How to make TCP/IP applications run on guest OS?
Hi all, I have bridged the network of the host. There was one br0 and several taps on it. When I started up a guest using: #kvm -hda ubuntu.img -localtime -m 1G -net nic, -net tap,ifname=tap0,script=no The guest can ping to other VMs or physical PCs within the same LAN. However, when I tried to communicate with other VMs/PCs using TCP/IP, the incoming IP at the receiver side is the same as the host IP instead of the VM's IP. Then how to configure the network so that the TCP/IP applications run well just like the phsical PC? Thanks, Yi
[Qemu-devel] Nahanni Issues
Hi Cam, Does nahanni support asynchronous communication between multi-guests in the same machine? Besides, is the Nahanni-MPI latency in your slide Nahanni: a shared memory interface for KVM the average result or the maximal result? Thanks, Yi
Re: [Qemu-devel] Will the ELI incorporated in theKVM?
The CPU isolation in Hitachi patches is just to improve the real time performance of GUEST. The core of it, direct IRQ delivery, is very similar to that of ELI. For the ELI patches, (1) Since EOI part of ELI is already supported by the Intel Sandy Bridge CPUs and requires modifications on GUEST code, it should not be included in the KVM. Only the ELI delivery part, which plays a vital role in performance improvement, should be considered. (2) It should be provided in the kvm-kmod or qemu-kvm ( not just for some linux kernel as Hitachi patches do), to make this part independent of linux kernel version. Yi 2012/9/19 Jan Kiszka jan.kis...@siemens.com On 2012-09-19 16:43, Abel Gordon wrote: It's imperfect as you need to dedicate a core to pure guest-mode load and cannot run userspace on that core (cannot walk through userspace-based device models e.g.). That's not correct. For the evaluation, we dedicated a core for each guest to maximize the performance but this is not a requirement. You can over-commit cores and share them across multiple VMs. In this case, you will be sharing the cycles among all the VMs and the performance per VM will be degraded. In addition, if you share a core, an interrupt for a guest may be raised while the corresponding VCPU is not running. Depending on the workload, most of the interrupts will be generated while the VCPU runs or not. and cannot run userspace on that core (cannot walk through userspace-based device models e.g.). That's not correct. We can run any thread (including user-space threads) on the same core we run the VMs (VCPU threads). In fact, we did that for the ELI evaluation: we shared a single core to run the VCPU thread and ALL the host threads (including qemu I/O thread). And it requires that magic bar to map the shadow IDT into the guest (hmm, I think Hitachi avoided this). Hitachi uses a different technique which seems to have the 2 disadvantages you previously mentioned while ELI doesn't have these disadvantages. It's invasive as it has to change Linux to maintain those isolated slave CPUs. That is, of course, based on code that was published by Hitachi. Yours may differ but will still have to solve the same problems. ELI does not require isolated/slave CPUs. OK. Show patches. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SDP-DE Corporate Competence Center Embedded Linux
[Qemu-devel] VM Communications inner a network bridge
Hi all, When 2 VMs are started on the same network bridge, will the TCP/IP packets between them still go through the router (actually these 2 VMs share the same physical network card)? If so, is it possible to just pass the packets inner the network card? Best, Yi
[Qemu-devel] Any KVM passthrough performance report?
Hi, I wonder if there is any detailed performance report of KVM passthrough. I was just told it can achieve near native hardware performance and could not get any experimental results. Best, Yi
Re: [Qemu-devel] Network Passthrough configuration!
So is my command line to start the guest OK? The command line is as: qemu-img -boot c -hda readhat.img -device pci-assign,host=XX:00.0 Why doesn't the network work? Yi 2012/8/25 Stefan Hajnoczi stefa...@gmail.com On Sat, Aug 25, 2012 at 5:35 AM, GaoYi gaoyi...@gmail.com wrote: Hi all, I am trying to implement pci passthrough for network card according to this guideline: http://www.linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM. The configuration steps were all ok. However, when I started the guest by: qemu-img -boot c -hda readhat.img -device pci-assign,host=XX:00.0, the network of the guest failed. And the host shell reported: cannot read from host /sys/bus/pci/devices/.XXX/rom. I am very sure the PCI is rightly selected from commands like lspci -n. So what is the full command line to start a guest with network being OK? I guess you hit this error message: pci-assign: Cannot read from host %s. Device option ROM contents are probably invalid (check dmesg). Skip option ROM probe with rombar=0 or load from file with romfile= This is a warning that the option ROM could not be loaded. It's not a fatal error and probably just means you cannot use the PCI NIC's network boot ROM (PXE) inside the guest. But the NIC should still work once your guest OS is booted. I don't know if there are other implications but it seems to be a non-fatal warning. Besides, how to configure the libvirt XML file so that passthrough can work well from Virsh tools? Try this guide for PCI device assignment with libvirt: https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Host_Configuration_and_Guest_Installation_Guide/chap-Virtualization_Host_Configuration_and_Guest_Installation_Guide-PCI_Assignment.html Stefan
[Qemu-devel] Network Passthrough configuration!
Hi all, I am trying to implement pci passthrough for network card according to this guideline: http://www.linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM. The configuration steps were all ok. However, when I started the guest by: qemu-img -boot c -hda readhat.img -device pci-assign,host=XX:00.0, the network of the guest failed. And the host shell reported: cannot read from host /sys/bus/pci/devices/.XXX/rom. I am very sure the PCI is rightly selected from commands like lspci -n. So what is the full command line to start a guest with network being OK? Besides, how to configure the libvirt XML file so that passthrough can work well from Virsh tools? Any response will be appreciated. Yi
[Qemu-devel] [Bug-Report] KVM failed to support netbsd-based kernel!
Hi all, I am running a netbsd kernel in KVM, using Intel VT. However, the OS failed to start up with the following outputs: KVM internal error. Suberror: 1 emulation failure. EAX=0001EBX=ECX=0005 EDX=0001 ESI=0001 EDI=001c4bd2 EBP=0011a72c ESP=0fff007d EIP=0011a6d0 EFL=00010002 [---] CPL=0 II=0 A20=1 SMM=0HLT=0 ES=0010 00c09300DPL=0 DS [-WA] CS=0018 00c09b00DPL=0 CS32 [-RA] SS=0010 00c09300DPL=0 DS [-WA] DS=0010 00c09300DPL=0 DS [-WA] FS=0010 00c09300DPL=0 DS [-WA] GS=0010 00c09300DPL=0 DS [-WA] LDT= 8200DPL=0 LDT TR= feff d000 20888b00DPL=0 TSS32-busy GDT= 80c0 0027 IDT = 0010 07ff CR0= 4011 CR2= CR3= CR4=0400 DR0= DR1= DR2= DR3= DR0= 0ff0 DR7= 0400 EFER = Code= 93 a1 11 00 d0 a6 11 00 18 00 00 00 93 00 01 00 d0 4b 1c 00 ff ff ff ff 2c a7 11 00 ec ab 11 00 ff 26 00 00 00 00 00 00 04 00 00 00 42 00 00 00 02 00 The software configuration is: QEMU-KVM-1.1.0, kvm-kmod-3.3 and linux-2.6.32. So what does this failure report mean and how can I locate the unsupported line in the guest kernel. With kind regards, Yi
[Qemu-devel] How to management KVM virtual machines via libvirt?
Hi all, I am trying to management the VMs created by KVM commandline. However, I found the libvirt cannot connect to the VMs or manage it from virsh. Can anybody provide any help? Best, Yi
Re: [Qemu-devel] Can VMX provide real mode support?
So if the VT already supports unrestricted guest, KVM can then runs such guest? 在 2012年3月25日 下午5:55,Avi Kivity a...@redhat.com写道: On 03/23/2012 07:58 PM, Luiz Capitulino wrote: On Wed, 21 Mar 2012 15:48:43 +0200 Avi Kivity a...@redhat.com wrote: On 03/21/2012 03:40 PM, Jan Kiszka wrote: On 2012-03-21 13:38, GaoYi wrote: Hi Jan, Since the newest Intel-VT supports the guest OS under the real mode, which was already supported in AMD-V, can the VMX in the latest KVM support that case? Yes, both with our without that unrestricted guest support (as Intel called it), real mode will generally work. Without that CPU feature, I think to recall that there were some limitations for big real mode, not sure. Yes, big real mode will not work without unrestricted guest. There was some work to emulate it (module option emulate_invalid_guest_state), but it is not complete. Can you provide a pointer for this? series? It's merged (look for emulate_invalid_guest_state in vmx.c), just incomplete. -- error compiling committee.c: too many arguments to function
[Qemu-devel] Can VMX provide real mode support?
Hi Jan, Since the newest Intel-VT supports the guest OS under the real mode, which was already supported in AMD-V, can the VMX in the latest KVM support that case? Thanks, Yi
[Qemu-devel] Can VMX support real mode?
Hi Avi, According to your reply if the CPU supports the real mode, the KVM can support the real mode guest and there is still work to be done for CPU without real mode support (i.e., software emulation)? Thanks again, Yi
Re: [Qemu-devel] Can VMX provide real mode support?
Hi, Thanks for your prompt response. So if the CPU supports the real mode, the KVM can support the real mode guest and there is still work to be done for CPU without real mode support, namely software emulation? Again 在 2012年3月21日 下午9:48,Avi Kivity a...@redhat.com写道: On 03/21/2012 03:40 PM, Jan Kiszka wrote: On 2012-03-21 13:38, GaoYi wrote: Hi Jan, Since the newest Intel-VT supports the guest OS under the real mode, which was already supported in AMD-V, can the VMX in the latest KVM support that case? Yes, both with our without that unrestricted guest support (as Intel called it), real mode will generally work. Without that CPU feature, I think to recall that there were some limitations for big real mode, not sure. Yes, big real mode will not work without unrestricted guest. There was some work to emulate it (module option emulate_invalid_guest_state), but it is not complete. -- error compiling committee.c: too many arguments to function
[Qemu-devel] Has anybody run Vxworks on KVM?
Hi all, I am trying to run Vxworks on KVM under X86_64 platform. Now I can startup vxworks without 'no-kvm' option. However, the bootup failed with hardware virtualization selected. Has anybody run it successfully? Any of your suggestions would be appreicated. Yi
[Qemu-devel] Problems on running vxworks on KVM with x86_64!
Hi Bill, I am trying to run vxworks on KVM with X86_64 machine. I've downloaded your binary Vxworks Image from http://lists.gnu.org/archive/html/qemu-devel/2009-06/msg00401.html and ran it by: *qemu -fda vxworks.img*. Unfortunately, I could not bootup the vxworks. The vncviewer shows that: Boot from floppy disk v1.6 and quick restarts again and again. So what may be the problem? I would be much appreciated if you could describe your KVM version, configuration or something related. Thanks, Yi