Deleted Added
full compact
VOP_RDWR.9 (78278) VOP_RDWR.9 (79727)
1.\" -*- nroff -*-
2.\"
3.\" Copyright (c) 1996 Doug Rabson
4.\"
5.\" All rights reserved.
6.\"
7.\" This program is free software.
8.\"

--- 12 unchanged lines hidden (view full) ---

21.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
22.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28.\"
1.\" -*- nroff -*-
2.\"
3.\" Copyright (c) 1996 Doug Rabson
4.\"
5.\" All rights reserved.
6.\"
7.\" This program is free software.
8.\"

--- 12 unchanged lines hidden (view full) ---

21.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
22.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28.\"
29.\" $FreeBSD: head/share/man/man9/VOP_RDWR.9 78278 2001-06-15 16:12:41Z rwatson $
29.\" $FreeBSD: head/share/man/man9/VOP_RDWR.9 79727 2001-07-14 19:41:16Z schweikh $
30.\"
31.Dd July 24, 1996
32.Os
33.Dt VOP_RDWR 9
34.Sh NAME
35.Nm VOP_READ ,
36.Nm VOP_WRITE
37.Nd read or write a file

--- 67 unchanged lines hidden (view full) ---

105 lbn = uio->uio_offset / size;
106 blkoffset = uio->uio_offset - lbn * size;
107
108 xfersize = size - blkoffset;
109 if (uio->uio_resid < xfersize)
110 xfersize = uio->uio_resid;
111 if (bytesinfile < xfersize)
112 xfersize = bytesinfile;
30.\"
31.Dd July 24, 1996
32.Os
33.Dt VOP_RDWR 9
34.Sh NAME
35.Nm VOP_READ ,
36.Nm VOP_WRITE
37.Nd read or write a file

--- 67 unchanged lines hidden (view full) ---

105 lbn = uio->uio_offset / size;
106 blkoffset = uio->uio_offset - lbn * size;
107
108 xfersize = size - blkoffset;
109 if (uio->uio_resid < xfersize)
110 xfersize = uio->uio_resid;
111 if (bytesinfile < xfersize)
112 xfersize = bytesinfile;
113
113
114 error = bread(vp, lbn, size, NOCRED, &bp);
115 if (error) {
116 brelse(bp);
117 bp = NULL;
118 break;
119 }
120
121 /*

--- 4 unchanged lines hidden (view full) ---

126 * or uninitialized data.
127 */
128 size -= bp->b_resid;
129 if (size < xfersize) {
130 if (size == 0)
131 break;
132 xfersize = size;
133 }
114 error = bread(vp, lbn, size, NOCRED, &bp);
115 if (error) {
116 brelse(bp);
117 bp = NULL;
118 break;
119 }
120
121 /*

--- 4 unchanged lines hidden (view full) ---

126 * or uninitialized data.
127 */
128 size -= bp->b_resid;
129 if (size < xfersize) {
130 if (size == 0)
131 break;
132 xfersize = size;
133 }
134
134
135 error = uiomove((char *)bp->b_data + blkoffset, (int)xfersize, uio);
136 if (error)
137 break;
138
139 bqrelse(bp);
140 }
141 if (bp != NULL)
142 bqrelse(bp);

--- 22 unchanged lines hidden (view full) ---

165
166 for (error = 0; uio->uio_resid > 0;) {
167 lbn = uio->uio_offset / size;
168 blkoffset = uio->uio_offset - lbn * size;
169
170 xfersize = size - blkoffset;
171 if (uio->uio_resid < xfersize)
172 xfersize = uio->uio_resid;
135 error = uiomove((char *)bp->b_data + blkoffset, (int)xfersize, uio);
136 if (error)
137 break;
138
139 bqrelse(bp);
140 }
141 if (bp != NULL)
142 bqrelse(bp);

--- 22 unchanged lines hidden (view full) ---

165
166 for (error = 0; uio->uio_resid > 0;) {
167 lbn = uio->uio_offset / size;
168 blkoffset = uio->uio_offset - lbn * size;
169
170 xfersize = size - blkoffset;
171 if (uio->uio_resid < xfersize)
172 xfersize = uio->uio_resid;
173
173
174 if (uio->uio_offset + xfersize > size of file)
175 vnode_pager_setsize(vp, uio->uio_offset + xfersize);
176
177 if (size > xfersize)
178 flags |= B_CLRBUF;
179 else
180 flags &= ~B_CLRBUF;
181

--- 56 unchanged lines hidden ---
174 if (uio->uio_offset + xfersize > size of file)
175 vnode_pager_setsize(vp, uio->uio_offset + xfersize);
176
177 if (size > xfersize)
178 flags |= B_CLRBUF;
179 else
180 flags &= ~B_CLRBUF;
181

--- 56 unchanged lines hidden ---