Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Jun 2002 15:07:56 +0800
From:      "kai ouyang" <oykai@msn.com>
To:        "Scott Long" <scott_long@btc.adaptec.com>, <current@FreeBSD.org>, "Terry Lambert" <tlambert2@mindspring.com>
Subject:   Debug report
Message-ID:  <OE335q8awYFDIfWb4Sa000046ce@hotmail.com>

index | next in thread | raw e-mail

[-- Attachment #1 --]


[-- Attachment #2 --]
Dear Scott and Terry,  
  Thank your help very much!
When I configured the 'raid0' device, I excute 'raidctl -s raid0'.
The system info:
kernel: type 12 trap, code=0
Stopped at InitBP+0x64: movl %eax, 0xec(%edx)
db>
I type 'trace'
there are :
InitBP(cdbccf00,cdb92960,2,c1bc1500,40,0,1,0, c1cae200,c0170440,c1cb3800,9) at InitBP+0x64
................
Context switches not allowed in the debugger.
db>

I have no experience on kernel debug. I do not know that means what.

There is the function InitBP I modified to support Current. Could you help me to check?
 static void  
InitBP(bp, b_vp, rw_flag, dev, startSect, numSect, buf, cbFunc, cbArg,
       logBytesPerSector)
 struct bio *bp;
 struct vnode *b_vp;
 unsigned rw_flag;
 dev_t dev;
 RF_SectorNum_t startSect;
 RF_SectorCount_t numSect;
 caddr_t buf;
 void (*cbFunc) (struct bio *);
 void *cbArg;
 int logBytesPerSector;
{
 /* bp->b_flags       = B_PHYS | rw_flag; */
 /*bp->bio_flags = B_CALL | rw_flag;  XXX need B_PHYS here too? */
  
 bp->bio_bcount = numSect << logBytesPerSector;
 bp->bio_caller1 =(void *) bp->bio_bcount;
 bp->bio_error = 0;
 bp->bio_dev = dev;
 bp->bio_data = buf;
 bp->bio_blkno = startSect;
 bp->bio_resid = bp->bio_bcount; /* XXX is this right!?!?!! */
 if (bp->bio_bcount == 0) {
  panic("bp->b_bcount is zero in InitBP!!\n");
 }
 bp->bio_done = cbFunc;
 bp->_bio_buf->b_vp = b_vp;
}

If you have no spare time to do that, Could you give me your Current patch, I can learn and analyse the difference.
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?OE335q8awYFDIfWb4Sa000046ce>