Kernel KVM-PPC virtualization development
 help / color / mirror / Atom feed
From: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
To: kvm-ppc@vger.kernel.org
Subject: Re: [PATCH 4 of 5] kvm: ppc: Write only modified shadow entries into
Date: Mon, 11 Aug 2008 11:47:46 +0000	[thread overview]
Message-ID: <48A026E2.8010701@linux.vnet.ibm.com> (raw)
In-Reply-To: <c832dfc7a6b50ace3c37.1217012092@localhost.localdomain>

Liu Yu wrote:
>> -----Original Message-----
>> From: Christian Ehrhardt [mailto:ehrhardt@linux.vnet.ibm.com] 
>> Sent: Monday, August 11, 2008 4:33 PM
>> To: Liu Yu
>> Cc: Hollis Blanchard; kvm-ppc@vger.kernel.org
>> Subject: Re: [PATCH 4 of 5] kvm: ppc: Write only modified 
>> shadow entries into theTLB on exit
>>
>> Liu Yu wrote:
>>     
>>>   
>>>       
>>>> -----Original Message-----
>>>> From: kvm-ppc-owner@vger.kernel.org
>>>> [mailto:kvm-ppc-owner@vger.kernel.org] On Behalf Of Hollis 
>>>>         
>> Blanchard
>>     
>>>> Sent: Saturday, July 26, 2008 2:55 AM
>>>> To: avi@qumranet.com
>>>> Cc: kvm-ppc@vger.kernel.org; kvm@vger.kernel.org
>>>> Subject: [PATCH 4 of 5] kvm: ppc: Write only modified 
>>>>         
>> shadow entries 
>>     
>>>> into theTLB on exit
>>>>
>>>> @@ -229,6 +235,7 @@ void kvmppc_mmu_priv_switch(struct kvm_v
>>>>  
>>>>  		kvmppc_44x_shadow_release(vcpu, i);
>>>>  		stlbe->word0 = 0;
>>>> +		kvmppc_tlbe_set_modified(vcpu, i);
>>>>  		KVMTRACE_5D(STLB_INVAL, vcpu, i,
>>>>  				stlbe->tid, stlbe->word0, stlbe->word1,
>>>>  				stlbe->word2, handler);
>>>>     
>>>>         
>>> Can this place use "_tlbia()" instead?
>>>   
>>>       
>> Hi Liu,
>> when we exit&reenter a guest on the lightweight path this 
>> patch saves us from rebuilding too much of the tlb.
>> It's just the point of the patch to not invalidate all tlb 
>> entries on every exit, but keeping as much as possible.
>> Additionally I'm not even sure if tlbia is available on all 
>> cores used.
>>
>> Am I overlooking something ? - what do you think would be the 
>> benefit of using _tlbia() here?
>> Do you mean the loop to clear up to the hwater mark where 
>> this patch makes changes and not this patch itself?
>>
>>     
>
> Yes.
>
> When you set nearly all tlb entries modified in this loop,
> you have to write all of them back before entering the guest in booke_interrupts.S.
>
> So, why not "_tlbia()" here outside this loop, and don't set them modified.
> Then, you needn't write them back.
> In fact, the shadow tlb entries are still consistent with the hardware, as all of them are invalidated.
>
> Am I overlooking something ?
>   
As Hollis wrote in his patch comment usually just one tlb entry is 
modified which saves a lot of updates.
If we invalidate all we later on would have to satisfy the misses we 
cause by doing so.

With some free time we could test _tlbia() here, but I expect it to be 
slower by causing the need for tlb re-population compared to what we 
save here.

-- 

Grüsse / regards, 
Christian Ehrhardt
IBM Linux Technology Center, Open Virtualization


  parent reply	other threads:[~2008-08-11 11:47 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-25 18:54 [PATCH 0 of 5] PowerPC patches for 2.6.27 Hollis Blanchard
     [not found] ` <patchbomb.1217012088-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-07-25 18:54   ` [PATCH 1 of 5] kvm: ppc: guest breakpoint support Hollis Blanchard
2008-07-25 18:54   ` [PATCH 2 of 5] kvm: ppc: fix invalidation of large guest pages Hollis Blanchard
2008-07-25 18:54   ` [PATCH 3 of 5] kvm: ppc: Stop saving host TLB state Hollis Blanchard
2008-07-25 18:54   ` [PATCH 4 of 5] kvm: ppc: Write only modified shadow entries into the Hollis Blanchard
2008-08-07  8:40     ` [PATCH 4 of 5] kvm: ppc: Write only modified shadow entries into theTLB on exit Liu Yu
2008-08-11  8:33     ` [PATCH 4 of 5] kvm: ppc: Write only modified shadow entries into Christian Ehrhardt
2008-08-11  8:55     ` [PATCH 4 of 5] kvm: ppc: Write only modified shadow entries into theTLB on exit Liu Yu
2008-08-11 11:47     ` Christian Ehrhardt [this message]
2008-08-12  2:00     ` Liu Yu
2008-08-12  8:04     ` [PATCH 4 of 5] kvm: ppc: Write only modified shadow entries into Christian Ehrhardt
2008-08-12  8:49     ` [PATCH 4 of 5] kvm: ppc: Write only modified shadow entries into theTLB on exit Liu Yu
2008-07-25 18:54   ` [PATCH 5 of 5] kvm: powerpc: Map guest userspace with TID=0 mappings Hollis Blanchard
     [not found]     ` <080b9c9515a5593babc8.1217012093-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2008-07-28 10:33       ` Liu Yu
2008-07-29  7:03         ` Christian Ehrhardt
2008-07-29  7:48           ` Liu Yu
2008-07-29 10:56             ` Liu Yu
2008-07-27  8:50   ` [PATCH 0 of 5] PowerPC patches for 2.6.27 Avi Kivity
     [not found]     ` <488C36DE.70507-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2008-07-29  7:20       ` Christian Ehrhardt
2008-07-29 13:00         ` Avi Kivity

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48A026E2.8010701@linux.vnet.ibm.com \
    --to=ehrhardt@linux.vnet.ibm.com \
    --cc=kvm-ppc@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox