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

Re: [Xen-devel] [PATCH] xen: don't flush the TLB on grant unmap for auto-translated guests



>>> On 06.05.14 at 19:01, <david.vrabel@xxxxxxxxxx> wrote:
> On 06/05/14 17:37, Roger Pau Monne wrote:
>> For auto-translated guests the p2m code will do the necessary TLB
>> flushes, so there's no need to perform any TLB flushes in generic
>> grant table code.
>> 
>> Signed-off-by: Roger Pau Monnà <roger.pau@xxxxxxxxxx>
>> Cc: Jan Beulich <jbeulich@xxxxxxxx>
>> Cc: Tim Deegan <tim@xxxxxxx>
>> Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
>> ---
>>  xen/common/grant_table.c |   12 ++++++++----
>>  1 files changed, 8 insertions(+), 4 deletions(-)
>> 
>> diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c
>> index 107b000..a2a857f 100644
>> --- a/xen/common/grant_table.c
>> +++ b/xen/common/grant_table.c
>> @@ -1099,7 +1099,8 @@ gnttab_unmap_grant_ref(
>>              guest_handle_add_offset(uop, 1);
>>          }
>>  
>> -        flush_tlb_mask(current->domain->domain_dirty_cpumask);
>> +        if ( !paging_mode_external(current->domain) )
>> +            flush_tlb_mask(current->domain->domain_dirty_cpumask);
> 
> Introduce
> 
> void gnttab_flush_tlb(struct domain *d)
> {
>     if ( !paging_mode_external(d) )
>         flush_tlb_mask(d->domain_dirty_cpumask);
> }

Yes, please, but preferably as

static void gnttab_flush_tlb(const struct domain *d)

Also, while you might not be concerned about its performance,
I'd highly appreciate if the one remaining use (in gnttab_transfer())
would also be inspected and - if suitable - replaced (or else a note
added to the commit message clarifying why there the same can't
be done).

Jan

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

 


Rackspace

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