lkml.org 
[lkml]   [2007]   [May]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: slub-i386-support.patch
Christoph Lameter wrote:
>> This is wrong; pgd's are smaller than PAGE_SIZE on PAE. Burning lowmem
>> like this is very, very bad for such systems. pmd_cache is rather
>> trivial to convert to quicklists, since all it does is zero pages. I
>> still don't approve of even the !SHARED_KERNEL_PMD case using PAGE_SIZE
>> -sized pgd's. Xen should really be fixed to avoid requiring guests to
>> have recursive pagetables or whatever it's doing.
>>
>
> But the Xen guys need the full sized pgd?
>

Yes, Xen needs a page-sized PGD. There are two reasons:

1. Xen inherently needs a whole page for the pgd, because it
classifies pages by type, and the pgd is a pagetable-typed page.
2. When the kernel mappings are not being shared between processes,
as in non-PAE or PAE with !SHARED_KERNEL_PMD, it maintains a
pgd_list linked though the index field in the page structure's
index field. For this to work, you can't have more than one pgd
per page. The pgd_list is needed to sync the vmalloc mappings
across all the pagetables.

Xen needs to set !SHARED_KERNEL_PMD for PAE when running a 32-bit kernel
under a 32-bit hypervisor; when running under a 64-bit hypervisor,
there's no need to steal any guest address space for the hypervisor. (I
haven't implemented this on the Linux side yet.)

J
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-05-10 23:25    [W:0.108 / U:0.880 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site