[PATCH][RFC] remove /proc/ppc64/[np]aca

Stephen Rothwell sfr at canb.auug.org.au
Fri Dec 10 16:03:22 EST 2004


Hi all,

Paulus suggested that we don't need to expose the naca or the pacas to
usermode, so here is the patch that removes them.  It also removes all
the unnecessary #includes of naca.h and paca.h.  Build on iSeries, pSeries
and pmac.  Boots on pSeries (44P 270).

-- 
Cheers,
Stephen Rothwell                    sfr at canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/iSeries_pci.c linus-bk-naca.4a/arch/ppc64/kernel/iSeries_pci.c
--- linus-bk-naca.3a/arch/ppc64/kernel/iSeries_pci.c	2004-11-16 16:05:10.000000000 +1100
+++ linus-bk-naca.4a/arch/ppc64/kernel/iSeries_pci.c	2004-12-10 15:34:05.000000000 +1100
@@ -35,7 +35,6 @@
 #include <asm/machdep.h>
 #include <asm/pci-bridge.h>
 #include <asm/ppcdebug.h>
-#include <asm/naca.h>
 #include <asm/iommu.h>
 
 #include <asm/iSeries/HvCallPci.h>
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/iSeries_proc.c linus-bk-naca.4a/arch/ppc64/kernel/iSeries_proc.c
--- linus-bk-naca.3a/arch/ppc64/kernel/iSeries_proc.c	2004-10-22 07:00:21.000000000 +1000
+++ linus-bk-naca.4a/arch/ppc64/kernel/iSeries_proc.c	2004-12-10 15:34:33.000000000 +1100
@@ -24,7 +24,6 @@
 #include <asm/paca.h>
 #include <asm/processor.h>
 #include <asm/time.h>
-#include <asm/naca.h>
 #include <asm/iSeries/ItLpPaca.h>
 #include <asm/iSeries/ItLpQueue.h>
 #include <asm/iSeries/HvCallXm.h>
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/iSeries_smp.c linus-bk-naca.4a/arch/ppc64/kernel/iSeries_smp.c
--- linus-bk-naca.3a/arch/ppc64/kernel/iSeries_smp.c	2004-10-30 08:33:22.000000000 +1000
+++ linus-bk-naca.4a/arch/ppc64/kernel/iSeries_smp.c	2004-12-10 15:41:54.000000000 +1100
@@ -37,7 +37,6 @@
 #include <asm/pgtable.h>
 #include <asm/io.h>
 #include <asm/smp.h>
-#include <asm/naca.h>
 #include <asm/paca.h>
 #include <asm/iSeries/LparData.h>
 #include <asm/iSeries/HvCall.h>
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/pSeries_pci.c linus-bk-naca.4a/arch/ppc64/kernel/pSeries_pci.c
--- linus-bk-naca.3a/arch/ppc64/kernel/pSeries_pci.c	2004-12-09 02:58:40.000000000 +1100
+++ linus-bk-naca.4a/arch/ppc64/kernel/pSeries_pci.c	2004-12-10 15:32:47.000000000 +1100
@@ -36,7 +36,6 @@
 #include <asm/prom.h>
 #include <asm/machdep.h>
 #include <asm/pci-bridge.h>
-#include <asm/naca.h>
 #include <asm/iommu.h>
 #include <asm/rtas.h>
 
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/pSeries_smp.c linus-bk-naca.4a/arch/ppc64/kernel/pSeries_smp.c
--- linus-bk-naca.3a/arch/ppc64/kernel/pSeries_smp.c	2004-12-09 03:01:03.000000000 +1100
+++ linus-bk-naca.4a/arch/ppc64/kernel/pSeries_smp.c	2004-12-10 15:33:26.000000000 +1100
@@ -38,7 +38,6 @@
 #include <asm/io.h>
 #include <asm/prom.h>
 #include <asm/smp.h>
-#include <asm/naca.h>
 #include <asm/paca.h>
 #include <asm/time.h>
 #include <asm/ppcdebug.h>
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/pci_dn.c linus-bk-naca.4a/arch/ppc64/kernel/pci_dn.c
--- linus-bk-naca.3a/arch/ppc64/kernel/pci_dn.c	2004-10-25 18:18:33.000000000 +1000
+++ linus-bk-naca.4a/arch/ppc64/kernel/pci_dn.c	2004-12-10 15:33:44.000000000 +1100
@@ -33,7 +33,6 @@
 #include <asm/machdep.h>
 #include <asm/pci-bridge.h>
 #include <asm/ppcdebug.h>
-#include <asm/naca.h>
 #include <asm/iommu.h>
 
 #include "pci.h"
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/proc_ppc64.c linus-bk-naca.4a/arch/ppc64/kernel/proc_ppc64.c
--- linus-bk-naca.3a/arch/ppc64/kernel/proc_ppc64.c	2004-10-27 07:32:57.000000000 +1000
+++ linus-bk-naca.4a/arch/ppc64/kernel/proc_ppc64.c	2004-12-10 15:44:59.000000000 +1100
@@ -25,8 +25,6 @@
 #include <linux/slab.h>
 #include <linux/kernel.h>
 
-#include <asm/naca.h>
-#include <asm/paca.h>
 #include <asm/systemcfg.h>
 #include <asm/rtas.h>
 #include <asm/uaccess.h>
@@ -58,26 +56,6 @@
 #endif
 
 /*
- * NOTE: since paca data is always in flux the values will never be a
- * consistant set.
- */
-static void __init proc_create_paca(struct proc_dir_entry *dir, int num)
-{
-	struct proc_dir_entry *ent;
-	struct paca_struct *lpaca = paca + num;
-	char buf[16];
-
-	sprintf(buf, "%02x", num);
-	ent = create_proc_entry(buf, S_IRUSR, dir);
-	if (ent) {
-		ent->nlink = 1;
-		ent->data = lpaca;
-		ent->size = 4096;
-		ent->proc_fops = &page_map_fops;
-	}
-}
-
-/*
  * Create the ppc64 and ppc64/rtas directories early. This allows us to
  * assume that they have been previously created in drivers.
  */
@@ -104,17 +82,8 @@
 
 static int __init proc_ppc64_init(void)
 {
-	unsigned long i;
 	struct proc_dir_entry *pde;
 
-	pde = create_proc_entry("ppc64/naca", S_IRUSR, NULL);
-	if (!pde)
-		return 1;
-	pde->nlink = 1;
-	pde->data = naca;
-	pde->size = 4096;
-	pde->proc_fops = &page_map_fops;
-
 	pde = create_proc_entry("ppc64/systemcfg", S_IFREG|S_IRUGO, NULL);
 	if (!pde)
 		return 1;
@@ -123,13 +92,6 @@
 	pde->size = 4096;
 	pde->proc_fops = &page_map_fops;
 
-	/* /proc/ppc64/paca/XX -- raw paca contents.  Only readable to root */
-	pde = proc_mkdir("ppc64/paca", NULL);
-	if (!pde)
-		return 1;
-	for_each_cpu(i)
-		proc_create_paca(pde, i);
-
 #ifdef CONFIG_PPC_PSERIES
 	if ((systemcfg->platform & PLATFORM_PSERIES))
 		proc_ppc64_create_ofdt();
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/prom_init.c linus-bk-naca.4a/arch/ppc64/kernel/prom_init.c
--- linus-bk-naca.3a/arch/ppc64/kernel/prom_init.c	2004-12-08 12:07:34.000000000 +1100
+++ linus-bk-naca.4a/arch/ppc64/kernel/prom_init.c	2004-12-10 15:41:28.000000000 +1100
@@ -43,7 +43,6 @@
 #include <asm/system.h>
 #include <asm/mmu.h>
 #include <asm/pgtable.h>
-#include <asm/naca.h>
 #include <asm/pci.h>
 #include <asm/iommu.h>
 #include <asm/bootinfo.h>
diff -ruN linus-bk-naca.3a/arch/ppc64/kernel/smp.c linus-bk-naca.4a/arch/ppc64/kernel/smp.c
--- linus-bk-naca.3a/arch/ppc64/kernel/smp.c	2004-10-25 18:18:33.000000000 +1000
+++ linus-bk-naca.4a/arch/ppc64/kernel/smp.c	2004-12-10 15:22:44.000000000 +1100
@@ -41,7 +41,6 @@
 #include <asm/io.h>
 #include <asm/prom.h>
 #include <asm/smp.h>
-#include <asm/naca.h>
 #include <asm/paca.h>
 #include <asm/time.h>
 #include <asm/ppcdebug.h>
diff -ruN linus-bk-naca.3a/arch/ppc64/mm/init.c linus-bk-naca.4a/arch/ppc64/mm/init.c
--- linus-bk-naca.3a/arch/ppc64/mm/init.c	2004-11-04 16:05:08.000000000 +1100
+++ linus-bk-naca.4a/arch/ppc64/mm/init.c	2004-12-10 15:42:19.000000000 +1100
@@ -52,7 +52,6 @@
 #include <asm/smp.h>
 #include <asm/machdep.h>
 #include <asm/tlb.h>
-#include <asm/naca.h>
 #include <asm/eeh.h>
 #include <asm/processor.h>
 #include <asm/mmzone.h>
diff -ruN linus-bk-naca.3a/arch/ppc64/mm/slb.c linus-bk-naca.4a/arch/ppc64/mm/slb.c
--- linus-bk-naca.3a/arch/ppc64/mm/slb.c	2004-09-06 10:19:04.000000000 +1000
+++ linus-bk-naca.4a/arch/ppc64/mm/slb.c	2004-12-10 15:42:40.000000000 +1100
@@ -19,7 +19,6 @@
 #include <asm/mmu.h>
 #include <asm/mmu_context.h>
 #include <asm/paca.h>
-#include <asm/naca.h>
 #include <asm/cputable.h>
 
 extern void slb_allocate(unsigned long ea);
diff -ruN linus-bk-naca.3a/arch/ppc64/mm/stab.c linus-bk-naca.4a/arch/ppc64/mm/stab.c
--- linus-bk-naca.3a/arch/ppc64/mm/stab.c	2004-09-16 21:51:57.000000000 +1000
+++ linus-bk-naca.4a/arch/ppc64/mm/stab.c	2004-12-10 15:43:05.000000000 +1100
@@ -17,7 +17,6 @@
 #include <asm/mmu.h>
 #include <asm/mmu_context.h>
 #include <asm/paca.h>
-#include <asm/naca.h>
 #include <asm/cputable.h>
 
 /* Both the segment table and SLB code uses the following cache */
diff -ruN linus-bk-naca.3a/include/asm-ppc64/iSeries/LparData.h linus-bk-naca.4a/include/asm-ppc64/iSeries/LparData.h
--- linus-bk-naca.3a/include/asm-ppc64/iSeries/LparData.h	2002-09-18 12:00:50.000000000 +1000
+++ linus-bk-naca.4a/include/asm-ppc64/iSeries/LparData.h	2004-12-10 15:43:54.000000000 +1100
@@ -24,11 +24,9 @@
 #include <asm/page.h>
 #include <asm/abs_addr.h>
 
-#include <asm/naca.h>
 #include <asm/iSeries/ItLpNaca.h>
 #include <asm/iSeries/ItLpPaca.h>
 #include <asm/iSeries/ItLpRegSave.h>
-#include <asm/paca.h>
 #include <asm/iSeries/HvReleaseData.h>
 #include <asm/iSeries/LparMap.h>
 #include <asm/iSeries/ItVpdAreas.h>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://ozlabs.org/pipermail/linuxppc64-dev/attachments/20041210/deab33c5/attachment.pgp 


More information about the Linuxppc64-dev mailing list