WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ia64-devel

Re: [Xen-ia64-devel] [PATCH] NEW_TLBFLUSH_CLOCK_PERIOD_SOFTIRQ is notreg

To: "Xu, Anthony" <anthony.xu@xxxxxxxxx>
Subject: Re: [Xen-ia64-devel] [PATCH] NEW_TLBFLUSH_CLOCK_PERIOD_SOFTIRQ is notregistered.
From: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Date: Mon, 29 Jan 2007 18:20:37 +0900
Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 29 Jan 2007 01:19:58 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <51CFAB8CB6883745AE7B93B3E084EBE26F7BAC@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20070129073526.GB28768%yamahata@xxxxxxxxxxxxx> <51CFAB8CB6883745AE7B93B3E084EBE26F7BAC@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.4.2.1i
On Mon, Jan 29, 2007 at 05:00:11PM +0800, Xu, Anthony wrote:
> Isaku Yamahata write on 2007年1月29日 15:35:
> > Hi Anthony.
> > 
> > On Mon, Jan 29, 2007 at 02:31:14PM +0800, Xu, Anthony wrote:
> > 
> >> Could you elaberate the purpose of new_tlbflush_clock_period?
> > 
> > Tlb flush clock is the optimization to try to remove unnecessary
> > flush of mCPU tlb cache or vhpt by NEED_FLUSH().
> > It uses a single counter, tlbflush_time, which is incremented when
> > mCPU tlb cache or vhpt is flushed.
> > When the counter overflows, something must be done.
> > new_tlbflush_clock_period() does it.
> 
> I don't catch why it can optimize NEED_FLUSH.
> Can you  explain more detail?

It doesn't optimize NEED_FLUSH itself.
The optimization path is executed when NEED_FLUSH return 0.
See flush_vtlb_for_context_switch() @ xen/arch/ia64/xehn/domain.c.

When CONFIG_XEN_IA64_TLBFLUSH_CLOCK is defined,
NEED_FLUSH() always returns 1. No optimization.
Suppose that CONFIG_XEN_IA64_TLBFLUSH_CLOCK is defined and
NEED_FLUSH() returns 0.
In that case, we can skip local_vhpt_flush() or local_flush_tlb_all().
-- 
yamahata

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