Lines Matching defs:uio
29 #include <sys/uio.h>
40 physio(struct cdev *dev, struct uio *uio, int ioflag)
70 (uio->uio_resid > dev->si_iosize_max || uio->uio_resid > maxphys ||
71 uio->uio_iovcnt > 1)) {
75 if (uio->uio_resid > dev->si_iosize_max)
78 uio->uio_resid, dev->si_iosize_max);
79 if (uio->uio_resid > maxphys)
82 uio->uio_resid, maxphys);
83 if (uio->uio_iovcnt > 1)
86 uio->uio_iovcnt);
91 if (uio->uio_segflg != UIO_USERSPACE) {
96 maxpages = btoc(MIN(uio->uio_resid, maxphys)) + 1;
106 if (uio->uio_rw == UIO_READ)
109 for (i = 0; i < uio->uio_iovcnt; i++) {
113 switch (uio->uio_rw) {
116 uio->uio_iov[i].iov_len);
121 uio->uio_iov[i].iov_len);
129 while (uio->uio_iov[i].iov_len) {
131 switch (uio->uio_rw) {
141 bp->bio_offset = uio->uio_offset;
142 base = uio->uio_iov[i].iov_base;
143 bp->bio_length = uio->uio_iov[i].iov_len;
175 if (uio->uio_rw == UIO_READ)
189 uio->uio_iov[i].iov_len -= iolen;
190 uio->uio_iov[i].iov_base =
191 (char *)uio->uio_iov[i].iov_base + iolen;
192 uio->uio_resid -= iolen;
193 uio->uio_offset += iolen;