MCPcopy Create free account
hub / github.com/F-Stack/f-stack / zio_ioctl

Function zio_ioctl

freebsd/contrib/openzfs/module/zfs/zio.c:1314–1336  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1312}
1313
1314zio_t *
1315zio_ioctl(zio_t *pio, spa_t *spa, vdev_t *vd, int cmd,
1316 zio_done_func_t *done, void *private, enum zio_flag flags)
1317{
1318 zio_t *zio;
1319 int c;
1320
1321 if (vd->vdev_children == 0) {
1322 zio = zio_create(pio, spa, 0, NULL, NULL, 0, 0, done, private,
1323 ZIO_TYPE_IOCTL, ZIO_PRIORITY_NOW, flags, vd, 0, NULL,
1324 ZIO_STAGE_OPEN, ZIO_IOCTL_PIPELINE);
1325
1326 zio->io_cmd = cmd;
1327 } else {
1328 zio = zio_null(pio, spa, NULL, NULL, NULL, flags);
1329
1330 for (c = 0; c < vd->vdev_children; c++)
1331 zio_nowait(zio_ioctl(zio, spa, vd->vdev_child[c], cmd,
1332 done, private, flags));
1333 }
1334
1335 return (zio);
1336}
1337
1338zio_t *
1339zio_trim(zio_t *pio, vdev_t *vd, uint64_t offset, uint64_t size,

Callers 1

zio_flushFunction · 0.85

Calls 3

zio_createFunction · 0.85
zio_nullFunction · 0.85
zio_nowaitFunction · 0.85

Tested by

no test coverage detected