lkml.org 
[lkml]   [2012]   [Dec]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [GIT PULL] x86/uapi for 3.8
On 12/17/2012 09:03 AM, Jan Beulich wrote:
>>>> On 17.12.12 at 17:39, "H. Peter Anvin" <hpa@linux.intel.com> wrote:
>> Right, I think you nailed this one. This patch copies PTEs from the
>> kernel PTEs and thus they will have the global bit set. It obviously
>> makes no sense to *copy* PTEs from the kernel and yet leaving the global
>> bit set, which means there are two ways of fixing it: either sharing
>> page tables and use the cr4.pge off/on trick that Jan mentioned -- this
>> would also be my preference -- and the other is to copy the PTEs but
>> strip the global bit, which has the advantage that the actual kernel
>> mappings will survive.
>
> PTE copying is only one half of it. I think additionally L4 entries
> get copied for the 1:1 mapping, and you can't strip the global
> bits there without allocating separate page tables.
>

The point right now is that it *does* allocate separate page tables, but
doesn't take advantage of it. What I say is I think we should take the
flush for the advantage of sharing page tables. If we are allocating
new page tables then we should of course make them non-global.

Do we know how often this gets called? I presume the most common case
is when we have an EFI RTC? Unless there is a use case where this
happens a lot sharing seems much easier...

-hpa




\
 
 \ /
  Last update: 2012-12-17 19:01    [W:0.101 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site