schedule_block_write(9)
π NAME π
okay bestie, welcome to schedule_block_write(9) from the Kernel API Manual β yes, thatβs the manual name, folded in near the top like a little name tag because weβre cute like that. π This page is about one job and one job only: queueing a block for writing.
schedule_block_write β queue a block for writing. Thatβs the name, thatβs the whole assignment. Periodt. β¨
πΈ SYNOPSIS πΈ
void schedule_block_write (struct recovery_journal *journal , struct
recovery_journal_block *block );
It returns void, aka nothing, bestie. The function just does the thing. π
π¦ ARGUMENTS π¦
journalβ the journal in question, obviously. Itβs astruct recovery_journal *. π«Άblockβ the block that is now ready to write. Itβs astruct recovery_journal_block *. π₯
β¨ DESCRIPTION β¨
So hereβs the tea: this function queues block for writing. The block is expected to be full β like, thatβs the vibe it should already have, okay? π
If the block is currently writing, this call is a noop β zero extra drama β because the block will be queued for writing when the write finishes. Itβs giving βweβll get to it laterβ energy. π
π¨ bestie, do not call this when block is currently queued for writing. Thatβs the rule: the block must not currently be queued for writing. Not even a little. π«π
π SEE ALSO π
the whole related-calls guest list, every single one, no cap:
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)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)
mwah π this pageβs source/version line points to ./drivers/md/dm-vdo, and the date on the footer is October 2026 β bye bestie! π«Ά
π¦ 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