* [PATCH] i386: remove dead code in pgtable_cache_init
@ 2007-10-10 20:38 Jeremy Fitzhardinge
2007-10-10 21:09 ` Christoph Lameter
0 siblings, 1 reply; 3+ messages in thread
From: Jeremy Fitzhardinge @ 2007-10-10 20:38 UTC (permalink / raw)
To: Christoph Lameter
Cc: Andi Kleen, William Lee Irwin III, Ingo Molnar, Thomas Gleixner,
Andrew Morton, Linux Kernel Mailing List
The conversion from using a slab cache to quicklist left some residual dead code.
I note that in the conversion it now always allocates a whole page for
the pgd, rather than the 32 bytes needed for a PAE pgd. Was this
intended?
Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Cc: Christoph Lameter <clameter@sgi.com>
Cc: Andi Kleen <ak@suse.de>
Cc: William Lee Irwin III <wli@holomorphy.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
---
arch/i386/mm/init.c | 22 +++++-----------------
1 file changed, 5 insertions(+), 17 deletions(-)
===================================================================
--- a/arch/i386/mm/init.c
+++ b/arch/i386/mm/init.c
@@ -746,24 +746,12 @@ struct kmem_cache *pmd_cache;
void __init pgtable_cache_init(void)
{
- size_t pgd_size = PTRS_PER_PGD*sizeof(pgd_t);
-
- if (PTRS_PER_PMD > 1) {
+ if (PTRS_PER_PMD > 1)
pmd_cache = kmem_cache_create("pmd",
- PTRS_PER_PMD*sizeof(pmd_t),
- PTRS_PER_PMD*sizeof(pmd_t),
- SLAB_PANIC,
- pmd_ctor);
- if (!SHARED_KERNEL_PMD) {
- /* If we're in PAE mode and have a non-shared
- kernel pmd, then the pgd size must be a
- page size. This is because the pgd_list
- links through the page structure, so there
- can only be one pgd per page for this to
- work. */
- pgd_size = PAGE_SIZE;
- }
- }
+ PTRS_PER_PMD*sizeof(pmd_t),
+ PTRS_PER_PMD*sizeof(pmd_t),
+ SLAB_PANIC,
+ pmd_ctor);
}
/*
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] i386: remove dead code in pgtable_cache_init
2007-10-10 20:38 [PATCH] i386: remove dead code in pgtable_cache_init Jeremy Fitzhardinge
@ 2007-10-10 21:09 ` Christoph Lameter
2007-10-10 21:46 ` Jeremy Fitzhardinge
0 siblings, 1 reply; 3+ messages in thread
From: Christoph Lameter @ 2007-10-10 21:09 UTC (permalink / raw)
To: Jeremy Fitzhardinge
Cc: Andi Kleen, William Lee Irwin III, Ingo Molnar, Thomas Gleixner,
Andrew Morton, Linux Kernel Mailing List
On Wed, 10 Oct 2007, Jeremy Fitzhardinge wrote:
> The conversion from using a slab cache to quicklist left some residual dead code.
>
> I note that in the conversion it now always allocates a whole page for
> the pgd, rather than the 32 bytes needed for a PAE pgd. Was this
> intended?
I believe that virtualization support needed a full pgd.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] i386: remove dead code in pgtable_cache_init
2007-10-10 21:09 ` Christoph Lameter
@ 2007-10-10 21:46 ` Jeremy Fitzhardinge
0 siblings, 0 replies; 3+ messages in thread
From: Jeremy Fitzhardinge @ 2007-10-10 21:46 UTC (permalink / raw)
To: Christoph Lameter
Cc: Andi Kleen, William Lee Irwin III, Ingo Molnar, Thomas Gleixner,
Andrew Morton, Linux Kernel Mailing List
Christoph Lameter wrote:
> I believe that virtualization support needed a full pgd.
>
Yes, Xen requires it for PAE pgds, at least at the moment. But native,
lguest, vmi and kvm don't. I'd made it so that the memory overhead was
only paid in the Xen case. Allocating a whole page all the time
certainly simplifies things, but at the cost of more overhead for everyone.
If we move away from using the page->private field to link the pgds
together, then I can probably remove Xen's need to allocate a whole page
for PAE pgds.
J
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-10-10 21:55 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-10 20:38 [PATCH] i386: remove dead code in pgtable_cache_init Jeremy Fitzhardinge
2007-10-10 21:09 ` Christoph Lameter
2007-10-10 21:46 ` Jeremy Fitzhardinge
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox