From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rolf Neugebauer Subject: Re: 2MB page PV guest support clarification Date: Mon, 02 Mar 2009 10:44:19 +0000 Message-ID: <49ABB883.7050903@netronome.com> References: <49A870E6.8050300@Sun.COM> <49A8770F.6070806@goop.org> <4FA716B1526C7C4DB0375C6DADBC4EA34172695B6F@LONPMAILBOX01.citrite.net> <49A88883.8090106@Sun.COM> <4FA716B1526C7C4DB0375C6DADBC4EA34172695B72@LONPMAILBOX01.citrite.net> <49A8954A.7080402@Sun.COM> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <49A8954A.7080402@Sun.COM> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Mick.Jordan@sun.com Cc: Ian Pratt , "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org Mick Jordan wrote: > On 02/27/09 17:28, Ian Pratt wrote: >>> You remark about aliasing prompts me to ask a general question about >>> that. I am currently mapping physical to virtual 1-1 (because that is >>> what minis-os has always done) as well as mapping parts of that to >>> other areas in virtual memory. Both of these are RW mappings. Is that >>> ok? It perfectly possible for me to unmap the 1-1 mappings or make them >>> RO if I have to. >>> >> >> Any page that is part of a pagetable must be mapped RO in every mapping to it. Attempting to add a page that has RW mappings to a pagetable will fail (either when you make the hypercall to add the PTE, or when you pin a constructed pagetable or try switching to it). >> >> >> Thus, you need to be careful with 1:1 maps to remove pages that may become PT pages. It's best to have a PT page allocator that tries to allocate PT's from contiguous regions and then recycles them. >> >> > Ok. I need to check this. Certainly I am at some point taking already > mapped pages and using them as pagetables. However, I am not getting any > errors when adding the PTE. So perhaps the code does the mapping change > already. In mini-os, new_pt_frame() will update the 1:1 mapping to mark a PT page RO before hooking it into the page table. rolf > > Mick > > > ------------------------------------------------------------------------ > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel