Stefano Stabellini wrote:
> On Fri, 28 Aug 2009, Han, Weidong 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.
>>
>> 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
>>
>
>
> I think we should make clear that this option is for passing through
> graphic cards as the primary graphic device in the guest.
> Discrete graphic cards could be passed through to the guest as
> secondary graphic devices, avoiding the need for remapping the vga
> bios or disabling the emulated vga.
> I think they would still need the other patches, in particular the
> vBAR-pBAR patch.
> What do you think about adding a third option "3 : discrete gfx
> passthru as secondary"?
Yes, it still needs more efforts to make gfx passthrough perfect. This patchset
just supports basic gfx passthrough. Based on it, we can develop to support
more gfx cards (e.g. IGD, other Nvidia and ATI cards), and more use cases (e.g.
secondary gfx in guest, use emulated vga in guest with passthroughed gfx).
Regards,
Weidong
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|