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

Function vdev_draid_state_change

freebsd/contrib/openzfs/module/zfs/vdev_draid.c:2226–2239  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2224}
2225
2226static void
2227vdev_draid_state_change(vdev_t *vd, int faulted, int degraded)
2228{
2229 vdev_draid_config_t *vdc = vd->vdev_tsd;
2230 ASSERT(vd->vdev_ops == &vdev_draid_ops);
2231
2232 if (faulted > vdc->vdc_nparity)
2233 vdev_set_state(vd, B_FALSE, VDEV_STATE_CANT_OPEN,
2234 VDEV_AUX_NO_REPLICAS);
2235 else if (degraded + faulted != 0)
2236 vdev_set_state(vd, B_FALSE, VDEV_STATE_DEGRADED, VDEV_AUX_NONE);
2237 else
2238 vdev_set_state(vd, B_FALSE, VDEV_STATE_HEALTHY, VDEV_AUX_NONE);
2239}
2240
2241static void
2242vdev_draid_xlate(vdev_t *cvd, const range_seg64_t *logical_rs,

Callers

nothing calls this directly

Calls 1

vdev_set_stateFunction · 0.85

Tested by

no test coverage detected