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

Re: [Xen-devel] [RFC PATCH 5/23] Tools/libxc: Add viommu operations in libxc



On 2017年04月17日 19:08, Wei Liu wrote:
> On Fri, Apr 14, 2017 at 11:38:15PM +0800, Lan, Tianyu wrote:
>> Hi Paul:
>>      Sorry for later response.
>>
>> On 3/31/2017 3:57 AM, Chao Gao wrote:
>>> On Wed, Mar 29, 2017 at 09:08:06AM +0000, Paul Durrant wrote:
>>>>> -----Original Message-----
>>>>> From: Xen-devel [mailto:xen-devel-bounces@xxxxxxxxxxxxx] On Behalf Of
>>>>> Chao Gao
>>>>> Sent: 29 March 2017 01:40
>>>>> To: Wei Liu <wei.liu2@xxxxxxxxxx>
>>>>> Cc: Lan Tianyu <tianyu.lan@xxxxxxxxx>; Kevin Tian <kevin.tian@xxxxxxxxx>;
>>>>> Ian Jackson <Ian.Jackson@xxxxxxxxxx>; xen-devel@xxxxxxxxxxxxx
>>>>> Subject: Re: [Xen-devel] [RFC PATCH 5/23] Tools/libxc: Add viommu
>>>>> operations in libxc
>>>>>
>>>>> Tianyu is on vacation this two weeks, so I will try to address
>>>>> some comments on this series.
>>>>>
>>>>> On Tue, Mar 28, 2017 at 05:24:03PM +0100, Wei Liu wrote:
>>>>>> On Fri, Mar 17, 2017 at 07:27:05PM +0800, Lan Tianyu wrote:
>>>>>>> From: Chao Gao <chao.gao@xxxxxxxxx>
>>>>>>>
>>>>>>> In previous patch, we introduce a common vIOMMU layer. In our design,
>>>>>>> we create/destroy vIOMMU through DMOP interface instead of creating
>>>>> it
>>>>>>> according to a config flag of domain. It makes it is possible
>>>>>>> to create vIOMMU in device model or in tool stack.
>>>>>>>
>>>>
>>>> I've not been following this closely so apologies if this has already been 
>>>> asked...
>>>>
>>>> Why would you need to create a vIOMMU instance in an external device model.
>>>> Since the toolstack should be in control of the device model configuration 
>>>> why would it not know in advance that one was required?
>>>
>>> I assume your question is why we don't create a vIOMMU instance via 
>>> hypercall in toolstack.
>>> I think creating in toolstack is also ok and is easier to be reused by pvh.
>>>
>>> If Tianyu has no concern about this, will move this part to toolstack.
>>
>> We can move create/destroy vIOMMU in the tool stack but we still need to add
>> such dummy vIOMMU device model in Qemu to pass virtual device's DMA request
>> into Xen hypervisor. Qemu is required to use DMOP hypercall and tool stack
>> may use domctl hyercall. vIOMMU hypercalls will be divided into two part.
>>
>> Domctl:
>>      create, destroy and query.
>> DMOP:
>>      vDev's DMA related operations.
>>
>> Is this OK?
>>
> 
> Why are they divided into two libraries? Can't they be in DMOP at the
> same time?

Yes, we can use DMOP for all vIOMMU hyercalls if it's necessary to keep
unified vIOMMU hyercall type. In theory, DMOP dedicates to be used by
Qemu but we also can use it in tool stack. If we move create, destroy
and query operation to tool stack, it isn't necessary to use DMOP for
them since only tool stack will call them. This is why I said we could
use domctl for these operations. Both two ways will not affect function
implementation. Which one it's better from your view? :)


> 
> Just asking questions, not suggesting it should be done one way or the
> other.  Sorry if there are some obvious reasons that I missed.
> 
> Wei.
> 


-- 
Best regards
Tianyu Lan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

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