public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Russell King <rmk@arm.linux.org.uk>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: linux-kernel@vger.kernel.org
Subject: page table cache init cleanup
Date: Mon, 27 Aug 2001 23:32:57 +0100	[thread overview]
Message-ID: <20010827233257.D28096@flint.arm.linux.org.uk> (raw)

Alan,

The following patch cleans up the page table cache init functions.
This is now a generic function across all architectures.  Dummy
definitions are placed in the relevant asm-*/pgtable.h.

Background: on X86 with PAE enabled, and ARM, we require a method
to initialise slab caches for page tables.  We'd rather not have a
plethora of ifdef'd function calls in init/main.c.

This patch was generated against 2.4.8-ac12.

--- orig/init/main.c	Sun Aug 26 17:30:59 2001
+++ linux/init/main.c	Mon Aug 27 23:00:17 2001
@@ -665,9 +666,8 @@
 #endif
 	mem_init();
 	kmem_cache_sizes_init();
-#if CONFIG_X86_PAE
-	init_pae_pgd_cache();
-#endif
+	pgtable_cache_init();
+
 	mempages = num_physpages;
 
 	fork_init(mempages);
--- orig/include/asm-alpha/pgtable.h	Sun Aug 26 17:30:41 2001
+++ linux/include/asm-alpha/pgtable.h	Mon Aug 27 23:21:08 2001
@@ -358,5 +358,10 @@
 extern void paging_init(void);
 
 #include <asm-generic/pgtable.h>
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
 
 #endif /* _ALPHA_PGTABLE_H */
--- orig/include/asm-cris/pgtable.h	Sat May 26 14:42:29 2001
+++ linux/include/asm-cris/pgtable.h	Mon Aug 27 23:21:08 2001
@@ -501,4 +501,9 @@
 
 #include <asm-generic/pgtable.h>
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* _CRIS_PGTABLE_H */
--- orig/include/asm-i386/pgtable.h	Sat Mar 31 23:47:43 2001
+++ linux/include/asm-i386/pgtable.h	Mon Aug 27 23:27:51 2001
@@ -105,8 +105,20 @@
 #ifndef __ASSEMBLY__
 #if CONFIG_X86_PAE
 # include <asm/pgtable-3level.h>
+
+/*
+ * Need to initialise the X86 PAE caches
+ */
+extern void pgtable_cache_init(void);
+
 #else
 # include <asm/pgtable-2level.h>
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif
 #endif
 
--- orig/include/asm-ia64/pgtable.h	Sat Aug 11 14:59:47 2001
+++ linux/include/asm-ia64/pgtable.h	Mon Aug 27 23:21:08 2001
@@ -472,5 +472,10 @@
 #define KERNEL_PG_SHIFT		_PAGE_SIZE_64M
 #define KERNEL_PG_SIZE		(1 << KERNEL_PG_SHIFT)
 #define KERNEL_PG_NUM		((KERNEL_START - PAGE_OFFSET) / KERNEL_PG_SIZE)
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
 
 #endif /* _ASM_IA64_PGTABLE_H */
--- orig/include/asm-m68k/pgtable.h	Wed Dec 13 00:00:25 2000
+++ linux/include/asm-m68k/pgtable.h	Mon Aug 27 23:21:08 2001
@@ -181,5 +181,10 @@
 #ifndef __ASSEMBLY__
 #include <asm-generic/pgtable.h>
 #endif /* !__ASSEMBLY__ */
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
 
 #endif /* _M68K_PGTABLE_H */
--- orig/include/asm-mips/pgtable.h	Fri Jul  6 09:55:23 2001
+++ linux/include/asm-mips/pgtable.h	Mon Aug 27 23:21:08 2001
@@ -743,5 +743,10 @@
 #endif /* !defined (_LANGUAGE_ASSEMBLY) */
 
 #define io_remap_page_range remap_page_range
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
 
 #endif /* _ASM_PGTABLE_H */
--- orig/include/asm-mips64/pgtable.h	Sun Aug 26 17:30:46 2001
+++ linux/include/asm-mips64/pgtable.h	Mon Aug 27 23:21:09 2001
@@ -798,5 +798,10 @@
 #include <asm-generic/pgtable.h>
 
 #endif /* !defined (_LANGUAGE_ASSEMBLY) */
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
 
 #endif /* _ASM_PGTABLE_H */
--- orig/include/asm-parisc/pgtable.h	Wed Dec 13 00:00:27 2000
+++ linux/include/asm-parisc/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -334,4 +334,9 @@
 
 #define io_remap_page_range remap_page_range
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* _PARISC_PAGE_H */
--- orig/include/asm-ppc/pgtable.h	Fri Jul  6 09:55:24 2001
+++ linux/include/asm-ppc/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -531,6 +531,11 @@
 
 #define io_remap_page_range remap_page_range 
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* __ASSEMBLY__ */
 #endif /* _PPC_PGTABLE_H */
 #endif /* __KERNEL__ */
--- orig/include/asm-ppc64/pgtable.h	Sun Aug 26 17:30:49 2001
+++ linux/include/asm-ppc64/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -438,5 +438,10 @@
 
 /* #include <asm-generic/pgtable.h> */
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* __ASSEMBLY__ */
 #endif /* _PPC64_PGTABLE_H */
--- orig/include/asm-s390/pgtable.h	Sat Aug 11 14:59:48 2001
+++ linux/include/asm-s390/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -472,6 +472,11 @@
 /* Needs to be defined here and not in linux/mm.h, as it is arch dependent */
 #define PageSkip(page)          (0)
 #define kern_addr_valid(addr)   (1)
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
 
 #endif /* _S390_PAGE_H */
 
--- orig/include/asm-s390x/pgtable.h	Sat Aug 11 14:59:49 2001
+++ linux/include/asm-s390x/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -492,5 +492,10 @@
 #define PageSkip(page)          (0)
 #define kern_addr_valid(addr)   (1)
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* _S390_PAGE_H */
 
--- orig/include/asm-sh/pgtable.h	Fri Jul  6 09:55:24 2001
+++ linux/include/asm-sh/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -275,6 +275,11 @@
 #define PageSkip(page)		(0)
 #define kern_addr_valid(addr)	(1)
 
 #define io_remap_page_range remap_page_range
+
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
 
 #endif /* __ASM_SH_PAGE_H */
--- orig/include/asm-sparc/pgtable.h	Sat Aug 11 14:59:49 2001
+++ linux/include/asm-sparc/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -454,4 +454,9 @@
 /* We provide our own get_unmapped_area to cope with VA holes for userland */
 #define HAVE_ARCH_UNMAPPED_AREA
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* !(_SPARC_PGTABLE_H) */
--- orig/include/asm-sparc64/pgtable.h	Sun Aug 26 17:30:51 2001
+++ linux/include/asm-sparc64/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -326,4 +326,9 @@
 
 #endif /* !(__ASSEMBLY__) */
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* !(_SPARC64_PGTABLE_H) */
--- orig/include/asm-um/pgtable.h	Sun Aug 26 17:30:51 2001
+++ linux/include/asm-um/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -365,6 +365,11 @@
 
 #endif
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif
 /*
  * Overrides for Emacs so that we follow Linus's tabbing style.
--- orig/include/asm-x86_64/pgtable.h	Sun Aug 26 17:30:53 2001
+++ linux/include/asm-x86_64/pgtable.h	Mon Aug 27 23:21:10 2001
@@ -398,4 +398,9 @@
 
 #define HAVE_ARCH_UNMAPPED_AREA
 
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init()	do { } while (0)
+
 #endif /* _X86_64_PGTABLE_H */

--
Russell King (rmk@arm.linux.org.uk)                The developer of ARM Linux
             http://www.arm.linux.org.uk/personal/aboutme.html


                 reply	other threads:[~2001-08-27 22:33 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20010827233257.D28096@flint.arm.linux.org.uk \
    --to=rmk@arm.linux.org.uk \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox