Go to the source code of this file.
|
static void | device_index_get (struct m0_pdclust_instance *pi, uint64_t group_number, uint64_t unit_number, uint32_t *device_index_out) |
|
static int | _spare_next (struct m0_poolmach *pm, const struct m0_fid *fid, struct m0_pdclust_layout *pl, struct m0_pdclust_instance *pi, uint64_t group_number, uint64_t unit_number, uint32_t *spare_slot_out, uint32_t *spare_slot_out_prev, bool break_next) |
|
M0_INTERNAL int | m0_sns_repair_spare_map (struct m0_poolmach *pm, const struct m0_fid *fid, struct m0_pdclust_layout *pl, struct m0_pdclust_instance *pi, uint64_t group, uint64_t unit, uint32_t *spare_slot_out, uint32_t *spare_slot_out_prev) |
|
M0_INTERNAL int | m0_sns_repair_spare_rebalancing (struct m0_poolmach *pm, const struct m0_fid *fid, struct m0_pdclust_layout *pl, struct m0_pdclust_instance *pi, uint64_t group, uint64_t unit, uint32_t *spare_slot_out, uint32_t *spare_slot_out_prev) |
|
static bool | frame_eq (struct m0_pdclust_instance *pi, uint64_t group_number, uint64_t frame, uint32_t device_index) |
|
static uint64_t | frame_get (struct m0_pdclust_instance *pi, uint64_t spare_frame, uint64_t group_number, uint32_t device_index) |
|
M0_INTERNAL int | m0_sns_repair_data_map (struct m0_poolmach *pm, struct m0_pdclust_layout *pl, struct m0_pdclust_instance *pi, uint64_t group_number, uint64_t spare_unit_number, uint64_t *data_unit_id_out) |
|
◆ M0_TRACE_SUBSYSTEM
#define M0_TRACE_SUBSYSTEM M0_TRACE_SUBSYS_SNSCM |
◆ _spare_next()
◆ device_index_get()
static void device_index_get |
( |
struct m0_pdclust_instance * |
pi, |
|
|
uint64_t |
group_number, |
|
|
uint64_t |
unit_number, |
|
|
uint32_t * |
device_index_out |
|
) |
| |
|
static |
◆ frame_eq()
static bool frame_eq |
( |
struct m0_pdclust_instance * |
pi, |
|
|
uint64_t |
group_number, |
|
|
uint64_t |
frame, |
|
|
uint32_t |
device_index |
|
) |
| |
|
static |
◆ frame_get()
static uint64_t frame_get |
( |
struct m0_pdclust_instance * |
pi, |
|
|
uint64_t |
spare_frame, |
|
|
uint64_t |
group_number, |
|
|
uint32_t |
device_index |
|
) |
| |
|
static |
◆ m0_sns_repair_data_map()
Map the {spare slot, data/parity unit id} pair after repair.
- Parameters
-
pm | pool machine. |
fid | Global file id. |
pl | pdclust layout instance. |
group_number | Parity group number for a given file. |
unit_number | Spare unit number in the parity group. |
data_unit_id_out | the output data unit index. |
Definition at line 192 of file parity_repair.c.
◆ m0_sns_repair_spare_map()
Map the {failed device, spare slot} pair of a specified device.
- Parameters
-
pm | pool machine. |
fid | Global file id. |
pl | pdclust layout instance. |
group_number | Parity group number for a given file. |
unit_number | Unit number in the parity group. |
spare_slot_out | the output spare slot. |
spare_slot_out_prev | the previous spare slot (in case of cascaded failures) Contains unit number in case of single failure. |
Definition at line 103 of file parity_repair.c.
◆ m0_sns_repair_spare_rebalancing()