Searched refs:spares (Results 1 - 19 of 19) sorted by relevance

/freebsd-current/tests/sys/cddl/zfs/tests/hotspare/
H A Dhotspare.kshlib73 function setup_hotspares # keyword, spares
77 typeset spares=${@:-${sparedevs[@]}}
83 log_must $ZPOOL add -f "$TESTPOOL" spare $spares
84 log_must iscontained "$TESTPOOL" "$spares"
96 function iterate_over_hotspares # function, spares
99 typeset spares=${2:-${sparedevs[@]}}
101 for spare in $spares
/freebsd-current/sys/contrib/openzfs/tests/zfs-tests/tests/functional/redundancy/
H A Dredundancy_draid_spare1.ksh28 # Verify resilver to dRAID distributed spares.
34 # - has N distributed spares to replace all faulted vdevs
41 log_assert "Verify resilver to dRAID distributed spares"
62 spares=$(random_int_between $parity 3)
65 (( min_children = (data + parity + spares) ))
68 draid="draid${parity}:${data}d:${children}c:${spares}s"
73 while [[ $i -lt $spares ]]; do
98 log_pass "Verify resilver to dRAID distributed spares"
H A Dredundancy_draid_spare2.ksh27 # Verify multiple dRAID spares can be used.
31 # 2. Engage 3 distributed spares and verify the pool
37 log_assert "Verify multiple dRAID spares"
42 spares=3
45 draid="draid${parity}:${data}d:${children}c:${spares}s"
80 log_pass "Verify multiple dRAID spares"
H A Dredundancy_draid_spare3.ksh27 # Verify dRAID resilver to traditional and distributed spares for
33 # sustain 1 failure and has 5 distributed spares.
36 # spares to test resilving in common pool states.
66 spares=5
69 draid="draid${parity}:${data}d:${children}c:${spares}s"
74 # Perform a variety of replacements to normal and distributed spares
99 # spares
189 log_pass "Verify resilver to dRAID distributed spares"
/freebsd-current/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_create/
H A Dzpool_create_draid_003_pos.ksh30 # Verify allowed striped widths (data+parity) and hot spares may be
57 spares=$(random_int_between 0 3)
60 (( min_children = (data + parity + spares) ))
63 draid="draid${parity}:${data}d:${children}c:${spares}s"
101 # Spares are limited: spares < children - (parity + data).
/freebsd-current/sys/contrib/openzfs/cmd/zed/agents/
H A Dzfs_retire.c29 * The ZFS retire agent is responsible for managing hot spares across all pools.
31 * pool and look for any hot spares. We iterate over any available hot spares
150 nvlist_t **spares; local
166 &spares, &nspares) != 0) {
172 if (nvlist_lookup_uint64(spares[i], ZPOOL_CONFIG_GUID,
174 devname = zpool_vdev_name(NULL, zhp, spares[i],
176 nvlist_lookup_uint64_array(spares[i],
190 * Given a vdev guid, find and remove all spares associated with it.
249 nvlist_t **spares; local
[all...]
/freebsd-current/tests/sys/cddl/zfs/tests/zfsd/
H A Dzfsd_hotspare_001_pos.ksh40 # 1. Create a storage pool with two hot spares
140 typeset spares="$fail_spare $standby_spare"
/freebsd-current/lib/libc/db/hash/
H A Dhash.h83 int32_t spares[NCACHED];/* spare pages for overflow */ member in struct:hashhdr
284 #define SPARES hdr.spares
H A Dhash.c394 "spares[%d] = %d\n", i, hashp->SPARES[i]);
928 P_32_COPY(srcp->spares[i], destp->spares[i]);
959 M_32_SWAP(hdrp->spares[i]);
/freebsd-current/sys/contrib/openzfs/cmd/zpool/
H A Dzpool_vdev.c41 * Hot spares
48 * Hot spares are a special case, and passed down as an array of disk vdevs, at
148 * Allow hot spares to be shared between pools.
217 nvlist_t **spares; local
249 &spares, &nspares) == 0) {
251 verify(nvlist_lookup_uint64(spares[i],
315 gettext("cannot open '%s': dRAID spares can only "
832 * for spares there may be no children, and therefore no
1039 * it. Hot spares have already been partitioned and are
1334 * draid[<parity>][:<data><d|D>][:<children><c|C>][:<spares><
1493 nvlist_t *nvroot, *nv, **top, **spares, **l2cache; local
[all...]
H A Dzpool_main.c870 * Print the list of spares for dry runs.
880 (void) printf("\t%*s%s\n", indent, "", "spares");
1247 /* And finally the spares */
1774 /* make_root_vdev() allows 0 toplevel children if there are spares */
2547 * For hot spares, we use the terms 'INUSE' and 'AVAILABLE' for
8754 print_spares(zpool_handle_t *zhp, status_cbdata_t *cb, nvlist_t **spares, argument
8766 name = zpool_vdev_name(g_zfs, zhp, spares[i],
8768 print_status_config(zhp, cb, name, spares[i], 2, B_TRUE, NULL);
9263 nvlist_t **spares, **l2cache; local
9320 &spares,
[all...]
/freebsd-current/cddl/usr.sbin/zfsd/
H A Dcase_file.cc445 /* Try to activate spares if they are available */
519 nvlist_t **spares; local
550 * Don't activate spares for members of a "replacing" vdev.
561 nvlist_lookup_nvlist_array(nvroot, ZPOOL_CONFIG_SPARES, &spares,
564 /* The pool has no spares configured */
566 "No spares available for pool %s", poolname);
574 if (nvlist_lookup_uint64_array(spares[i],
591 /* No available spares were found */
595 error = nvlist_lookup_string(spares[i], ZPOOL_CONFIG_PATH, &devPath);
603 error = nvlist_lookup_string(spares[
[all...]
/freebsd-current/sys/geom/raid/
H A Dmd_jmicron.c1395 int i, spares; local
1439 /* Put spares to their slots. */
1440 spares = 0;
1445 meta->spare[spares] = pd->pd_disk_id;
1446 if (++spares >= 2)
H A Dmd_nvidia.c1399 int i, spares; local
1473 spares = 0;
1495 pd->pd_meta->disk_number = meta->total_disks + spares++;
/freebsd-current/sys/contrib/openzfs/module/zfs/
H A Dspa.c2134 * Load (or re-load) the current list of vdevs describing the active spares for
2142 nvlist_t **spares; local
2184 ZPOOL_CONFIG_SPARES, &spares, &nspares));
2195 * structures associated with it: one in the list of spares (used only
2204 VERIFY(spa_config_parse(spa, &vd, spares[i], NULL, 0,
2243 * Recompute the stashed list of spares, with status information
2248 spares = kmem_alloc(spa->spa_spares.sav_count * sizeof (void *),
2251 spares[i] = vdev_config_generate(spa,
2254 ZPOOL_CONFIG_SPARES, (const nvlist_t * const *)spares,
2257 nvlist_free(spares[
5883 nvlist_t **spares; local
6325 nvlist_t **spares, **l2cache; local
6640 nvlist_t **spares, **l2cache; local
7197 nvlist_t **spares, **l2cache; local
[all...]
H A Dvdev_removal.c2381 nvlist_t **spares, **l2cache, *nv; local
2410 ZPOOL_CONFIG_SPARES, &spares, &nspares) == 0 &&
2411 (nv = spa_nvlist_lookup_by_guid(spares, nspares, guid)) != NULL) {
2437 ZPOOL_CONFIG_SPARES, spares, nspares, nv);
H A Dvdev_draid.c56 * virtual distributed spare disks can be created. These spares similarly
86 * data disks (8 data + 1 parity) spares (2)
1414 * Always check groups with active distributed spares
1454 * Always check groups with active distributed spares
1466 * available capacity. Distributed spares are ignored since their capacity
1515 * Open all children, excluding spares.
1541 * First open the normal children then the distributed spares. This
1542 * ordering is important to ensure the distributed spares calculate
1560 * the number of distributed spares rounded down to last full row
1668 * Add virtual dRAID spares t
2695 nvlist_t **spares; local
[all...]
/freebsd-current/sys/contrib/openzfs/lib/libzutil/
H A Dzutil_import.c496 nvlist_t **spares, **l2cache; local
847 * Go through and update the paths for spares, now that we have
853 &spares, &nspares) == 0) {
855 if (fix_paths(hdl, spares[i], pl->names) != 0)
1925 /* Return if a vdev is a leaf vdev. Note: draid spares are leaf vdevs. */
/freebsd-current/sys/contrib/openzfs/lib/libzfs/
H A Dlibzfs_pool.c1430 uint64_t spares, uint64_t children)
1434 (u_longlong_t)children, (u_longlong_t)spares);
1733 nvlist_t **spares, **l2cache; local
1742 &spares, &nspares) == 0) {
1744 "upgraded to add hot spares"));
3523 "dRAID spares can only replace child "
3802 * Unlike cache & spares, slogs are stored in the
3989 "dRAID spares cannot be removed"));
4132 * Don't allow error clearing for hot spares. Do allow
4343 * If it's a dRAID device, we add parity, groups, and spares
1429 zpool_draid_name(char *name, int len, uint64_t data, uint64_t parity, uint64_t spares, uint64_t children) argument
[all...]

Completed in 306 milliseconds