scrub_slabs(9)
π§Ό scrub_slabs(9) π§Ό
okay so this is the scrub_slabs(9) page from the Kernel API Manual, and it's literally about scrubbing slabs. bestie, if you're here you probably need to know what this one does, so let's get into it π
β¨
β¨ NAME β¨
scrub_slabs β scrub all of an allocator's slabs that are eligible for scrubbing. no cap, that's the whole vibe.
π οΈ SYNOPSIS π οΈ
void scrub_slabs (struct block_allocator *allocator , struct
vdo_completion *parent );
π«Ά ARGUMENTS π«Ά
allocatorβ theblock_allocatorto scrub. that's the main character here πparentβ the completion to notify when scrubbing is done. heads up: this implieshigh_priority, and it may beNULL. so yeah, it can be null and still be iconic π«Ά
π SEE ALSO π
the kernel file is ./drivers/md/dm-vdo/slab-depot.c, and here's the whole friend group of refs β no skips, bestie, all in (9) land:
get_lock(9)must_make_entries_to_flush(9)is_reaping(9)initialize_tail_block(9)initialize_journal_state(9)block_is_full(9)is_slab_journal_blank(9)mark_slab_journal_dirty(9)compute_fullness_hint(9)check_summary_drain_complete(9)notify_summary_waiters(9)finish_updating_slab_summary_block(9)finish_update(9)handle_write_error(9)launch_write(9)update_slab_summary_entry(9)finish_reaping(9)complete_reaping(9)handle_flush_error(9)flush_for_reaping(9)reap_slab_journal(9)adjust_slab_journal_block_reference(9)release_journal_locks(9)update_tail_block_location(9)reopen_slab_journal(9)complete_write(9)write_slab_journal_block(9)commit_tail(9)encode_slab_journal_entry(9)expand_journal_point(9)add_entry(9)vdo_attempt_replay_into_slab(9)requires_reaping(9)launch_reference_block_write(9)finish_reference_block_write(9)get_reference_counters_for_block(9)pack_reference_block(9)handle_io_error(9)write_reference_block(9)reference_count_to_status(9)dirty_block(9)get_reference_block(9)slab_block_number_from_pbn(9)get_reference_counter(9)adjust_free_block_count(9)increment_for_data(9)decrement_for_data(9)increment_for_block_map(9)update_reference_count(9)add_entry_from_waiter(9)is_next_entry_a_block_map_increment(9)add_entries(9)reset_search_cursor(9)advance_search_cursor(9)vdo_adjust_reference_count_for_rebuild(9)replay_reference_count_change(9)find_zero_byte_in_word(9)find_free_block(9)search_current_reference_block(9)search_reference_blocks(9)make_provisional_reference(9)dirty_all_reference_blocks(9)match_bytes(9)count_valid_references(9)unpack_reference_block(9)finish_reference_block_load(9)load_reference_block_group(9)load_reference_blocks(9)drain_slab(9)read_slab_journal_tail(9)load_slab_journal(9)get_next_slab(9)has_slabs_to_scrub(9)uninitialize_scrubber_vio(9)finish_scrubbing(9)slab_scrubbed(9)abort_scrubbing(9)handle_scrubber_error(9)apply_block_entries(9)apply_journal_entries(9)start_scrubbing(9)scrub_next_slab(9)get_depot_slab_iterator(9)next_slab(9)abort_waiter(9)vdo_acquire_provisional_reference(9)open_slab(9)vdo_enqueue_clean_slab_waiter(9)vdo_modify_reference_count(9)vdo_notify_slab_journals_are_recovered(9)make_slab(9)allocate_slabs(9)vdo_abandon_new_slabs(9)release_recovery_journal_lock(9)prepare_for_tail_block_commit(9)schedule_tail_block_commit(9)initialize_slab_scrubber(9)initialize_slab_summary_block(9)vdo_decode_slab_depot(9)vdo_free_slab_depot(9)vdo_record_slab_depot(9)vdo_allocate_reference_counters(9)get_slab_number(9)vdo_get_slab(9)vdo_get_increment_limit(9)vdo_is_physical_data_block(9)vdo_get_slab_depot_allocated_blocks(9)vdo_get_slab_depot_data_blocks(9)finish_combining_zones(9)combine_summaries(9)finish_loading_summary(9)load_slab_summary(9)vdo_load_slab_depot(9)vdo_prepare_slab_depot_to_allocate(9)vdo_update_slab_depot_size(9)vdo_prepare_to_grow_slab_depot(9)finish_registration(9)vdo_use_new_slabs(9)stop_scrubbing(9)vdo_drain_slab_depot(9)resume_scrubbing(9)vdo_resume_slab_depot(9)vdo_commit_oldest_slab_journal_tail_blocks(9)vdo_scrub_all_unrecovered_slabs(9)get_block_allocator_statistics(9)get_ref_counts_statistics(9)get_slab_journal_statistics(9)vdo_get_slab_depot_statistics(9)vdo_dump_slab_depot(9)
okay bye bestie π this lil manual page is from ./drivers/md/dm-vdo, dated October 2026, and it's the scrub_slabs(9) page. slay and stay scrubbing β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms