This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


RE: [Xen-devel] [PATCH 0/2] graphics passthrough with VT-d

To: 'Andrew Lyon' <andrew.lyon@xxxxxxxxx>
Subject: RE: [Xen-devel] [PATCH 0/2] graphics passthrough with VT-d
From: "Han, Weidong" <weidong.han@xxxxxxxxx>
Date: Fri, 28 Aug 2009 17:13:48 +0800
Accept-language: en-US
Acceptlanguage: en-US
Cc: "'xen-devel@xxxxxxxxxxxxxxxxxxx'" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Fri, 28 Aug 2009 02:15:05 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <f4527be0908280204i5ef4c299k61fbea70e7947e5@xxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <715D42877B251141A38726ABF5CABF2C054B533681@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <f4527be0908280204i5ef4c299k61fbea70e7947e5@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AconvpCjDOL+PLc2RiOYSDrs6xqYugAANuGg
Thread-topic: [Xen-devel] [PATCH 0/2] graphics passthrough with VT-d
Andrew Lyon wrote:
> On Fri, Aug 28, 2009 at 8:53 AM, Han, Weidong<weidong.han@xxxxxxxxx>
> wrote: 
>> Hi all,
>> Recently, more and more people are interesting in gfx passthrough.
>> But now xen-unstable doesn't support it, although some guys (Jean
>> Guyader, Beng Heng, Ng) posted gfx passthrough patches. If
>> xen-unstable includes gfx passthrough support, people can be easy to
>> try it.    
>> gfx passthrough is more complicated than other PCI device
>> passthrough such as NIC, and is hard to use a generic approach for
>> all gfx passthrough. But there are some necessary changes for gfx
>> passthrough:   
>>  1. disable emulated VGA adapter, instead use passthroughed gfx
>>  2. load VGA bios of the gfx to guest
>>  3. passthrough legacy VGA IO ports and MMIOs to guest
>> This patchset implements above common changes. Based on the common
>> changes, we are investigating to support more gfx cards and guest
>> OSs. We will post the hacks in future.  
>> The patchset supports to passthrough the primary gfx and discrete
>> gfx. With the patchset, virtualization friendly gfx cards can be
>> passthroughed (e.g. Nvidia FX3800), IGD and many discrete gfx cards
>> are not supported yet.   
> What about cheaper cards in the FX range like the FX580 or FX1800, are
> they likely to be passthrough friendly?

I don't know. We didn't try those cards. You can try with our patch by yourself.

> Perhaps we should ask nvidia exactly which cards support
> virtualization, or is it a feature that is listed in the tech specs?,

No. we just find it works with the common changes. Actually, its VGA bios 
re-execution doesn't works well. 


> I could probably run to one of the cheaper FX cards but the high end
> ones are way too expensive for me to justify the cost.
> Andy
>> This is easy to use, the only difference from other PCI passthrough
>> is to add following lines to hvm configure file: 
>> #----------------------------------------------------------------------------------------
>> # 0: no gfx passthru, 1: IGD passthru, 2: discrete gfx passthru,
>> default is 0 
>> gfx_passthru=2
>> and also pls passthrough a USB controller for keyboard/mouse use in
>> guest. (Now there are some issues on USB controller passthrough with
>> pv-ops dom0, so currently prefer to use 2.6.18 dom0.)  
>> The patchset is as follows:
>> 1. PATCH 1/2: changes in xen-unstable
>>        - retrieves VGA bios from host VGA BIOS address (0xC0000),
>> then load it to guest VGA BIOS address (This is the same with XCI). 
>>        - Enlarge guest MMIO range to contain gfx card's large memory
>>        - add a config option 'gfx_passthru' for gfx passthrough
>> 2. PATCH 2/2: changes in QEMU
>>        - disable emulated VGA adapter
>>        - register/unregister legacy VGA I/O ports and MMIOs
>> Signed-off-by: Ben Lin <ben.y.lin@xxxxxxxxx>
>> Signed-off-by: Weidong Han <weidong.han@xxxxxxxxx>
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>> http://lists.xensource.com/xen-devel

Xen-devel mailing list