[LV] Can anybody build a kernel with Maciej's toolchain?

Peter Firefly Lund firefly at vax64.dk
Wed Aug 22 02:54:08 CEST 2007


On Wed, 2007-08-22 at 01:33 +0200, Jan-Benedict Glaw wrote:

> But back to the topic, maybe try sticking a stacktrace there?

Got a stack trace now (it is officially tomorrow anyway).
Had to comment out the two lines in arch/vax/kernel/early_printk.c that
switched the early printk off, because otherwise I wouldn't get any
further output (console=ttyS0 doesn't seem to work for me).


        ...[normal boot stuff]...
        Disabling early console. If this is the last text you see, try to append "console=ttyS0" to the kernel command line
        test of not so early console [line I inserted]
        Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
        Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
        Memory: 62228k/65472k available
        Calibrating delay loop... 22.93 BogoMIPS (lpj=114688)
        Mount-cache hash table entries: 512
        
        Reserved operand fault at PC=80279a7b
        
        Stack dump
          80271f4c  00000000 00000000 20000000 80271f90
          80271f5c  80271f70 80279aab 00000001 00000006
          80271f6c  802825a0 00000000 21c00000 80271fac
          80271f7c  80271f98 80279ae8 8010bfd4 0a000006
          80271f8c  8010bfd4 00000000 80271fd0 00000000
          80271f9c  20000000 80271fd0 80271fb8 802724d9
          80271fac  00000000 80283020 80271ffc 00000000
          80271fbc  20400000 80271ffc 80271fd8 8010377b
          80271fcc  8028a030 00000000 00000000 00000000
          80271fdc  23c00000 80000344 80000000 80100418
          80271fec  00029f80 00029f80 0010028a 0027e56c
          80271ffc  00000000 04c20000 a5efd45e d0fffce8
          8027200c  01045001 04c20000 95ef9f5e 9ffffce8
          8027201c  02fb04ac f210a1ef 5001d0ff 07c00104
          8027202c  d05e04c2 9e5904ac 00e157ef ef9e5800
          8027203c  fff23cf8 5668d05a 01fb56dd f23dd5ef
        
           r0  3fffff25   r1  fffffffb   r2  00000024   r3  ffffffff
           r4  00000000   r5  00000000   r6  00000006   r7  8029e9e0
           r8  80279a66   r9  802825a0   r10 80242ae8   r11 00000000
           ap  80271f64   fp  80271f50   sp  80271f4c   pc  80279a7b
           psl 00000001   ipl 0  mode K (prev K)  C 
        
           p0br 00000000     sbr  002a6e00     astlvl 00000004
           p0lr 00000000     slr  0003c780     sisr   00000000
           p1br 00000000     pcbb 00241dbc     mapen  00000001
           p1lr 00000000     scbb 00287000     sid    0a000006
        
           isp 80287000  ksp 80271e38  esp 00000000  ssp 00000000  usp 00000000
        panic: machine_halt!
        
        Stack dump
          80271e54  00000000 00000000 20000000 80271e8c
          80271e64  80271e78 801064af 00000001 80223014
          80271e74  8010bfd4 00000000 20000000 80271eb0
          80271e84  80271e94 8010461e 00000000 80271ee4
          80271e94  00000000 20c00000 80271ee8 80271ec0
          80271ea4  801048e3 00000006 80287738 00000002
          80271eb4  80271ef8 80271f44 20400000 00000000
          80271ec4  27c00000 80271f64 80271f50 80104d26
          80271ed4  00000006 8029e9e0 80279a66 802825a0
          80271ee4  80242ae8 00000003 80271ef8 8028773e
          80271ef4  80271f44 3fffff25 fffffffb 00000024
          80271f04  ffffffff 00000000 00000000 00000006
          80271f14  8029e9e0 80279a66 802825a0 80242ae8
          80271f24  00000000 80271f64 80271f50 80271f4c
          80271f34  80279a7b 00000001 3fffff25 8028773e
          80271f44  80279a7b 00000001 00000000 00000000
        Call Trace:
         [<801064af>] machine_halt+0x21/0x44
         [<8010bfd4>] printk+0x0/0x1a
         [<8010461e>] reserved_instr_handler+0x0/0x9a
         [<801048e3>] do_irq_excep+0x27/0x100
         [<80104d26>] ret_from_syscall+0x0/0x2a
         [<80279a66>] __maxindex+0x0/0x2e
         [<80279a66>] __maxindex+0x0/0x2e
         [<80279a7b>] __maxindex+0x15/0x2e
         [<80279a7b>] __maxindex+0x15/0x2e
         [<80279aab>] radix_tree_init_maxindex+0x17/0x22
         [<80279ae8>] radix_tree_init+0x32/0x34
         [<8010bfd4>] printk+0x0/0x1a
         [<8010bfd4>] printk+0x0/0x1a
         [<802724d9>] start_kernel+0x16f/0x18c
         [<8010377b>] vax_start_kernel+0x137/0x138
         [<80100418>] now_on_kstack+0x7/0x8
        
So there is apparently a bad instruction somewhere.  

80279a7b is inside __maxindex:
(make ARCH=vax CROSS_COMPILe=vax-linux- lib/radix-tree.s)

                .size   radix_tree_node_ctor, .-radix_tree_node_ctor
                .section        .init.text,"ax", at progbits
                .align 1
                .type   __maxindex, @function
        __maxindex:
                .word 0x0
                subl2 $4,%sp
                mull3 4(%ap),$6,%r2     # height,, tmp
                subl3 %r2,$31,%r1       # tmp,, tmp25
                mcoml $0,%r3    #, tmp27
                subb3 %r1,$32,%r0       # tmp25,, tmp28
                extzv %r1,%r0,%r3,%r0   # tmp25, tmp28, tmp27, tmp26
                rotl $31,%r0,%r0        #, tmp26, index
                bicl2 $-2147483648,%r0  #, index
                cmpl %r2,$31    # tmp,
                jlequ .L268     #
                movl %r3,%r0    # tmp27, index
        .L268:
                ret
        
vax-linux-objdump -d lib/radix-tree.o:
        00000000 <__maxindex>:
           0:   00 00           Entry mask 0x0000 = < >
           2:   c2 04 5e        subl2 $0x4,sp
           5:   c5 ac 04 06     mull3 0x4(ap),$0x6,r2
           9:   52 
           a:   c3 52 1f 51     subl3 r2,$0x1f,r1
           e:   d2 00 53        mcoml $0x0,r3
          11:   83 51 20 50     subb3 r1,$0x20,r0
          15:   ef 51 50 53     extzv r1,r0,r3,r0
          19:   50 
          1a:   9c 1f 50 50     rotl $0x1f,r0,r0
          1e:   ca 8f 00 00     bicl2 $0x80000000,r0
          22:   00 80 50 
          25:   d1 52 1f        cmpl r2,$0x1f
          28:   1b 03           blequ 2d <__maxindex+0x2d>
          2a:   d0 53 50        movl r3,r0
          2d:   04              ret
        


-Peter

_______________________________________________
Linux-Vax mailing list
Linux-Vax at pergamentum.com
http://www.pergamentum.com/mailman/listinfo/linux-vax




More information about the Vax-linux mailing list