From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jan Kiszka Subject: Re: Graphics pass-through Date: Mon, 09 May 2011 17:02:30 +0200 Message-ID: <4DC80206.7030104@siemens.com> References: <4D415D70.8070105@web.de> <1296175554.2891.29.camel@x201> <4DC264CD.9080700@siemens.com> <1304608642.3081.35.camel@x201> <4DC7CCB3.8030607@siemens.com> <1304951371.26106.26.camel@x201> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: =?UTF-8?B?QW5kcsOpIFdlaWRlbWFubg==?= , Prasad Joshi , "kvm@vger.kernel.org" , Oswaldo Cadenas To: Alex Williamson Return-path: Received: from thoth.sbs.de ([192.35.17.2]:30342 "EHLO thoth.sbs.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751155Ab1EIPCn (ORCPT ); Mon, 9 May 2011 11:02:43 -0400 In-Reply-To: <1304951371.26106.26.camel@x201> Sender: kvm-owner@vger.kernel.org List-ID: On 2011-05-09 16:29, Alex Williamson wrote: > On Mon, 2011-05-09 at 13:14 +0200, Jan Kiszka wrote: >> On 2011-05-05 17:17, Alex Williamson wrote: >>>> And what about the host? When does Linux release the legacy range? >>>> Always or only when a specific (!=vga/vesa) framebuffer driver is loaded? >>> >>> Well, that's where it'd be nice if the vga arbiter was actually in more >>> widespread use. It currently seems to be nothing more than a shared >>> mutex, but it would actually be useful if it included backends to do the >>> chipset vga routing changes. I think when I was testing this, I was >>> externally poking PCI bridge chipset to toggle the VGA_EN bit. >> >> Right, we had to drop the approach to pass through the secondary card >> for now, the arbiter was not switching properly. Haven't checked yet if >> VGA_EN was properly set, though the kernel code looks like it should >> take care of this. >> >> Even with handing out the primary adapter, we had only mixed success so >> far. The onboard adapter worked well (in VESA mode), but the NVIDIA is >> not displaying early boot messages at all. Maybe a vgabios issue. >> Windows was booting nevertheless - until we installed the NVIDIA >> drivers. Than it ran into a blue screen. > > Interesting, IIRC I could never get VESA modes to work. I believe I > only had a basic VGA16 mode running in a Windows guest too. > >> BTW, what ATI adapter did you use precisely, and what did work, what not? > > I have an old X550 (rv380?). I also have an Nvidia gs8400, but ISTR the > ATI working better for me. Is that Nvidia a PCIe adapter? Did it show BIOS / early boot messages properly? BTW, we are fighting with a Quadro FX 3800. > >> One thing I was wondering: Most modern adapters should be PCIe these >> days. Our NVIDIA definitely is. But so far we are claiming to have it >> attached to a PCI bus. That caps all the extended capabilities e.g. >> Could this make some relevant difference? > > The BIOS and early boot use shouldn't care too much about that, but I > could imagine the high performance drivers potentially failing. Thanks, Yeah, that was my thinking as well. But we will try to confirm this by tracing the BIOS activities. There is a telling that some adapters do not allow reading the true cold-boot ROM content during runtime, thus booting those adapters inside the guest may fail to some degree. Anyway, I've hacked on the q35 patches until they allowed me to boot a Linux guest with an assigned PCIe Atheros WLAN adapter - all caps were suddenly visible. Those bits are now on their way to our test box. Let's see if they are able to change the BSOD a bit... Jan -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux