update_tail_block_location(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… update_tail_block_location(9) β€” from the Kernel API Manual ✨

🌸 NAME 🌸

okay so bestie, welcome to the update_tail_block_location(9) page from the Kernel API Manual. This one is short and sweet but still has a whole crew of SEE ALSO friends. 🫢

update_tail_block_location β€” updates the tail block location in the slab summary, if necessary. It’s giving β€œonly do the work when it actually needs doing” energy, lowkey iconic. πŸ’…

πŸ“œ SYNOPSIS πŸ“œ

void update_tail_block_location (struct slab_journal *journal );

It’s a void function, so there’s no return value to obsess over β€” she just does her thing. ✨

πŸŽ€ ARGUMENTS πŸŽ€

  • journal β€” the slab journal that’s updating its tail block location. In the synopsis she’s typed as struct slab_journal *journal, and yes, that pointer is the main character here. πŸ‘‘

πŸ”— SEE ALSO πŸ”—

The page points at the kernel file ./drivers/md/dm-vdo/slab-depot.c, and then it name-drops this entire friend group of (9) references. No cap, we’re keeping every single one: πŸ’–

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),
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),
scrub_slabs(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)

That’s the whole roster, bestie β€” literally every reference from the original page made it in. 🫢


That’s the page! Source/version: ./drivers/md/dm-vdo Β· date: October 2026 Β· page: update_tail_block_location(9) πŸ’–βœ¨

πŸ“¦ where this page comes from