Lines Matching defs:zio
31 #include <sys/zio.h>
154 zio_t *zio = vb->vb_io;
156 zio->io_error = (geterror(bp) != 0 ? EIO : 0);
157 if (zio->io_error == 0 && bp->b_resid != 0)
158 zio->io_error = SET_ERROR(ENOSPC);
161 zio_delay_interrupt(zio);
186 vdev_file_io_start(zio_t *zio)
188 vdev_t *vd = zio->io_vd;
193 if (zio->io_type == ZIO_TYPE_IOCTL) {
196 zio->io_error = SET_ERROR(ENXIO);
197 zio_interrupt(zio);
201 switch (zio->io_cmd) {
203 zio->io_error = VOP_FSYNC(vf->vf_vnode, FSYNC | FDSYNC,
207 zio->io_error = SET_ERROR(ENOTSUP);
210 zio_execute(zio);
214 ASSERT(zio->io_type == ZIO_TYPE_READ || zio->io_type == ZIO_TYPE_WRITE);
215 zio->io_target_timestamp = zio_handle_io_delay(zio);
219 vb->vb_io = zio;
223 bp->b_flags = (zio->io_type == ZIO_TYPE_READ ? B_READ : B_WRITE);
224 bp->b_bcount = zio->io_size;
225 bp->b_un.b_addr = zio->io_data;
226 bp->b_lblkno = lbtodb(zio->io_offset);
227 bp->b_bufsize = zio->io_size;
237 vdev_file_io_done(zio_t *zio)