diff options
author | phk <phk@FreeBSD.org> | 2003-10-18 19:48:21 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-10-18 19:48:21 +0000 |
commit | 4b7ade98cde1002049c48964c16ea1959e55949b (patch) | |
tree | 9a9f081f937fb824771bb63e980417e28e95cd8c | |
parent | 2d32752eb93a64a99f543cb647b7401ea18d5e7b (diff) | |
download | FreeBSD-src-4b7ade98cde1002049c48964c16ea1959e55949b.zip FreeBSD-src-4b7ade98cde1002049c48964c16ea1959e55949b.tar.gz |
Initialize b_iooffset before calling strategy
-rw-r--r-- | sys/fs/specfs/spec_vnops.c | 1 | ||||
-rw-r--r-- | sys/kern/kern_physio.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/sys/fs/specfs/spec_vnops.c b/sys/fs/specfs/spec_vnops.c index bde0786..ea15dff 100644 --- a/sys/fs/specfs/spec_vnops.c +++ b/sys/fs/specfs/spec_vnops.c @@ -734,6 +734,7 @@ spec_getpages(ap) KASSERT(bp->b_wcred == NOCRED, ("leaking write ucred")); bp->b_rcred = crhold(curthread->td_ucred); bp->b_wcred = crhold(curthread->td_ucred); + bp->b_iooffset = offset; bp->b_blkno = blkno; bp->b_lblkno = blkno; pbgetvp(ap->a_vp, bp); diff --git a/sys/kern/kern_physio.c b/sys/kern/kern_physio.c index 20789d57f..6d93816 100644 --- a/sys/kern/kern_physio.c +++ b/sys/kern/kern_physio.c @@ -69,6 +69,7 @@ physio(dev_t dev, struct uio *uio, int ioflag) bp->b_data = uio->uio_iov[i].iov_base; bp->b_bcount = uio->uio_iov[i].iov_len; bp->b_offset = uio->uio_offset; + bp->b_iooffset = uio->uio_offset; bp->b_saveaddr = sa; /* Don't exceed drivers iosize limit */ |