Yet another crash in FreeBSD 5.1
Eivind Olsen
eivind at aminor.no
Sun Aug 3 01:24:56 PDT 2003
--On 3. august 2003 00:31 -0400 John Baldwin <jhb at FreeBSD.org> wrote:
> But you knew that. Also, Eivind, you need to use hex, not decimal
> offsets from the functions. You might want to redo the g_dev_strategy()
> line with 0x29 instead of 29.
I already though about that so I tested the commands both with and without
0x in front of those numbers and I get exactly the same output, so it looks
like gdb interprets them as hex anyway:
(kgdb) list *(g_dev_strategy+0x29)
0xc02e8139 is in g_dev_strategy (/usr/src/sys/geom/geom_dev.c:415).
410 KASSERT(cp->acr || cp->acw,
411 ("Consumer with zero access count in g_dev_strategy"));
412
413 bp2 = g_clone_bio(bp);
414 KASSERT(bp2 != NULL, ("XXX: ENOMEM in a bad place"));
415 bp2->bio_offset = (off_t)bp->bio_blkno << DEV_BSHIFT;
416 KASSERT(bp2->bio_offset >= 0,
417 ("Negative bio_offset (%jd) on bio %p",
418 (intmax_t)bp2->bio_offset, bp));
419 bp2->bio_length = (off_t)bp->bio_bcount;
--
Regards / Hilsen
Eivind Olsen
<eivind at aminor.no>
More information about the freebsd-current
mailing list