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

Re: [Xen-ia64-devel] [PATCH] tlb miss handler



Hi. Thanks for your comment.

On Thu, Jan 26, 2006 at 03:31:25PM +0100, Tristan Gingold wrote:
> Le Jeudi 26 Janvier 2006 13:59, Isaku Yamahata a écrit :
> > This patch is not for commit.  But for review, commnets.
> >
> > Current itlb/dtlb miss handlers don't handle a tlb miss
> > in xen/ia64 identity mapping area.
> > Such a miss might occur because xen/ia64 enables vhpt walker
> > even for region 7. (Please see set_one_rr())
> > I haven't encountered it yet, I'm guessing so from reading code.
> >
> > Vti itlb/dtlb miss handlers do it by checking psr.vm bits.
> > This patch is not so optimized for review,
> > but it should be done later.
> Quiet interesting because I have just worked a little bit in this area.
> 
> My comments:
> itlb miss must not occur, since Xen is mapped with a itm.

I agree with you about itlb miss.
Linux alt_itlb_miss handler handles it because Linux supports
loadable kernel module.
On the other hand xen/ia64 doesn't support it (currently),
so itlb miss in the identity mapping area must not occur.


> dtlb miss should not occur for the same reason, but they occur at least 
> during 
> start-up while Xen reads bootparams and EFI.  This is done before enabling 
> VHPT.

No. dtlb miss in the identity mapping area might occur.
xen/ia64 also uses the identity mapping to access domain pages.
Please see map_domain_page() definition in xen/include/xen/domain_page.h
(note: CONFIG_DOMAIN_PAGE is not defined for xen/ia64)
map_domain_page() is certainly used. 
E.g. page_scrub_softirq() in xen/commong/page_alloc.c.
It is invoked when a domain is destructed.
Fortunately(unfortunately?) xen/ia64 doesn't support domain
destruction now.
I guess it's the reason why we haven't met such a dtlb miss
except start-up.


> BTW, I think the size of the identity mapped region should be shrinked in 
> order to enabled virtual memory in Xen.  This will be necessary for virtual 
> mem map.  That's the point I have looked.

Why don't we use region 5?
Linux uses region 5 for virtual mem map
and xen/ia64 don't use the region 5 for now.

If we restricted the identity mapping region, we would have to
define CONFIG_DOMAIN_PAGE and implement needed functions.


-- 
yamahata

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


 


Rackspace

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