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

Function zio_allocate_dispatch

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

Source from the content-addressed store, hash-verified

3447}
3448
3449static void
3450zio_allocate_dispatch(spa_t *spa, int allocator)
3451{
3452 zio_t *zio;
3453
3454 mutex_enter(&spa->spa_alloc_locks[allocator]);
3455 zio = zio_io_to_allocate(spa, allocator);
3456 mutex_exit(&spa->spa_alloc_locks[allocator]);
3457 if (zio == NULL)
3458 return;
3459
3460 ASSERT3U(zio->io_stage, ==, ZIO_STAGE_DVA_THROTTLE);
3461 ASSERT0(zio->io_error);
3462 zio_taskq_dispatch(zio, ZIO_TASKQ_ISSUE, B_TRUE);
3463}
3464
3465static zio_t *
3466zio_dva_allocate(zio_t *zio)

Callers 2

zio_readyFunction · 0.85
zio_dva_throttle_doneFunction · 0.85

Calls 4

mutex_enterFunction · 0.85
zio_io_to_allocateFunction · 0.85
mutex_exitFunction · 0.85
zio_taskq_dispatchFunction · 0.85

Tested by

no test coverage detected