From 60efe2c932c3527634ac2b614537ec7c60b9391e Mon Sep 17 00:00:00 2001 From: Poul-Henning Kamp Date: Sat, 18 Oct 2003 11:08:04 +0000 Subject: Initialize bp->b_offset before calling VOP_[SPEC]STRATEGY() --- sys/gnu/ext2fs/ext2_bmap.c | 1 + sys/gnu/ext2fs/ext2_inode.c | 1 + sys/gnu/ext2fs/ext2_vnops.c | 1 + sys/gnu/fs/ext2fs/ext2_bmap.c | 1 + sys/gnu/fs/ext2fs/ext2_inode.c | 1 + sys/gnu/fs/ext2fs/ext2_vnops.c | 1 + 6 files changed, 6 insertions(+) (limited to 'sys/gnu') diff --git a/sys/gnu/ext2fs/ext2_bmap.c b/sys/gnu/ext2fs/ext2_bmap.c index 1260d97f3eefe..2b98b5b1e0fe0 100644 --- a/sys/gnu/ext2fs/ext2_bmap.c +++ b/sys/gnu/ext2fs/ext2_bmap.c @@ -196,6 +196,7 @@ ext2_bmaparray(vp, bn, bnp, runp, runb) bp->b_flags &= ~B_INVAL; bp->b_ioflags &= ~BIO_ERROR; vfs_busy_pages(bp, 0); + bp->b_offset = dbtob(bp->b_blkno); VOP_STRATEGY(bp->b_vp, bp); curproc->p_stats->p_ru.ru_inblock++; /* XXX */ error = bufwait(bp); diff --git a/sys/gnu/ext2fs/ext2_inode.c b/sys/gnu/ext2fs/ext2_inode.c index c82711aa22eb4..8bd0b396d1286 100644 --- a/sys/gnu/ext2fs/ext2_inode.c +++ b/sys/gnu/ext2fs/ext2_inode.c @@ -404,6 +404,7 @@ ext2_indirtrunc(ip, lbn, dbn, lastbn, level, countp) panic("ext2_indirtrunc: bad buffer size"); bp->b_blkno = dbn; vfs_busy_pages(bp, 0); + bp->b_offset = dbtob(bp->b_blkno); VOP_STRATEGY(vp, bp); error = bufwait(bp); } diff --git a/sys/gnu/ext2fs/ext2_vnops.c b/sys/gnu/ext2fs/ext2_vnops.c index 43fd210a93d9c..46c292b7f3da5 100644 --- a/sys/gnu/ext2fs/ext2_vnops.c +++ b/sys/gnu/ext2fs/ext2_vnops.c @@ -1484,6 +1484,7 @@ ext2_strategy(ap) } vp = ip->i_devvp; bp->b_dev = vp->v_rdev; + bp->b_offset = dbtob(bp->b_blkno); VOP_SPECSTRATEGY(vp, bp); return (0); } diff --git a/sys/gnu/fs/ext2fs/ext2_bmap.c b/sys/gnu/fs/ext2fs/ext2_bmap.c index 1260d97f3eefe..2b98b5b1e0fe0 100644 --- a/sys/gnu/fs/ext2fs/ext2_bmap.c +++ b/sys/gnu/fs/ext2fs/ext2_bmap.c @@ -196,6 +196,7 @@ ext2_bmaparray(vp, bn, bnp, runp, runb) bp->b_flags &= ~B_INVAL; bp->b_ioflags &= ~BIO_ERROR; vfs_busy_pages(bp, 0); + bp->b_offset = dbtob(bp->b_blkno); VOP_STRATEGY(bp->b_vp, bp); curproc->p_stats->p_ru.ru_inblock++; /* XXX */ error = bufwait(bp); diff --git a/sys/gnu/fs/ext2fs/ext2_inode.c b/sys/gnu/fs/ext2fs/ext2_inode.c index c82711aa22eb4..8bd0b396d1286 100644 --- a/sys/gnu/fs/ext2fs/ext2_inode.c +++ b/sys/gnu/fs/ext2fs/ext2_inode.c @@ -404,6 +404,7 @@ ext2_indirtrunc(ip, lbn, dbn, lastbn, level, countp) panic("ext2_indirtrunc: bad buffer size"); bp->b_blkno = dbn; vfs_busy_pages(bp, 0); + bp->b_offset = dbtob(bp->b_blkno); VOP_STRATEGY(vp, bp); error = bufwait(bp); } diff --git a/sys/gnu/fs/ext2fs/ext2_vnops.c b/sys/gnu/fs/ext2fs/ext2_vnops.c index 43fd210a93d9c..46c292b7f3da5 100644 --- a/sys/gnu/fs/ext2fs/ext2_vnops.c +++ b/sys/gnu/fs/ext2fs/ext2_vnops.c @@ -1484,6 +1484,7 @@ ext2_strategy(ap) } vp = ip->i_devvp; bp->b_dev = vp->v_rdev; + bp->b_offset = dbtob(bp->b_blkno); VOP_SPECSTRATEGY(vp, bp); return (0); } -- cgit v1.3