From 6cdbc9992f156cba3b8211ff528835c3f7fab64b Mon Sep 17 00:00:00 2001 From: sos Date: Wed, 19 Aug 1998 10:50:32 +0000 Subject: Make struct buf->b_offset reflect the real byte offset which got in via the uio struct. This enables device drivers to use != DEV_BSIZE blocking on devices with wierd sector/block sizes (ie CDROM's). --- sys/dev/ccd/ccd.c | 3 ++- sys/dev/vn/vn.c | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) (limited to 'sys/dev') diff --git a/sys/dev/ccd/ccd.c b/sys/dev/ccd/ccd.c index 28f9127..9e9e399 100644 --- a/sys/dev/ccd/ccd.c +++ b/sys/dev/ccd/ccd.c @@ -1,4 +1,4 @@ -/* $Id: ccd.c,v 1.34 1998/07/04 20:45:29 julian Exp $ */ +/* $Id: ccd.c,v 1.35 1998/07/04 22:30:13 julian Exp $ */ /* $NetBSD: ccd.c,v 1.22 1995/12/08 19:13:26 thorpej Exp $ */ @@ -905,6 +905,7 @@ ccdbuffer(cb, cs, bp, bn, addr, bcount) cbp->cb_buf.b_proc = bp->b_proc; cbp->cb_buf.b_dev = ci->ci_dev; /* XXX */ cbp->cb_buf.b_blkno = cbn + cboff + CCD_OFFSET; + cbp->cb_buf.b_offset = dbtob(cbn + cboff + CCD_OFFSET); cbp->cb_buf.b_data = addr; cbp->cb_buf.b_vp = ci->ci_vp; LIST_INIT(&cbp->cb_buf.b_dep); diff --git a/sys/dev/vn/vn.c b/sys/dev/vn/vn.c index b4b278a..dcb493a 100644 --- a/sys/dev/vn/vn.c +++ b/sys/dev/vn/vn.c @@ -38,7 +38,7 @@ * from: Utah Hdr: vn.c 1.13 94/04/02 * * from: @(#)vn.c 8.6 (Berkeley) 4/1/94 - * $Id: vn.c,v 1.66 1998/07/13 08:22:58 julian Exp $ + * $Id: vn.c,v 1.67 1998/07/30 15:16:04 bde Exp $ */ /* @@ -408,6 +408,7 @@ vnstrategy(struct buf *bp) nbp->b_dev = NODEV; nbp->b_data = addr; nbp->b_blkno = nbn + btodb(off); + nbp->b_offset = dbtob(nbn) + off; nbp->b_proc = bp->b_proc; nbp->b_iodone = vniodone; nbp->b_vp = vp; @@ -582,6 +583,7 @@ nvsIOreq(void *private ,struct buf *bp) nbp->b_dev = NODEV; nbp->b_data = addr; nbp->b_blkno = nbn + btodb(off); + nbp->b_offset = dbtob(nbn) + off; nbp->b_proc = bp->b_proc; nbp->b_iodone = vniodone; nbp->b_vp = vp; -- cgit v1.1