linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] remove unnecessary PAE pgd set
@ 2003-04-30 23:42 Dave Hansen
  2003-05-01  3:22 ` William Lee Irwin III
  0 siblings, 1 reply; 4+ messages in thread
From: Dave Hansen @ 2003-04-30 23:42 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-mm, Paul Larson

[-- Attachment #1: Type: text/plain, Size: 444 bytes --]

With PAE on, there are only 4 PGD entries.  The kernel ones never
change, so there is no need to copy them when a vmalloc fault occurs.
This was this was causing problems with the split pmd patches, but it is
still correct for mainline.

Tested with and without PAE.  I ran it in a loop turning on and off 10
swap partitions, which is what excited the original bug.
http://bugme.osdl.org/show_bug.cgi?id=640
-- 
Dave Hansen
haveblue@us.ibm.com

[-- Attachment #2: vmal_fault-optimization-PAE-2.5.68-0.patch --]
[-- Type: text/plain, Size: 553 bytes --]

--- linux-2.5.68-vmal_fault/arch/i386/mm/fault.c.orig	Wed Apr 30 13:36:49 2003
+++ linux-2.5.68-vmal_fault/arch/i386/mm/fault.c	Wed Apr 30 13:36:18 2003
@@ -405,7 +405,15 @@
 
 		if (!pgd_present(*pgd_k))
 			goto no_context;
+		/*
+		 * kernel pmd pages are shared among all processes
+		 * with PAE on.  Since vmalloc pages are always
+		 * in the kernel area, this will always be a 
+		 * waste with PAE on.
+		 */
+#ifndef CONFIG_X86_PAE
 		set_pgd(pgd, *pgd_k);
+#endif
 		
 		pmd = pmd_offset(pgd, address);
 		pmd_k = pmd_offset(pgd_k, address);

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2003-05-01  3:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-04-30 23:42 [PATCH] remove unnecessary PAE pgd set Dave Hansen
2003-05-01  3:22 ` William Lee Irwin III
2003-05-01  3:39   ` Dave Hansen
2003-05-01  3:45     ` William Lee Irwin III

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox