fc_exch_timer_set_locked(9)
π fc_exch_timer_set_locked(9) π
okay bestie, welcome to the Kernel API Manual page for fc_exch_timer_set_locked(9) β yes, the whole page is about starting a timer for an exchange, and it's doing it with the exchange lock held. We love a locked-context moment. π
β¨ NAME β¨
fc_exch_timer_set_locked β Start a timer for an exchange w/ the the exchange lock held. (the double βtheβ is literally in the original, no cap π)
πΈ SYNOPSIS πΈ
void fc_exch_timer_set_locked (struct fc_exch *ep , unsigned int
timer_msec );
It returns void, so there's no return value to obsess over β just timer-starting energy. β°β¨
π ARGUMENTS π
epβ The exchange whose timer will start. That's the main character exchange right there. πtimer_msecβ The timeout period. The name literally saysmsec, so you already know the unit vibe. β±οΈ
π¦ DESCRIPTION π¦
This one is used for upper level protocols to time out the exchange. The timer is cancelled when it fires or when the exchange completes. That's the whole vibe: set it, and it goes away when it fires or when the exchange is done. π«Ά
And yeah β the lock is held, because _locked is right there in the function name and the NAME says βw/ the the exchange lock held.β So this is a locked-context situation, periodt. ππ
π SEE ALSO π
- Kernel file
./drivers/scsi/libfc/fc_exch.c struct fc_exch_pool(9),struct fc_exch_mgr(9),struct fc_exch_mgr_anchor(9),fc_exch_name_lookup(9),fc_exch_rctl_name(9),fc_exch_hold(9),fc_exch_setup_hdr(9),fc_exch_release(9),fc_exch_timer_cancel(9),fc_exch_timer_set(9)fc_exch_done_locked(9),fc_exch_ptr_get(9),fc_exch_ptr_set(9),fc_exch_delete(9),fc_seq_send(9),fc_seq_alloc(9),fc_seq_start_next_locked(9),fc_seq_start_next(9),fc_exch_abort_locked(9),fc_seq_exch_abort(9)fc_invoke_resp(9),fc_exch_timeout(9),fc_exch_em_alloc(9),fc_exch_alloc(9),fc_exch_find(9),fc_exch_done(9),fc_exch_resp(9),fc_seq_lookup_recip(9),fc_seq_lookup_orig(9),fc_exch_set_addr(9)fc_seq_els_rsp_send(9),fc_seq_send_last(9),fc_seq_send_ack(9),fc_exch_send_ba_rjt(9),fc_exch_recv_abts(9),fc_seq_assign(9),fc_seq_release(9),fc_exch_recv_req(9),fc_exch_recv_seq_resp(9),fc_exch_recv_resp(9)fc_exch_abts_resp(9),fc_exch_recv_bls(9),fc_seq_ls_acc(9),fc_seq_ls_rjt(9),fc_exch_reset(9),fc_exch_pool_reset(9),fc_exch_mgr_reset(9),fc_exch_lookup(9),fc_exch_els_rec(9),fc_exch_rrq_resp(9)fc_exch_seq_send(9),fc_exch_rrq(9),fc_exch_els_rrq(9),fc_exch_update_stats(9),fc_exch_mgr_add(9),fc_exch_mgr_destroy(9),fc_exch_mgr_del(9),fc_exch_mgr_list_clone(9),fc_exch_mgr_alloc(9),fc_exch_mgr_free(9)fc_find_ema(9),fc_exch_recv(9),fc_exch_init(9),fc_setup_exch_mgr(9),fc_destroy_exch_mgr(9)
okay bestie, that's the whole page! π«Ά Cute little footer sign-off: source/version ./drivers/scsi/libfc, date October 2026, and the page tag fc_exch_timer_set_locked(9). Bye π
β¨
π¦ 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