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>
