initialize_recovery_block(9)
π« initialize_recovery_block(9) β like, the glow-up ritual for a journal block β¨
okay so first thing, bestie: this is a Kernel API Manual page, and the star of the show is initialize_recovery_block(9). She's the one who gets a journal block all dressed and ready for the function. π
πΈ NAME
initialize_recovery_block β literally just Initialize a journal block. that's it, that's the whole vibe. π¦
β¨ SYNOPSIS
int initialize_recovery_block (struct vdo *vdo , struct recovery_journal
*journal , struct recovery_journal_block *block );
she takes three things and gives you back an int. iconic signature honestly. π
π ARGUMENTS
vdoβ thevdoyou're pulling vios out of. it's giving "source of truth" energy, no cap. πjournalβ the journal that this block is gonna belong to. she's gotta know her people. π«Άblockβ the actual block getting initialized. this is the main character of the whole operation. π
π₯ RETURN
VDO_SUCCESS or an error. that's it. either we slayed or we didn't, fr fr. π
π§ SEE ALSO
okay this list is LONG but every single one of these is invited to the party, so here we go β no skipping, we don't do that here:
- Kernel file
./drivers/md/dm-vdo/recovery-journal.c Lock Counters.(9)get_zone_count_ptr(9)get_counter(9)is_journal_zone_locked(9)vdo_release_recovery_journal_block_reference(9)pop_free_list(9)is_block_dirty(9)is_block_empty(9)is_block_full(9)assert_on_journal_thread(9)continue_waiter(9)has_block_waiters(9)suspend_lock_counter(9)check_for_drain_complete(9)notify_recovery_journal_of_read_only_mode(9)enter_journal_read_only_mode(9)vdo_get_recovery_journal_current_sequence_number(9)get_recovery_journal_head(9)compute_recovery_count_byte(9)check_slab_journal_commit_threshold(9)finish_reaping(9)complete_reaping(9)handle_flush_error(9)initialize_journal_state(9)vdo_get_recovery_journal_length(9)reap_recovery_journal_callback(9)initialize_lock_counter(9)set_journal_tail(9)vdo_decode_recovery_journal(9)vdo_free_recovery_journal(9)vdo_initialize_recovery_journal_post_repair(9)vdo_get_journal_block_map_data_blocks_used(9)vdo_get_recovery_journal_thread_id(9)vdo_open_recovery_journal(9)vdo_record_recovery_journal(9)get_block_header(9)set_active_sector(9)advance_tail(9)initialize_lock_count(9)prepare_to_assign_entry(9)schedule_block_write(9)release_journal_block_reference(9)assign_entry(9)recycle_journal_block(9)continue_committed_waiter(9)notify_commit_waiters(9)recycle_journal_blocks(9)complete_write(9)add_queued_recovery_entries(9)write_block(9)write_blocks(9)vdo_add_recovery_journal_entry(9)is_lock_locked(9)reap_recovery_journal(9)vdo_acquire_recovery_journal_block_reference(9)vdo_release_journal_entry_lock(9)vdo_drain_recovery_journal(9)resume_lock_counter(9)vdo_resume_recovery_journal(9)vdo_get_recovery_journal_logical_blocks_used(9)vdo_get_recovery_journal_statistics(9)dump_recovery_block(9)vdo_dump_recovery_journal_statistics(9)
literally sixty-three of them + the source file. we ate and left no crumbs. π
ngl if you're here, you're already deep in dm-vdo territory, so likeβ¦ respect. π«‘π
and that's the page, babes! π sign-off time: this lil beauty lives in ./drivers/md/dm-vdo, dated October 2026, and it's filed under initialize_recovery_block(9). mwah. πβ¨
π¦ 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