[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: powerpc kernel problems



I made a patch for the symbol problems.  I mentioned that on a post
a couple of weeks ago.  It should allow you to use nvram, nfs and
kernel-nfsd as well as a couple of other things as modules.  I'll
attach it to this post.  It is only needed for MP powerpc
kernels/machines.  It applys against the 2.2.18pre21 debian kernel
source.

a

Peter Cordes wrote:
> 
> On Sat, Mar 24, 2001 at 04:57:35PM -0800, Andrew Sharp wrote:
> > MACE seems to work "fine" on all my old worlds: 7200/75, 7600/200,
> > 8500/200MP.  2.2.18pre21 and 2.2.17.  I'm using the TP port.
> 
>  I've had no problems with the MACE driver on my Daystar quad 604 machine
> (mobo is essentially a 9500 or 9600, somebody told me but I don't remember
> which.)
> 
>  I've had it working fine with the boot floppy install kernel, back when it
> was 2.2.17, and with 2.4.2 (linus's tree, and yes, a lot of things were
> horribly broken), 2.4.2 paulus, and 2.4.3-pre3 bitkeeper.
> 
>  BTW, I get undefined symbol errors (rtc_lock, referenced from rtc_interrupt
> and rtc_read) when I try to compile enhanced RTC support into the kernel.
> (If I make it a module, the mod won't load.)  This is with the paulus and
> the bk trees.
> 
>  Last time I checked, NFS and ReiserFS won't compile either.  (I haven't
> checked if they work in a UP kernel.  I don't really care, since I don't
> have any UP pmacs, and running my machine with 1 604 @ 150MHz would be a
> joke.)
> 
> --
> #define X(x,y) x##y
> Peter Cordes ;  e-mail: X(peter@llama.nslug. , ns.ca)
> 
> "The gods confound the man who first found out how to distinguish the hours!
>  Confound him, too, who in this place set up a sundial, to cut and hack
>  my day so wretchedly into small pieces!" -- Plautus, 200 BCE
> 
> --
> To UNSUBSCRIBE, email to debian-powerpc-request@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
diff -r -u linux-2.2.18pre21/arch/ppc/Makefile linux/arch/ppc/Makefile
--- linux-2.2.18pre21/arch/ppc/Makefile	Tue Jan  4 10:12:11 2000
+++ linux/arch/ppc/Makefile	Thu Feb 22 01:59:43 2001
@@ -117,7 +117,7 @@
 	ln -s gemini_defconfig arch/ppc/defconfig
 
 tags:
-	etags */*.c include/{asm,linux}/*.h arch/ppc/kernel/*.{c,h}
+	ctags */*.c include/{asm,linux}/*.h arch/ppc/kernel/*.{c,h}
 
 archclean:
 	rm -f arch/ppc/kernel/{mk_defs,ppc_defs.h,find_name,checks}
diff -r -u linux-2.2.18pre21/arch/ppc/kernel/Makefile linux/arch/ppc/kernel/Makefile
--- linux-2.2.18pre21/arch/ppc/kernel/Makefile	Fri Nov 17 16:21:38 2000
+++ linux/arch/ppc/kernel/Makefile	Wed Feb 21 20:42:35 2001
@@ -19,8 +19,14 @@
 OX_OBJS := ppc_ksyms.o setup.o
 
 
-O_OBJS := traps.o irq.o idle.o time.o process.o signal.o syscalls.o misc.o \
+ifeq ($(CONFIG_MODULES),y)
+OX_OBJS += irq.o
+O_OBJS := traps.o idle.o time.o process.o signal.o syscalls.o misc.o \
 	  bitops.o ptrace.o align.o ppc_htab.o
+else
+O_OBJS := traps.o idle.o irq.o time.o process.o signal.o syscalls.o misc.o \
+	  bitops.o ptrace.o align.o ppc_htab.o
+endif
 ifdef CONFIG_PCI
 O_OBJS += pci.o
 endif
@@ -41,8 +47,14 @@
 O_OBJS += apus_setup.o prom.o openpic.o
 endif
 
+ifeq ($(CONFIG_MODULES),y)
+PMACX_OBJS = pmac_support.o 
+PMAC_OBJS = pmac_time.o pmac_setup.o pmac_pci.o pmac_pic.o \
+	feature.o openpic.o open_pic.o prom.o
+else
 PMAC_OBJS = pmac_time.o pmac_setup.o pmac_support.o pmac_pci.o pmac_pic.o \
 	feature.o openpic.o open_pic.o prom.o
+endif
 CHRP_OBJS = $(PMAC_OBJS) chrp_time.o chrp_pci.o i8259.o indirect_pci.o
 CHRPX_OBJS = chrp_setup.o
 PREP_OBJS = prep_time.o prep_pci.o residual.o prep_nvram.o i8259.o \
@@ -73,7 +85,11 @@
 endif
 
 ifdef CONFIG_SMP
+ifeq ($(CONFIG_MODULES),y)
+OX_OBJS += smp.o
+else
 O_OBJS += smp.o
+endif
 endif
 
 all: head.o kernel.o
diff -r -u linux-2.2.18pre21/arch/ppc/kernel/irq.c linux/arch/ppc/kernel/irq.c
--- linux-2.2.18pre21/arch/ppc/kernel/irq.c	Fri Nov 17 16:21:38 2000
+++ linux/arch/ppc/kernel/irq.c	Thu Feb 22 02:04:41 2001
@@ -245,7 +245,7 @@
 #ifdef __SMP__
 	/* should this be per processor send/receive? */
   	/* should this be per processor send/receive? */
- 	len += sprintf(buf+len, "IPI: (recv/sent) %10lu/%lu\n",
+ 	len += sprintf(buf+len, "IPI: (recv/sent) %10u/%u\n",
  			atomic_read(&ipi_recv), atomic_read(&ipi_sent));
 #endif /* __SMP__ */		
 	len += sprintf(buf+len, "BAD: %10u\n", ppc_spurious_interrupts);
diff -r -u linux-2.2.18pre21/arch/ppc/kernel/ppc_ksyms.c linux/arch/ppc/kernel/ppc_ksyms.c
--- linux-2.2.18pre21/arch/ppc/kernel/ppc_ksyms.c	Fri Nov 17 16:21:39 2000
+++ linux/arch/ppc/kernel/ppc_ksyms.c	Thu Feb 22 02:36:22 2001
@@ -50,6 +50,11 @@
 extern unsigned long mktime(unsigned int, unsigned int, unsigned int,
                             unsigned int, unsigned int, unsigned int);
 extern void to_tm(int tim, struct rtc_time * tm);
+extern spinlock_t kernel_flag;
+extern atomic_t global_bh_lock;
+extern void synchronize_bh(void);
+extern int pmac_get_partition(int);
+
 
 long long __ashrdi3(long long, int);
 long long __ashldi3(long long, int);
@@ -246,6 +251,11 @@
 EXPORT_SYMBOL(to_tm);
 
 EXPORT_SYMBOL(abs);
+
+EXPORT_SYMBOL(kernel_flag);
+EXPORT_SYMBOL(global_bh_lock);
+EXPORT_SYMBOL(synchronize_bh);
+EXPORT_SYMBOL(pmac_get_partition);
 
 EXPORT_SYMBOL_NOVERS(__ashrdi3);
 EXPORT_SYMBOL_NOVERS(__ashldi3);

Reply to: