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

Re: Raid-1 woes



On Wed, Jun 06, 2001 at 07:26:40AM +1000, Herbert Xu wrote:
> Craig Small <csmall@eye-net.com.au> wrote:
> 
> > Jun  5 22:49:02 fozzie kernel: CIA machine check: vector=0x670 pc=0xfffffc00004b508c code=0x98
> > Jun  5 22:49:02 fozzie kernel: machine check type: processor detected hard error
> 
> > fffffc00004b4de0 T raid1_end_request
> > fffffc00004b4f00 t raid1_read_balance
> > fffffc00004b5100 t raid1_make_request
> > fffffc00004b5540 t raid1_status
> 
> > So, I think something dies in raid1_read_balance, whatever that is.
> 
> Please disassemble raid1.o to find out the exact location of the fault.

OK, I hope I got this right.
Problem at          4b508c
Function Starts     4b4f00
Offset (-)             18c
Objdump offset         d20
So look at ( + )       eac

     e94:       d8 03 f0 a0     ldl     t6,984(a0)
     e98:       25 95 a4 40     subq    t4,0x24,t4
     e9c:       26 95 c4 40     subq    t5,0x24,t5
     ea0:       00 00 25 a0     ldl     t0,0(t4)
     ea4:       23 95 64 40     subq    t2,0x24,t2
     ea8:       27 31 e0 40     subl    t6,0x1,t6
     eac:       0d 00 20 f4     bne     t0,ee4 <raid1_read_balance+0x1c4>
     eb0:       00 00 23 a0     ldl     t0,0(t2)
     eb4:       0b 00 20 e4     beq     t0,ee4 <raid1_read_balance+0x1c4>
     eb8:       00 00 26 a0     ldl     t0,0(t5)
     ebc:       21 01 01 40     subl    v0,t0,t0
     ec0:       22 05 e1 43     negq    t0,t1
     ec4:       c2 08 21 44     cmovge  t0,t0,t1
     ec8:       02 00 5f 40     addl    t1,zero,t1
     ecc:       1f 04 ff 47     nop
     ed0:       a1 03 58 40     cmpult  t1,t10,t0
     ed4:       03 00 20 e4     beq     t0,ee4 <raid1_read_balance+0x1c4>
     ed8:       18 04 e2 47     mov     t1,t10
     edc:       f0 03 f0 b3     stl     zero,1008(a0)

This is what I mean by objdump offset:

0000000000000d20 <raid1_read_balance>:
     d20:       e0 03 90 a0     ldl     t3,992(a0)
     d24:       10 00 31 30     ldwu    t0,16(a1)
  

location 1c4 (where they're jumping to) looks like this:
(well 1c4 + d20 = ee4)
     ed8:       18 04 e2 47     mov     t1,t10
     edc:       f0 03 f0 b3     stl     zero,1008(a0)
     ee0:       04 04 e7 47     mov     t6,t3
     ee4:       e0 03 30 a0     ldl     t0,992(a0)
     ee8:       a1 05 e1 40     cmpeq   t6,t0,t0
     eec:       e4 ff 3f e4     beq     t0,e80 <raid1_read_balance+0x160>
     ef0:       41 06 84 40     s8addq  t3,t3,t0
     ef4:       02 14 03 42     addq    a0,0x18,t1
     ef8:       41 04 22 40     s4addq  t0,t1,t0
     efc:       03 04 14 40     addq    v0,a4,t2
     f00:       00 00 61 b0     stl     t2,0(t0)

Is this enough do you you want me to send the entire function?

  - Craig
-- 
Craig Small VK2XLZ  GnuPG:1C1B D893 1418 2AF4 45EE  95CB C76C E5AC 12CA DFA5
Eye-Net Consulting http://www.eye-net.com.au/        <csmall@eye-net.com.au>
MIEEE <csmall@ieee.org>                 Debian developer <csmall@debian.org>



Reply to: