/**
* drain_slab_depot() - Flush out all dirty refcounts blocks now that they have been rebuilt or
* recovered.
+ * @completion: The repair completion.
*/
static void drain_slab_depot(struct vdo_completion *completion)
{
vdo_traverse_forest(vdo->block_map, process_entry, completion);
}
-/**
- * increment_recovery_point() - Move the given recovery point forward by one entry.
- */
static void increment_recovery_point(struct recovery_point *point)
{
if (++point->entry_count < RECOVERY_JOURNAL_ENTRIES_PER_SECTOR)
/**
* find_entry_starting_next_page() - Find the first journal entry after a given entry which is not
* on the same block map page.
+ * @repair: The repair completion.
* @current_entry: The entry to search from.
* @needs_sort: Whether sorting is needed to proceed.
*
/**
* find_recovery_journal_head_and_tail() - Find the tail and head of the journal.
+ * @repair: The repair completion.
*
* Return: True if there were valid journal blocks.
*/
/**
* extract_new_mappings() - Find all valid new mappings to be applied to the block map.
+ * @repair: The repair completion.
*
* The mappings are extracted from the journal and stored in a sortable array so that all of the
* mappings to be applied to a given block map page can be done in a single page fetch.
/**
* compute_usages() - Compute the lbns in use and block map data blocks counts from the tail of
* the journal.
+ * @repair: The repair completion.
*/
static noinline int compute_usages(struct repair_completion *repair)
{