[OpenAFS-devel] Re: linux 2.6.x module version magic failure on SMP systems (FC2)

Matthew Miller mattdm@mattdm.org
Thu, 17 Jun 2004 23:42:19 -0400


On Thu, Jun 17, 2004 at 09:46:02PM -0400, Matthew Miller wrote:
> libafs: version magic '2.6.6-1.435smp 686 REGPARM 4KSTACKS gcc-3.3' should
> be '2.6.6-1.435smp SMP 686 REGPARM 4KSTACKS gcc-3.3'

Okay, here's a partial fix. 


vermagic was getting defined twice, and wrong one of those times. I think
this is what should get removed to fix it:

--- src/afs/LINUX/osi_module.c.orig	2004-06-17 23:07:11.152795614 -0400
+++ src/afs/LINUX/osi_module.c	2004-06-17 23:07:47.853533936 -0400
@@ -37,14 +37,6 @@
 #include <linux/syscall.h>
 #endif
 
-#if defined(AFS_LINUX26_ENV)
-#include <linux/vermagic.h>
-#include <linux/compiler.h>
-
-MODULE_INFO(vermagic, VERMAGIC_STRING);
-
-#endif
-
 #ifdef AFS_SPARC64_LINUX24_ENV
 #define __NR_setgroups32      82	/* This number is not exported for some bizarre reason. */
 #endif

BUT, there's still a problem. The uniprocessor module continues to work
fine, and the SMP one now _loads_, but oopses:


Unable to handle kernel NULL pointer dereference at virtual address 00000004
 printing eip:
4399585a
*pde = 00003001
Oops: 0002 [#1]
SMP
Modules linked in: libafs snd_mixer_oss snd_cs46xx snd_rawmidi
snd_seq_device snd_ac97_codec snd_pcm snd_timer snd_page_alloc gameport snd
soundcore parport_pc lp parport autofs4 sunrpc 3c59x floppy sg microcode
ohci1394 ieee1394 pcspkr dm_mod uhci_hcd ipv6 ext3 jbd aic7xxx sd_mod
scsi_mod
CPU:    0
EIP:    0060:[<4399585a>]    Tainted: P
EFLAGS: 00010206   (2.6.6-1.435smp)
EIP is at crref+0x46/0x69 [libafs]
eax: 00000000   ebx: 3f302400   ecx: 416278d8   edx: 183a5000
esi: 439b7580   edi: 022f8004   ebp: 183a5000   esp: 183a5fa4
ds: 007b   es: 007b   ss: 0068
Process insmod (pid: 14127, threadinfo=183a5000 task=2f205a30)
Stack: 022f8020 43968134 42833024 021336b3 183a5fc4 00000000 00000000
fffeb200
       f5030008 00df6cef 08b74008 00000000 00000000 fef3ac78 00000080
0000007b
       0000007b 00000080 00661402 00000073 00000246 fef3ac2c 0000007b
Call Trace:
 [<43968134>] osi_Init+0x20/0x35 [libafs]
 [<42833024>] init_module+0x24/0x75 [libafs]
 [<021336b3>] sys_init_module+0x101/0x212
 
Code: ff 40 04 8b 02 8b 80 f0 01 00 00 89 43 14 ff 49 04 0f 94 c0


So maybe that's not the right thing to do. Or I need something. Or
something else. This part is over my head again. :)


-- 
Matthew Miller           mattdm@mattdm.org        <http://www.mattdm.org/>
Boston University Linux      ------>                <http://linux.bu.edu/>