|
|
|
|
|
|
|
|
|
|
xen-ia64-devel
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
|
|
|
|
|