Am 13.11.2010 00:31, Erik Brakkee wrote: > Hi all, > > > I have KVM running successfully on opensuse 11.3 (64bit) with a opensuse > 11.1 guest. I am using hardware virtualization and want to experiment > with PCI passthrough with the (wired) network card on my laptop because > I want to repeat similar steps later on a server (with a TV card). The > main specs of the laptop are Intel Core I7 Q720 1.6GHz with 8MB of memory. > > I have followed the instructions on > http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization/chap-Virtualization-PCI_passthrough.html. > Everything is successful until I start the domain. > > In that case I get the following messages in the logs: > > Nov 13 00:23:45 pelican kernel: [ 3302.793043] pci-stub 0000:04:00.0: > claimed by stub > Nov 13 00:23:45 pelican kernel: [ 3302.793197] pci-stub 0000:04:00.0: > claimed by stub > Nov 13 00:23:45 pelican kernel: [ 3302.931578] > kvm_vm_ioctl_deassign_device: device hasn't been assigned before, so > cannot be deassigned > Nov 13 00:23:48 pelican libvirtd: 00:23:48.136: error : > qemuMonitorOpenUnix:269 : monitor socket did not show up.: Connection > refused > Nov 13 00:23:48 pelican libvirtd: 00:23:48.136: error : > qemuConnectMonitor:1192 : Failed to connect monitor for other > > To be absolutely certa CPU0 CPU1 CPU2 > CPU3 CPU4 CPU5 CPU6 CPU7 > 0: 371 0 0 203026 0 > 0 0 0 IO-APIC-edge timer > 1: 12870 0 0 39 173 > 0 0 0 IO-APIC-edge i8042 > 7: 259 0 0 0 0 > 0 0 0 IO-APIC-edge > 8: 0 0 0 4 0 > 0 0 0 IO-APIC-edge rtc0 > 9: 2823 0 0 141 0 > 0 0 0 IO-APIC-fasteoi acpi > 12: 15 0 0 155 0 > 0 0 0 IO-APIC-edge i8042 > 16: 0 298817 0 0 0 > 0 634 0 IO-APIC-fasteoi ehci_hcd:usb1, ohci1394, > hda_intel, nvidia > 17: 0 0 0 0 0 > 0 0 0 IO-APIC-fasteoi mmc0 > 19: 0 0 0 0 0 > 0 0 0 IO-APIC-fasteoi mmc1 > 23: 0 0 99 0 0 > 95116 0 0 IO-APIC-fasteoi ehci_hcd:usb2 > 24: 687633 0 0 0 0 > 0 0 0 HPET_MSI-edge hpet2 > 25: 0 637204 0 0 0 > 0 0 0 HPET_MSI-edge hpet3 > 26: 0 0 199161 0 0 > 0 0 0 HPET_MSI-edge hpet4 > 27: 0 0 0 134606 0 > 0 0 0 HPET_MSI-edge hpet5 > 28: 0 0 0 0 237717 > 0 0 0 HPET_MSI-edge hpet6 > 34: 58784 0 0 7780 0 > 0 0 0 PCI-MSI-edge ahci > 36: 939 0 0 0 138686 > 0 0 0 PCI-MSI-edge iwlagn > 37: 0 0 0 0 0 > 210 0 0 PCI-MSI-edge hda_intel > NMI: 0 0 0 0 0 > 0 0 0 Non-maskable interrupts > LOC: 1535 1438 1347 1257 1168 > 396803 120435 79080 Local timer interrupts > SPU: 0 0 0 0 0 > 0 0 0 Spurious interrupts > PMI: 0 0 0 0 0 > 0 0 0 Performance monitoring interrupts > PND: 0 0 0 0 0 > 0 0 0 Performance pending work > RES: 4164 4332 2050 1413 3244 > 2790 1630 1200 Rescheduling interrupts > CAL: 1394 1395 1279 1195 1431 > 1430 1429 575 Function call interrupts > TLB: 5007 2623 3751 3045 5617 > 3902 4486 4115 TLB shootdowns > TRM: 0 0 0 0 0 > 0 0 0 Thermal event interrupts > THR: 0 0 0 0 0 > 0 0 0 Threshold APIC interrupts > MCE: 0 0 0 0 0 > 0 0 0 Machine check exceptions > MCP: 14 14 14 14 14 > 14 14 14 Machine check polls > ERR: 259 > MIS: 0 > in I also removed the driver for the network card using 'rmmod sky2'. > > I have also specified the intel_iommu=on option in the command line (cat > /proc/cmdline gives: root=/dev/system/root resume=/dev/system/swap > splash=silent quiet nomodeset intel_iommu=on vga=0x314). Also, the > output of 'dmesg | grep -i iommu' gives: > > [ 0.000000] Command line: root=/dev/system/root > resume=/dev/system/swap splash=silent quiet nomodeset intel_iommu=on > vga=0x314 > [ 0.000000] Kernel command line: root=/dev/system/root > resume=/dev/system/swap splash=silent quiet nomodeset intel_iommu=on > vga=0x314 > [ 0.000000] Intel-IOMMU: enabled > > So it seems that IOMMU is available. > > I read somewhere that there could be a problem in the interrupts and > some users had success by disabling them but I really don't know how to > debug this. > The output of 'cat /proc/interrupts' is as follows: What IRQ is the sky2 using when assigned to the host? Is it really a shared IRQ (I bet not as it should be using MSI)? Also, check in the libvirt logs what qemu-kvm reports on the console. Jan
Attachment:
signature.asc
Description: OpenPGP digital signature