From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?B?QW5kcsOpIFdlaWRlbWFubg==?= Subject: Re: Graphics card pass-through working with two pass pci-initialization Date: Fri, 28 May 2010 20:49:07 +0200 Message-ID: <4C001023.4030807@web.de> References: <1306227933-4880-1-git-send-email-kraxel@redhat.com> <1306227933-4880-2-git-send-email-kraxel@redhat.com> <20110525023406.GG8517@valinux.co.jp> <20110525043353.GH8517@valinux.co.jp> <4DDCC7A5.60706@redhat.com> <4DDCF9ED.5050208@redhat.com> <4DDDDA8D.6080807@web.de> <4DDDF62C.2010603@redhat.com> <4DDF3768.5010002@web.de> <4DDF867A.9040700@siemens.com> <4DDFFE1E.1060900@web.de> <4DE0008F.4050608@web.de> <4DDEC3F7.2060605@web.de> <4DE0AFF1.2050404@web.de> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: Gerd Hoffmann , seabios@seabios.org, kvm@vger.kernel.org, Alex Williamson To: Jan Kiszka Return-path: Received: from fmmailgate01.web.de ([217.72.192.221]:48278 "EHLO fmmailgate01.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755516Ab1E1Sth (ORCPT ); Sat, 28 May 2011 14:49:37 -0400 In-Reply-To: <4DE0AFF1.2050404@web.de> Sender: kvm-owner@vger.kernel.org List-ID: Hi, On 28.05.2011 10:18, Jan Kiszka wrote: > On 2011-05-26 23:19, Andr=C3=A9 Weidemann wrote: >> On 27.05.2011 21:50, Andr=C3=A9 Weidemann wrote: >>> On 27.05.2011 21:40, Andr=C3=A9 Weidemann wrote: >>> >>>> If I am not mistaken then the graphics card needs 2 bars, one with= 256MB >>>> and one with 128K. The sound card then needs 1 bar with 16K of PCI >>>> memory. >>>> How big is the PCI memory with seabios? >>>> Is there really not enough space to "squeeze" in those extra 16K? >>> >>> I obviously forgot to add up the other memory that is used... >>> 32MB go to the standard VGA card. Running qemu-kvm with "-vga none"= did >>> not work, so I left it in. And the e1000 NIC needs another 128K. >>> >>> I'll see if I can get rid of the standard VGA card. I guess that sh= ould >>> free enough memory for the sound card. >> >> I did some more testing by starting the VM with the paramter "-vga n= one" >> and passed both the VGA card and the sound card to it. With this opt= ion >> the VM did not boot, > > Where did it hang, ie. what IP was reported by info cpus? I added some debug options and found out, that the VM hangs when trying= =20 to initialize the graphics card ROM. See here: http://pastebin.com/S9a8uQfU And some additional info here: http://pastebin.com/AC4rw8Ek (info cpus/registers) http://pastebin.com/yYkn8jL2 (info pci) >> but I could use the monitor to take a look at the >> PCI bar assignment. Even though the memory for the standard VGA card= is >> freed, the soundcard does not seem to get the 16K bar it needs. "inf= o >> pci" for the sound card still looks like this: >> Bus 0, device 5, function 0: >> Audio controller: PCI device 8086:3a3e >> IRQ 10. >> BAR0: 32 bit memory at 0xffffffffffffffff [0x00003ffe]. >> >> Does anyone have an idea why there was no bar assigned? > > Maybe Gerd's patches aren't sufficient and you still need to change > BUILD_MAX_HIGHMEM. See the hacks in > http://git.kiszka.org/?p=3Dseabios.git;a=3Dshortlog;h=3Drefs/heads/vg= a-assign, > either replacing Gerd's patches or combined with them (I haven't chec= ked > if the latter makes sense). I do not have access to the machine until tomorrow. I'm curious to see=20 if extending the PCI memory window will cure the problem. >> Can the kernel be too old? (2.6.35.7.) > > It would be good to check the latest kvm kernel to see if that oops i= s > still present. In that case, please try to collect the backtrace via > serial console, hopefully complete then. We may have an resource clea= nup > issue there. I will see if I can upgrade to the latest kernel tomorrow. >> >> Just to test whether or not two devices can be assigned, I passed >> through 2 sound cards. (There is an onbard sound card and the Radeon= has >> one too). >> >> Each sound card gets its bar assigned as you can see: >> Bus 0, device 4, function 0: >> Audio controller: PCI device 1002:aa80 >> IRQ 10. >> BAR0: 32 bit memory at 0xfebf0000 [0xfebf3fff]. >> id "" >> Bus 0, device 5, function 0: >> Audio controller: PCI device 8086:3a3e >> IRQ 10. >> BAR0: 32 bit memory at 0xfebf4000 [0xfebf7fff]. >> >> but the sound cards do not show inside the Windows VM. >> >> With both sound cards still passed to the VM I then booted an Ubuntu >> 10.10 image instead of Windows7. It got as far as starting gdm, but = then >> the entire host and VM became very slow. >> The last message I saw on the terminal before gdm started was this: >> [ 23.030016 ] hda_intel: azx_get_response timeout, switching to >> single_cmd mode: last cmd=3D0x000f0000 >> [ 29.290017 ] hda_intel: azx_get_response timeout, switching to >> single_cmd mode: last cmd=3D0x200f0000 > > Likely some IRQ issue. Please check if latest qemu-kvm.git + > http://thread.gmane.org/gmane.comp.emulators.qemu/102540 makes any > difference. See above comments. I will try this tomorrow. Regards Andr=C3=A9