[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
mcd.c failes to compile (OpenBSD 3.5)
- To: bugs@openbsd.org
- Subject: mcd.c failes to compile (OpenBSD 3.5)
- From: geos@epost.de (Georg Schwarz)
- Date: Sun, 2 May 2004 00:03:16 +0200
- Organization: private
- User-Agent: MacSOUP/D-2.6 (Mac OS 8.1)
Hi,
I just installed OpenBSD 3.5 on an i386 system. Trying to build a custom
kernel mcd.c fails to compile since disk_unbusy is called with only two
instead of three parameters.
After comparing with fd.c I made the following change:
*** mcd.c.orig Tue Dec 9 22:09:18 2003
--- mcd.c Tue Dec 9 22:09:46 2003
***************
*** 1273,1279 ****
/* Invalidate the buffer. */
bp->b_flags |= B_ERROR;
bp->b_resid = bp->b_bcount - mbx->skip;
! disk_unbusy(&sc->sc_dk, (bp->b_bcount - bp->b_resid));
biodone(bp);
mcdstart(sc);
--- 1273,1279 ----
/* Invalidate the buffer. */
bp->b_flags |= B_ERROR;
bp->b_resid = bp->b_bcount - mbx->skip;
! disk_unbusy(&sc->sc_dk, (bp->b_bcount -
bp->b_resid),(bp->b_flags & B_READ));
biodone(bp);
mcdstart(sc);
I hope this is OK.
At least it compiles flawlessly now, and as far as I can tell it works
fine. The only problem (which however had already existed in versions
prior to 3.5) is a strange "timeout" message coming up on bootup, i.e.
when probing:
(from dmesg:)
: timeout in getresult
mcd0 at isa0 port 0x634/4 irq 11: model FX001D
BTW, the disk_unbusy man page incorrectly lists disk_unbusy as
void disk_unbusy(struct disk *)
This might apply to similar routines as well.
Georg
--
Georg Schwarz http://home.pages.de/~schwarz/
geos@epost.de +49 177 8811442