[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Re: APIC rework



On 11/24/09 11:44, Konrad Rzeszutek Wilk wrote:
>> At least dom0 parses this info from DSDT, so we can't have the assuption 
>> whether it is used or not, I think. And I also agree to add a new physdev_op 
>> to handle this case, and it should be better way to go.  
>> Based on this idea, I worked out the patch, attached!  In this patch, we 
>> introduced a new physdev_op PHYSDEVOP_setup_gsi for each GSI setup, and each 
>> domain can require to map each GSI in this case. 
>> In addition, I believe it is very safe to port the hypervisor patch to 
>> xen-3.4-x tree and keeps pv_ops dom0 running on it, since no logic is 
>> changed.  BTW, I also tested apic and non-apic cases, they works fine after 
>> applying the patches. 
>>     
> But I don't think you tested PCI front and PCI back.
>
> Mainly these lines worry me (can you inline the patch next time too, please):
>   

(Inline+attach, or an inline attachment rather than plain inline, is
best.  Plain inline with quoted-printable encoding is awkward to deal with.)

> +               map_irq.domid = DOMID_SELF;                                   
>                                                              
> +               map_irq.type = MAP_PIRQ_TYPE_GSI;                             
>                                                              
> +               map_irq.index = gsi;                                          
>                                                              
> +               map_irq.pirq = irq;                                           
>                                                              
> +               rc = HYPERVISOR_physdev_op(PHYSDEVOP_map_pirq, &map_irq);     
>                                                              
>
> For PCI passthrough to work, the domid needs to be for the guest domain, while
> in this case it is set to Dom0.
>
> There is already a method of extracting the domain id for PCI devices passed 
> to
> the guest. Look in the 'xen_create_msi_irq' function.
>   

Hm, I'm not very keen on having xen_create_msi_irq do its own traversal
of xenstore; it should take the domid as a parameter and its caller can
do the walk if necessary.  The direct call makes too much of a direct
dependency between two otherwise unrelated subsystems.

    J

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.