[rds-devel] Kernel panic after insmod rds.ko

Carl Yang (caryang) caryang at cisco.com
Thu Nov 9 15:11:18 PST 2006


Zach,

I checked out the code and compile it according to the README
instruction.  However, when I tried to insmod rds.ko (HP proliant  DL140
G3), I got the following kernel panic.  Can you please take a look and
see if you can shed any light on it?

Kernel BUG at module:264
invalid operand: 0000 [1] SMP
CPU 1
Modules linked in: md5 ipv6 parport_pc lp parport autofs4 i2c_dev
i2c_core nfs lockd nfs_acl sunrpc ds yenta_socket pcmcia_core rdma_ucm
ib_rds rdma_cm ib_addr ib_local_sa findex ib_ipoib dm_multipath button
battery ac joydev uhci_hcd ehci_hcd ib_mthca ib_uverbs ib_umad ib_ucm
ib_sa ib_cm ib_mad ib_core tg3 dm_snapshot dm_zero dm_mirror ext3 jbd
dm_mod ata_piix libata sd_mod scsi_mod
Pid: 4466, comm: insmod Not tainted 2.6.9-42.ELsmp
RIP: 0010:[<ffffffff8014ec7f>] <ffffffff8014ec7f>{load_module+1553}
RSP: 0018:000001006d1b3d58  EFLAGS: 00010202
RAX: 0000000000000001 RBX: 0000000000000001 RCX: ffffff0012483800
RDX: ffffffffffffff01 RSI: 00000000000001a8 RDI: 0000000000000060
RBP: ffffff0012483800 R08: 0000000000000080 R09: 0000000000000004
R10: 000001006d1b3c98 R11: 0000000000000080 R12: ffffff0012624c50
R13: 0000000000000000 R14: 0000000000000000 R15: ffffffff805160a0
FS:  0000002a95587b00(0000) GS:ffffffff804e5100(0000)
knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 0000002a9589500f CR3: 00000000016c8000 CR4: 00000000000006e0
Process insmod (pid: 4466, threadinfo 000001006d1b2000, task
0000010075e2a7f0)
Stack: 0000000000000001 0000000000000000 000001006d1b3df8
ffffffff8015c5c7
       0000000000000000 0000000000000048 000001006d1b3e88
000001006d1b3e80
       0000000000000000 00000000000f3e12 Call
Trace:<ffffffff8015c5c7>{__generic_file_aio_read+385}
<ffffffff801d1ce4>{task_has_capability+84}
       <ffffffff8014fc6e>{sys_init_module+111}
<ffffffff8011026a>{system_call+126}


Code: 0f 0b f3 4e 32 80 ff ff ff ff 08 01 48 8b 0d ae ee 33 00 45 RIP
<ffffffff8014ec7f>{load_module+1553} RSP <000001006d1b3d58>  <0>Kernel
panic - not syncing: Oops 

==========================================

The following is the code snippet from module.c

static void *percpu_modalloc(unsigned long size, unsigned long align) {
        unsigned long extra;
        unsigned int i;
        void *ptr;

        BUG_ON(align > SMP_CACHE_BYTES);

        ptr = __per_cpu_start;
        for (i = 0; i < pcpu_num_used; ptr += block_size(pcpu_size[i]),
i++) {
                /* Extra for alignment requirement. */
                extra = ALIGN((unsigned long)ptr, align) - (unsigned
long)ptr;
line 264--->    BUG_ON(i == 0 && extra != 0);

                if (pcpu_size[i] < 0 || pcpu_size[i] < extra + size)
                        continue;

                /* Transfer extra to previous block. */



More information about the rds-devel mailing list