ibmvfc_timeout(9)
π ibmvfc_timeout(9) β bestie's guide to the kernel API manual β¨
okay so hi, we're reading ibmvfc_timeout, section 9 of the kernel API manual, and honestly? it's a short one. a little snack. a single bite of a function. but we're gonna do it right, so grab your iced coffee π and let's go.
β¨ NAME β¨
ibmvfc_timeout β the internal command timeout handler π₯ (yes that's literally the whole name description, she's concise, she's iconic, periodt)
π SYNOPSIS π
void ibmvfc_timeout (struct timer_list *t );
that's it. that's the whole signature. void return, one arg, done. slay π
π¦ ARGUMENTS π¦
tβ described on the page as astruct ibmvfc_eventthat timed out π
okay so real talk bestie β the SYNOPSIS up there says the param is astruct timer_list *t, and the ARGUMENTS line says it's astruct ibmvfc_event. both of those are literally what the page says. I'm not picking a favorite, I'm not fixing it, I'm just reporting. iykyk π
πΈ DESCRIPTION πΈ
so when an internally generated command times out, this is the thing that gets called. that's the whole vibe check. internally generated command β times out β ibmvfc_timeout gets called. she's the one on timeout duty π
lowkey the most straightforward description on the whole page and I respect that energy fr fr.
π SEE ALSO π
okay this part ate, because the actual kernel file lives at ./drivers/scsi/ibmvscsi/ibmvfc-core.c and then there's just... the entire extended family listed. like a group chat with 190 members and everyone's invited. let's meet them, in order, no one left out π
ibmvfc_trc_start(9),ibmvfc_trc_end(9),ibmvfc_get_err_index(9),ibmvfc_get_cmd_error(9),ibmvfc_get_err_result(9),ibmvfc_retry_cmd(9),ibmvfc_get_ls_explain(9),ibmvfc_get_gs_explain(9),ibmvfc_get_fc_type(9)ibmvfc_set_tgt_action(9),ibmvfc_set_host_state(9),ibmvfc_set_host_action(9),ibmvfc_reinit_host(9),ibmvfc_del_tgt(9),ibmvfc_link_down(9),ibmvfc_init_host(9),ibmvfc_send_crq(9),ibmvfc_send_crq_init(9),ibmvfc_send_crq_init_complete(9)ibmvfc_init_event_pool(9),ibmvfc_free_event_pool(9),ibmvfc_free_queue(9),ibmvfc_release_crq_queue(9),ibmvfc_reenable_crq_queue(9),ibmvfc_reset_crq(9),ibmvfc_valid_event(9),ibmvfc_free_event(9),ibmvfc_vfc_eh_done(9)ibmvfc_complete_purge(9),ibmvfc_fail_request(9),ibmvfc_purge_requests(9),ibmvfc_hard_reset_host(9),__ibmvfc_reset_host(9),ibmvfc_reset_host(9),ibmvfc_retry_host_init(9),__ibmvfc_get_target(9),ibmvfc_get_target(9),ibmvfc_get_host_speed(9),ibmvfc_get_host_port_state(9),ibmvfc_set_rport_dev_loss_tmo(9),ibmvfc_release_tgt(9),ibmvfc_get_starget_node_name(9),ibmvfc_get_starget_port_name(9),ibmvfc_get_starget_port_id(9),ibmvfc_wait_while_resetting(9),ibmvfc_issue_fc_host_lip(9),ibmvfc_gather_partition_info(9),ibmvfc_set_login_info(9)__ibmvfc_get_event(9),ibmvfc_locked_done(9),ibmvfc_init_event(9),ibmvfc_map_sg_list(9),ibmvfc_map_sg_data(9),ibmvfc_send_event(9),ibmvfc_log_error(9),ibmvfc_scsi_relogin(9),ibmvfc_scsi_done(9),ibmvfc_host_chkready(9),ibmvfc_queuecommand(9),ibmvfc_sync_completion(9),ibmvfc_bsg_timeout_done(9),ibmvfc_bsg_timeout(9),ibmvfc_bsg_plogi(9),ibmvfc_bsg_request(9)ibmvfc_reset_device(9),ibmvfc_match_rport(9),ibmvfc_match_target(9),ibmvfc_match_lun(9),ibmvfc_event_is_free(9),ibmvfc_wait_for_ops(9),ibmvfc_cancel_all(9),ibmvfc_match_key(9),ibmvfc_match_evt(9),ibmvfc_abort_task_set(9),ibmvfc_eh_abort_handler(9),ibmvfc_eh_device_reset_handler(9),ibmvfc_dev_cancel_all_noreset(9),ibmvfc_eh_target_reset_handler(9),ibmvfc_eh_host_reset_handler(9),ibmvfc_terminate_rport_io(9),ibmvfc_get_ae_desc(9),ibmvfc_get_link_state(9),ibmvfc_handle_async(9),ibmvfc_handle_crq(9)ibmvfc_scan_finished(9),ibmvfc_sdev_init(9),ibmvfc_target_alloc(9),ibmvfc_sdev_configure(9),ibmvfc_change_queue_depth(9),ibmvfc_show_log_level(9),ibmvfc_store_log_level(9),ibmvfc_read_trace(9),ibmvfc_next_async_crq(9),ibmvfc_next_crq(9),ibmvfc_interrupt(9),ibmvfc_tasklet(9),ibmvfc_init_tgt(9),ibmvfc_retry_tgt_init(9),ibmvfc_get_prli_rsp(9)ibmvfc_tgt_prli_done(9),ibmvfc_tgt_send_prli(9),ibmvfc_tgt_plogi_done(9),ibmvfc_tgt_send_plogi(9),ibmvfc_tgt_implicit_logout_done(9),__ibmvfc_tgt_get_implicit_logout_evt(9),ibmvfc_tgt_implicit_logout(9),ibmvfc_tgt_implicit_logout_and_del_done(9),ibmvfc_tgt_implicit_logout_and_del(9),ibmvfc_tgt_move_login_done(9),ibmvfc_tgt_move_login(9),ibmvfc_adisc_needs_plogi(9),ibmvfc_tgt_adisc_done(9),ibmvfc_init_passthru(9)ibmvfc_tgt_adisc_cancel_done(9),ibmvfc_adisc_timeout(9),ibmvfc_tgt_adisc(9),ibmvfc_tgt_query_target_done(9),ibmvfc_tgt_query_target(9),ibmvfc_alloc_target(9),ibmvfc_alloc_targets(9),ibmvfc_discover_targets_done(9),ibmvfc_discover_targets(9),ibmvfc_npiv_login_done(9),ibmvfc_npiv_login(9)ibmvfc_npiv_logout_done(9),ibmvfc_npiv_logout(9),ibmvfc_dev_init_to_do(9),ibmvfc_dev_logo_to_do(9),__ibmvfc_work_to_do(9),ibmvfc_work_to_do(9),ibmvfc_log_ae(9)ibmvfc_tgt_add_nvme_rport(9),ibmvfc_tgt_add_rport(9),ibmvfc_do_work(9),ibmvfc_work(9),ibmvfc_alloc_queue(9),ibmvfc_init_crq(9),ibmvfc_free_mem(9),ibmvfc_alloc_mem(9),ibmvfc_rport_add_thread(9),ibmvfc_probe(9),ibmvfc_remove(9),ibmvfc_resume(9),ibmvfc_get_desired_dma(9),ibmvfc_module_init(9),ibmvfc_module_exit(9)
and that's the whole roster π«Ά every single one, accounted for, nobody's getting left on read π
also remember the file that started it all: ./drivers/scsi/ibmvscsi/ibmvfc-core.c β that's where this lives, go say hi π§
okay that's the page!! short and sweet, just like she deserves π huge thank you to ./drivers/scsi/ibmvscsi for shipping this, dated very cutely as October 2026 β see you in the next manpage, bestie, 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