Lines Matching refs:zio

211 	zio_t *zio = (zio_t *)arg;  in vdev_file_io_strategy()  local
212 vdev_t *vd = zio->io_vd; in vdev_file_io_strategy()
220 off = zio->io_offset; in vdev_file_io_strategy()
221 size = zio->io_size; in vdev_file_io_strategy()
224 ASSERT(zio->io_type == ZIO_TYPE_READ || zio->io_type == ZIO_TYPE_WRITE); in vdev_file_io_strategy()
225 if (zio->io_type == ZIO_TYPE_READ) { in vdev_file_io_strategy()
226 buf = abd_borrow_buf(zio->io_abd, zio->io_size); in vdev_file_io_strategy()
228 abd_return_buf_copy(zio->io_abd, buf, size); in vdev_file_io_strategy()
230 buf = abd_borrow_buf_copy(zio->io_abd, zio->io_size); in vdev_file_io_strategy()
232 abd_return_buf(zio->io_abd, buf, size); in vdev_file_io_strategy()
234 zio->io_error = err; in vdev_file_io_strategy()
235 if (resid != 0 && zio->io_error == 0) in vdev_file_io_strategy()
236 zio->io_error = SET_ERROR(ENOSPC); in vdev_file_io_strategy()
238 zio_delay_interrupt(zio); in vdev_file_io_strategy()
244 zio_t *zio = (zio_t *)arg; in vdev_file_io_fsync() local
245 vdev_file_t *vf = zio->io_vd->vdev_tsd; in vdev_file_io_fsync()
247 zio->io_error = zfs_file_fsync(vf->vf_file, O_SYNC | O_DSYNC); in vdev_file_io_fsync()
249 zio_interrupt(zio); in vdev_file_io_fsync()
255 zio_t *zio = (zio_t *)arg; in vdev_file_io_deallocate() local
256 vdev_file_t *vf = zio->io_vd->vdev_tsd; in vdev_file_io_deallocate()
258 zio->io_error = zfs_file_deallocate(vf->vf_file, in vdev_file_io_deallocate()
259 zio->io_offset, zio->io_size); in vdev_file_io_deallocate()
261 zio_interrupt(zio); in vdev_file_io_deallocate()
265 vdev_file_io_start(zio_t *zio) in vdev_file_io_start() argument
267 vdev_t *vd = zio->io_vd; in vdev_file_io_start()
269 if (zio->io_type == ZIO_TYPE_FLUSH) { in vdev_file_io_start()
272 zio->io_error = SET_ERROR(ENXIO); in vdev_file_io_start()
273 zio_interrupt(zio); in vdev_file_io_start()
278 zio_interrupt(zio); in vdev_file_io_start()
283 vdev_file_io_fsync, zio, TQ_SLEEP), !=, TASKQID_INVALID); in vdev_file_io_start()
288 if (zio->io_type == ZIO_TYPE_TRIM) { in vdev_file_io_start()
289 ASSERT3U(zio->io_size, !=, 0); in vdev_file_io_start()
292 vdev_file_io_deallocate, zio, TQ_SLEEP), !=, in vdev_file_io_start()
298 ASSERT(zio->io_type == ZIO_TYPE_READ || zio->io_type == ZIO_TYPE_WRITE); in vdev_file_io_start()
299 zio->io_target_timestamp = zio_handle_io_delay(zio); in vdev_file_io_start()
301 VERIFY3U(taskq_dispatch(vdev_file_taskq, vdev_file_io_strategy, zio, in vdev_file_io_start()
306 vdev_file_io_done(zio_t *zio) in vdev_file_io_done() argument
308 (void) zio; in vdev_file_io_done()