vdo_drain_recovery_journal(9)
π vdo_drain_recovery_journal(9) π
okay so we're in the Kernel API Manual bestie, and this page is all about vdo_drain_recovery_journal β literally Drain recovery journal I/O. no cap.
β¨ NAME β¨
vdo_drain_recovery_journal β Drain recovery journal I/O. that's the whole vibe. π
π SYNOPSIS π
void vdo_drain_recovery_journal (struct recovery_journal *journal ,
const struct admin_state_code *operation , struct vdo_completion *parent
);
π ARGUMENTS π
journalβ the journal to drain. that's the main character of this little operation. πoperationβ the drain operation, and it's giving eithersuspendorsave. pick your fighter. β¨parentβ the completion to notify once the journal is drained. like, "hey bestie, we're done here" π«Ά
π¦ DESCRIPTION π¦
All uncommitted entries will be written out. periodt. not a single uncommitted entry is getting left behind on this watch. π
π SEE ALSO π
if you wanna go down the cross-reference rabbit hole π³οΈ here's the whole squad, every single one β don't skip anybody:
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)initialize_recovery_block(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)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)
okay that's the whole page, bestie π«Ά β this cutie is filed under ./drivers/md/dm-vdo and dated October 2026. 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