Skip to contentSkip to conversation

sn2 module (& other misc.) fixes

PATCH In review Jesse Barnes 3 participants 9 messages Aug 4, 2003 – Aug 5, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 sn2 module (& other misc.) fixes

This one goes on top of the one I sent you last week. I'm shooting for making Linus' tree boot on sn2 as well...

Thanks,
Jesse

arch/ia64/sn/io/hwgfs/hcl.c +0 -1
diff -Nru a/arch/ia64/sn/io/hwgfs/hcl.c b/arch/ia64/sn/io/hwgfs/hcl.c
@@ -898,6 +898,5 @@
 EXPORT_SYMBOL(hwgraph_info_get_next_LBL);
 EXPORT_SYMBOL(hwgraph_info_export_LBL);
 EXPORT_SYMBOL(hwgraph_info_unexport_LBL);
-EXPORT_SYMBOL(hwgraph_path_lookup);
 EXPORT_SYMBOL(hwgraph_traverse);
 EXPORT_SYMBOL(hwgraph_vertex_name_get);
arch/ia64/sn/io/machvec/iomv.c +1 -0
diff -Nru a/arch/ia64/sn/io/machvec/iomv.c b/arch/ia64/sn/io/machvec/iomv.c
@@ -73,3 +73,4 @@
 				SH_PIO_WRITE_STATUS_0_PENDING_WRITE_COUNT_MASK)
 		udelay(1);
 }
+EXPORT_SYMBOL(sn_mmiob);
arch/ia64/sn/io/machvec/pci_bus_cvlink.c +2 -2
diff -Nru a/arch/ia64/sn/io/machvec/pci_bus_cvlink.c b/arch/ia64/sn/io/machvec/pci_bus_cvlink.c
@@ -455,7 +455,7 @@
 	struct sn_widget_sysdata *widget_sysdata;
 	struct sn_device_sysdata *device_sysdata;
 	pciio_intr_t intr_handle;
-	int cpuid, bit;
+	int cpuid;
 	vertex_hdl_t device_vertex;
 	pciio_intr_line_t lines;
 	extern void sn_pci_find_bios(void);
@@ -951,7 +951,7 @@
 
 	sn_pci_fixup(1);	/* phase 1 fixups (after buses scanned) */
 
-	return;
+	return 0;
 }
 
 subsys_initcall(sn_pci_init);
arch/ia64/sn/io/sn2/ml_SN_init.c +2 -0
diff -Nru a/arch/ia64/sn/io/sn2/ml_SN_init.c b/arch/ia64/sn/io/sn2/ml_SN_init.c
@@ -10,6 +10,7 @@
 #include <linux/types.h>
 #include <linux/slab.h>
 #include <linux/bootmem.h>
+#include <linux/module.h>
 #include <asm/sn/sgi.h>
 #include <asm/sn/io.h>
 #include <asm/sn/iograph.h>
@@ -29,6 +30,7 @@
 
 nasid_t master_nasid = INVALID_NASID;		/* This is the partition master nasid */
 nasid_t master_baseio_nasid = INVALID_NASID;	/* This is the master base I/O nasid */
+EXPORT_SYMBOL(master_nasid);
 
 
 /*
arch/ia64/sn/io/sn2/ml_iograph.c +2 -0
diff -Nru a/arch/ia64/sn/io/sn2/ml_iograph.c b/arch/ia64/sn/io/sn2/ml_iograph.c
@@ -10,6 +10,7 @@
 #include <linux/types.h>
 #include <linux/slab.h>
 #include <linux/ctype.h>
+#include <linux/module.h>
 #include <asm/sn/sgi.h>
 #include <asm/sn/sn_sal.h>
 #include <asm/sn/io.h>
@@ -876,6 +877,7 @@
  */
 int num_base_io_scsi_ctlr = 2; /* used by syssgi */
 vertex_hdl_t		base_io_scsi_ctlr_vhdl[NUM_BASE_IO_SCSI_CTLR];
+EXPORT_SYMBOL(base_io_scsi_ctlr_vhdl);
 
 #include <asm/sn/ioerror_handling.h>
 /* #endif */
arch/ia64/sn/io/sn2/shub.c +1 -2
diff -Nru a/arch/ia64/sn/io/sn2/shub.c b/arch/ia64/sn/io/sn2/shub.c
@@ -199,10 +199,9 @@
 {
         cnodeid_t       cnode;
         uint64_t        longarg;
-        vertex_hdl_t	d;
 	int		nasid;
 
-        cnode = (cnodeid_t)hwgraph_fastinfo_get(d);
+        cnode = (cnodeid_t)file->f_dentry->d_fsdata;
 
         switch (cmd) {
 	case SNDRV_SHUB_CONFIGURE:
arch/ia64/sn/io/sn2/shuberror.c +0 -1
diff -Nru a/arch/ia64/sn/io/sn2/shuberror.c b/arch/ia64/sn/io/sn2/shuberror.c
@@ -52,7 +52,6 @@
 hub_error_clear(nasid_t nasid)
 {
 	int i;
-	hubreg_t idsr;
 
     /*
      * Make sure spurious write response errors are cleared
arch/ia64/sn/kernel/setup.c +6 -0
diff -Nru a/arch/ia64/sn/kernel/setup.c b/arch/ia64/sn/kernel/setup.c
@@ -51,6 +51,7 @@
 #include <linux/compiler.h>
 #include <linux/sched.h>
 #include <linux/root_dev.h>
+#include <linux/module.h>
 
 #include <asm/io.h>
 #include <asm/sal.h>
@@ -88,10 +89,15 @@
 unsigned long sn_rtc_cycles_per_second;   
 
 partid_t sn_partid = -1;
+EXPORT_SYMBOL(sn_partid);
+
 char sn_system_serial_number_string[128];
 u64 sn_partition_serial_number;
+EXPORT_SYMBOL(sn_system_serial_number_string);
+EXPORT_SYMBOL(sn_partition_serial_number);
 
 short physical_node_map[MAX_PHYSNODE_ID];
+EXPORT_SYMBOL(physical_node_map);
 
 /*
  * This is the address of the RRegs in the HSpace of the global
arch/ia64/sn/kernel/sn2/cache.c +4 -1
diff -Nru a/arch/ia64/sn/kernel/sn2/cache.c b/arch/ia64/sn/kernel/sn2/cache.c
@@ -8,7 +8,9 @@
  *
  */
 
-#include <asm/pgalloc.h>
+#include <linux/module.h>
+#include <asm/cacheflush.h>
+#include <asm/system.h>
 
 /**
  * sn_flush_all_caches - flush a range of address from all caches (incl. L4)
@@ -26,3 +28,4 @@
 	flush_icache_range(flush_addr, flush_addr+bytes);
 	mb();
 }
+EXPORT_SYMBOL(sn_flush_all_caches);
arch/ia64/sn/kernel/sn2/sn2_smp.c +2 -0
diff -Nru a/arch/ia64/sn/kernel/sn2/sn2_smp.c b/arch/ia64/sn/kernel/sn2/sn2_smp.c
@@ -41,6 +41,7 @@
 #include <linux/interrupt.h>
 #include <linux/irq.h>
 #include <linux/mmzone.h>
+#include <linux/module.h>
 
 #include <asm/processor.h>
 #include <asm/irq.h>
@@ -214,6 +215,7 @@
 	}
 
 }
+EXPORT_SYMBOL(sn_send_IPI_phys);
 
 /**
  * sn2_send_IPI - send an IPI to a processor
arch/ia64/sn/kernel/sn_ksyms.c +4 -27
diff -Nru a/arch/ia64/sn/kernel/sn_ksyms.c b/arch/ia64/sn/kernel/sn_ksyms.c
@@ -13,48 +13,25 @@
 
 #include <linux/config.h>
 #include <linux/module.h>
-
+#include <linux/mm.h>
 #include <asm/machvec.h>
 #include <asm/sn/intr.h>
-
-#include <linux/mm.h>
 #include <asm/sn/sgi.h>
-extern vertex_hdl_t          base_io_scsi_ctlr_vhdl[];
 #include <asm/sn/types.h>
-extern cnodeid_t master_node_get(devfs_handle_t vhdl);
 #include <asm/sn/arch.h>
-EXPORT_SYMBOL(base_io_scsi_ctlr_vhdl);
-EXPORT_SYMBOL(master_node_get);
+#include <asm/sn/bte.h>
+#include <asm/sal.h>
+#include <asm/sn/sn_sal.h>
 
 #ifdef CONFIG_IA64_SGI_SN_DEBUG
 EXPORT_SYMBOL(__pa_debug);
 EXPORT_SYMBOL(__va_debug);
 #endif
 
-/* Support IPIs for loaded modules. */
-EXPORT_SYMBOL(sn_send_IPI_phys);
-
-/* symbols referenced by partitioning modules */
-#include <asm/sn/bte.h>
 EXPORT_SYMBOL(bte_copy);
 EXPORT_SYMBOL(bte_unaligned_copy);
-#include <asm/sal.h>
 EXPORT_SYMBOL(ia64_sal);
-EXPORT_SYMBOL(physical_node_map);
-
-#include <asm/sn/sn_sal.h>
 EXPORT_SYMBOL(sal_lock);
-EXPORT_SYMBOL(sn_partid);
 EXPORT_SYMBOL(sn_local_partid);
-EXPORT_SYMBOL(sn_system_serial_number_string);
-EXPORT_SYMBOL(sn_partition_serial_number);
-
-EXPORT_SYMBOL(sn_mmiob);
-
-/* added by tduffy 04.08.01 to fix depmod issues */
-#include <linux/mmzone.h>
 
-extern nasid_t master_nasid;
-EXPORT_SYMBOL(master_nasid);
 
-EXPORT_SYMBOL(sn_flush_all_caches);
include/asm-ia64/sn/xtalk/xtalk.h +1 -1
diff -Nru a/include/asm-ia64/sn/xtalk/xtalk.h b/include/asm-ia64/sn/xtalk/xtalk.h
@@ -19,7 +19,7 @@
 /*
  * User-level device driver visible types
  */
-typedef char            xwidgetnum_t;	/* xtalk widget number  (0..15) */
+typedef int            xwidgetnum_t;	/* xtalk widget number  (0..15) */
 
 #define XWIDGET_NONE		(-1)
 
#1 lore raw
Quoted 2 lines · Jesse Barnes

nasid_t master_baseio_nasid = INVALID_NASID; /* This is the master base I/O nasid */
+EXPORT_SYMBOL(master_nasid);

why is this exported?

Quoted 3 lines

int num_base_io_scsi_ctlr = 2; /* used by syssgi */
vertex_hdl_t base_io_scsi_ctlr_vhdl[NUM_BASE_IO_SCSI_CTLR];
+EXPORT_SYMBOL(base_io_scsi_ctlr_vhdl);

Why do you want this export. Or rather why does this tasteless stuff exist at all? (And the comment looks wrong, too..)

arch/ia64/sn/kernel/setup.c line 100

Quoted 10 lines

partid_t sn_partid = -1;

arch/ia64/sn/kernel/setup.c +5 -0
+EXPORT_SYMBOL(sn_partid);
+
 char sn_system_serial_number_string[128];
 u64 sn_partition_serial_number;
+EXPORT_SYMBOL(sn_system_serial_number_string);
+EXPORT_SYMBOL(sn_partition_serial_number);
 
 short physical_node_map[MAX_PHYSNODE_ID];
+EXPORT_SYMBOL(physical_node_map);

Again, what is all this for?

#2 lore raw
In reply to Jesse Barnes
Quoted 5 lines · Christoph Hellwig
Quoted 2 lines · Jesse Barnes

nasid_t master_baseio_nasid = INVALID_NASID; /* This is the master base I/O nasid */
+EXPORT_SYMBOL(master_nasid);

why is this exported?

Because no one's ripped it out yet.

Quoted 6 lines
Quoted 3 lines

int num_base_io_scsi_ctlr = 2; /* used by syssgi */
vertex_hdl_t base_io_scsi_ctlr_vhdl[NUM_BASE_IO_SCSI_CTLR];
+EXPORT_SYMBOL(base_io_scsi_ctlr_vhdl);

Why do you want this export. Or rather why does this tasteless stuff exist at all? (And the comment looks wrong, too..)

Same here.

Quoted 7 lines

arch/ia64/sn/kernel/setup.c line 97

Quoted 7 lines

partid_t sn_partid = -1;

arch/ia64/sn/kernel/setup.c +4 -0
+EXPORT_SYMBOL(sn_partid);
+
 char sn_system_serial_number_string[128];
 u64 sn_partition_serial_number;
+EXPORT_SYMBOL(sn_system_serial_number_string);
+EXPORT_SYMBOL(sn_partition_serial_number);

Modules.

Quoted 4 lines
Quoted 2 lines

short physical_node_map[MAX_PHYSNODE_ID];
+EXPORT_SYMBOL(physical_node_map);

Again, what is all this for?

Modules.

Jesse

#3 lore raw
In reply to Jesse Barnes
Quoted 8 lines · Jesse Barnes
Quoted 5 lines · Christoph Hellwig
Quoted 2 lines · Jesse Barnes

nasid_t master_baseio_nasid = INVALID_NASID; /* This is the master base I/O nasid */
+EXPORT_SYMBOL(master_nasid);

why is this exported?

Because no one's ripped it out yet.

So rip it out :)

Quoted 7 lines
Quoted 4 lines

arch/ia64/sn/kernel/setup.c line 97

Quoted 4 lines

char sn_system_serial_number_string[128];
u64 sn_partition_serial_number;

arch/ia64/sn/kernel/setup.c +2 -0
+EXPORT_SYMBOL(sn_system_serial_number_string);
+EXPORT_SYMBOL(sn_partition_serial_number);

Modules.

Quoted 6 lines
Quoted 4 lines
Quoted 2 lines

short physical_node_map[MAX_PHYSNODE_ID];
+EXPORT_SYMBOL(physical_node_map);

Again, what is all this for?

Modules.

What modules. My limited grep abilities can't find users and I don't really see much proper use for those either..

#4 lore raw
In reply to Jesse Barnes
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line · On Mon, 4 Aug 2003 14:14:04 -0700, [email protected] (Jesse Barnes) said:

Jesse> This one goes on top of the one I sent you last week. I'm Jesse> shooting for making Linus' tree boot on sn2 as well...

This one didn't apply for me. I just updated the to-linus-2.5 tree. Can you rediff against that?

Thanks,

	--david
#5 lore raw
In reply to Jesse Barnes
Quoted 7 lines · David Mosberger
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line · On Mon, 4 Aug 2003 14:14:04 -0700, [email protected] (Jesse Barnes) said:

Jesse> This one goes on top of the one I sent you last week. I'm Jesse> shooting for making Linus' tree boot on sn2 as well...

This one didn't apply for me. I just updated the to-linus-2.5 tree. Can you rediff against that?

Sure, does this one work for you?

Thanks,
Jesse

arch/ia64/sn/io/hwgfs/hcl.c +0 -1
diff -Nru a/arch/ia64/sn/io/hwgfs/hcl.c b/arch/ia64/sn/io/hwgfs/hcl.c
@@ -898,6 +898,5 @@
 EXPORT_SYMBOL(hwgraph_info_get_next_LBL);
 EXPORT_SYMBOL(hwgraph_info_export_LBL);
 EXPORT_SYMBOL(hwgraph_info_unexport_LBL);
-EXPORT_SYMBOL(hwgraph_path_lookup);
 EXPORT_SYMBOL(hwgraph_traverse);
 EXPORT_SYMBOL(hwgraph_vertex_name_get);
arch/ia64/sn/io/machvec/iomv.c +1 -0
diff -Nru a/arch/ia64/sn/io/machvec/iomv.c b/arch/ia64/sn/io/machvec/iomv.c
@@ -73,3 +73,4 @@
 				SH_PIO_WRITE_STATUS_0_PENDING_WRITE_COUNT_MASK)
 		udelay(1);
 }
+EXPORT_SYMBOL(sn_mmiob);
arch/ia64/sn/io/sn2/shub.c +1 -2
diff -Nru a/arch/ia64/sn/io/sn2/shub.c b/arch/ia64/sn/io/sn2/shub.c
@@ -199,10 +199,9 @@
 {
         cnodeid_t       cnode;
         uint64_t        longarg;
-        vertex_hdl_t	d;
 	int		nasid;
 
-        cnode = (cnodeid_t)hwgraph_fastinfo_get(d);
+        cnode = (cnodeid_t)file->f_dentry->d_fsdata;
 
         switch (cmd) {
 	case SNDRV_SHUB_CONFIGURE:
arch/ia64/sn/io/sn2/shuberror.c +0 -1
diff -Nru a/arch/ia64/sn/io/sn2/shuberror.c b/arch/ia64/sn/io/sn2/shuberror.c
@@ -52,7 +52,6 @@
 hub_error_clear(nasid_t nasid)
 {
 	int i;
-	hubreg_t idsr;
 
     /*
      * Make sure spurious write response errors are cleared
arch/ia64/sn/kernel/sn2/cache.c +4 -1
diff -Nru a/arch/ia64/sn/kernel/sn2/cache.c b/arch/ia64/sn/kernel/sn2/cache.c
@@ -8,7 +8,9 @@
  *
  */
 
-#include <asm/pgalloc.h>
+#include <linux/module.h>
+#include <asm/cacheflush.h>
+#include <asm/system.h>
 
 /**
  * sn_flush_all_caches - flush a range of address from all caches (incl. L4)
@@ -26,3 +28,4 @@
 	flush_icache_range(flush_addr, flush_addr+bytes);
 	mb();
 }
+EXPORT_SYMBOL(sn_flush_all_caches);
arch/ia64/sn/kernel/sn2/sn2_smp.c +2 -0
diff -Nru a/arch/ia64/sn/kernel/sn2/sn2_smp.c b/arch/ia64/sn/kernel/sn2/sn2_smp.c
@@ -41,6 +41,7 @@
 #include <linux/interrupt.h>
 #include <linux/irq.h>
 #include <linux/mmzone.h>
+#include <linux/module.h>
 
 #include <asm/processor.h>
 #include <asm/irq.h>
@@ -214,6 +215,7 @@
 	}
 
 }
+EXPORT_SYMBOL(sn_send_IPI_phys);
 
 /**
  * sn2_send_IPI - send an IPI to a processor
arch/ia64/sn/kernel/sn_ksyms.c +4 -27
diff -Nru a/arch/ia64/sn/kernel/sn_ksyms.c b/arch/ia64/sn/kernel/sn_ksyms.c
@@ -13,48 +13,25 @@
 
 #include <linux/config.h>
 #include <linux/module.h>
-
+#include <linux/mm.h>
 #include <asm/machvec.h>
 #include <asm/sn/intr.h>
-
-#include <linux/mm.h>
 #include <asm/sn/sgi.h>
-extern vertex_hdl_t          base_io_scsi_ctlr_vhdl[];
 #include <asm/sn/types.h>
-extern cnodeid_t master_node_get(devfs_handle_t vhdl);
 #include <asm/sn/arch.h>
-EXPORT_SYMBOL(base_io_scsi_ctlr_vhdl);
-EXPORT_SYMBOL(master_node_get);
+#include <asm/sn/bte.h>
+#include <asm/sal.h>
+#include <asm/sn/sn_sal.h>
 
 #ifdef CONFIG_IA64_SGI_SN_DEBUG
 EXPORT_SYMBOL(__pa_debug);
 EXPORT_SYMBOL(__va_debug);
 #endif
 
-/* Support IPIs for loaded modules. */
-EXPORT_SYMBOL(sn_send_IPI_phys);
-
-/* symbols referenced by partitioning modules */
-#include <asm/sn/bte.h>
 EXPORT_SYMBOL(bte_copy);
 EXPORT_SYMBOL(bte_unaligned_copy);
-#include <asm/sal.h>
 EXPORT_SYMBOL(ia64_sal);
-EXPORT_SYMBOL(physical_node_map);
-
-#include <asm/sn/sn_sal.h>
 EXPORT_SYMBOL(sal_lock);
-EXPORT_SYMBOL(sn_partid);
 EXPORT_SYMBOL(sn_local_partid);
-EXPORT_SYMBOL(sn_system_serial_number_string);
-EXPORT_SYMBOL(sn_partition_serial_number);
-
-EXPORT_SYMBOL(sn_mmiob);
-
-/* added by tduffy 04.08.01 to fix depmod issues */
-#include <linux/mmzone.h>
 
-extern nasid_t master_nasid;
-EXPORT_SYMBOL(master_nasid);
 
-EXPORT_SYMBOL(sn_flush_all_caches);
include/asm-ia64/sn/xtalk/xtalk.h +1 -1
diff -Nru a/include/asm-ia64/sn/xtalk/xtalk.h b/include/asm-ia64/sn/xtalk/xtalk.h
@@ -19,7 +19,7 @@
 /*
  * User-level device driver visible types
  */
-typedef char            xwidgetnum_t;	/* xtalk widget number  (0..15) */
+typedef int            xwidgetnum_t;	/* xtalk widget number  (0..15) */
 
 #define XWIDGET_NONE		(-1)
 
#6 lore raw
In reply to Jesse Barnes
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line · On Mon, 4 Aug 2003 17:06:31 -0700, [email protected] (Jesse Barnes) said:

Jesse> On Mon, Aug 04, 2003 at 04:31:32PM -0700, David Mosberger

Quoted 2 lines · Jesse> wrote:
Quoted 2 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

On Mon, 4 Aug 2003 14:14:04 -0700, [email protected] (Jesse

Barnes) said:

Jesse> This one goes on top of the one I sent you last week. I'm Jesse> shooting for making Linus' tree boot on sn2 as well...

Quoted 2 lines
Quoted 2 lines

This one didn't apply for me. I just updated the to-linus-2.5
tree. Can you rediff against that?

Jesse> Sure, does this one work for you?

Yes, this one worked. It's in my tree now.

	--david
#7 lore raw
In reply to Jesse Barnes
Quoted 7 lines · David Mosberger
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line · On Mon, 4 Aug 2003 17:06:31 -0700, [email protected] (Jesse Barnes) said:

Jesse> On Mon, Aug 04, 2003 at 04:31:32PM -0700, David Mosberger

Quoted 2 lines · Jesse> wrote:
Quoted 2 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

On Mon, 4 Aug 2003 14:14:04 -0700, [email protected] (Jesse

Barnes) said:

Quoted 8 lines

Jesse> This one goes on top of the one I sent you last week. I'm Jesse> shooting for making Linus' tree boot on sn2 as well...

Quoted 2 lines
Quoted 2 lines

This one didn't apply for me. I just updated the to-linus-2.5
tree. Can you rediff against that?

Jesse> Sure, does this one work for you?

Yes, this one worked. It's in my tree now.

Cool! Now I only have to apply a couple of patches (one being the discontig patch) to get the 2.6 tree booting on sn2.

What needs to be done to fix the assembler? It always spews a bunch of warnings during the build. The ia64 build would be really quiet if that was fixed...

Thanks,
Jesse

#8 lore raw
In reply to Jesse Barnes
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line · On Mon, 4 Aug 2003 18:15:58 -0700, [email protected] (Jesse Barnes) said:

Jesse> What needs to be done to fix the assembler? It always spews Jesse> a bunch of warnings during the build. The ia64 build would Jesse> be really quiet if that was fixed...

We need to add directives to let the assembler know that the code is indeed safe.

	--david