lpfc_els_rcv_rpl(9)
π lpfc_els_rcv_rpl(9) β the Kernel API Manual glow-up π¦
okay bestie, we're in the Kernel API Manual today and the star of the show is lpfc_els_rcv_rpl(9) β say it with me, it's giving "unsolicited rpl iocb handler" and honestly? iconic. β¨
πΈ NAME πΈ
lpfc_els_rcv_rpl β process an unsolicited rpl iocb. that's it, that's the vibe. π
π SYNOPSIS π
int lpfc_els_rcv_rpl (struct lpfc_vport *vport , struct lpfc_iocbq
*cmdiocb , struct lpfc_nodelist *ndlp );
β¨ ARGUMENTS β¨
vportβ pointer to a host virtual N_Port data structure. yes, the virtual N_Port. she's the main character here. πcmdiocbβ pointer tolpfccommand iocb data structure. the command iocb in question, right there. πndlpβ pointer to a node-list data structure. the node list bestie. π
π¦ DESCRIPTION π¦
so this routine processes a Read Port List (RPL) IOCB that showed up as an ELS unsolicited event. like, nobody asked and it arrived anyway β classic. π«Ά
first thing it does is a vibe check on the remote port state. if the remote port is not in the NLP_STE_UNMAPPED_NODE and NLP_STE_MAPPED_NODE states? nope, not today β it invokes the lpfc_els_rsp_reject routine to send a reject response. periodt. π
otherwise (aka the port is in one of those states), this routine then invokes the lpfc_els_rsp_rpl_acc routine to accept the RPL. slay, mutual understanding, let her in. π
return code 0 β successfully processed rpl iocb (currently always return 0). not to be dramatic but the 0 is undefeated, it literally always returns 0. π
π SEE ALSO π
kernel file ./drivers/scsi/lpfc/lpfc_els.c β and like, the whole extended friend group, no cap. every single one of these, bestie:
lpfc_els_chk_latt(9)lpfc_prep_els_iocb(9)lpfc_issue_fabric_reglogin(9)lpfc_issue_reg_vfi(9)lpfc_issue_unreg_vfi(9)lpfc_check_clean_addr_bit(9)lpfc_cmpl_els_flogi_fabric(9)lpfc_cmpl_els_flogi_nport(9)lpfc_cmpl_els_flogi(9)lpfc_cmpl_els_link_down(9)lpfc_issue_els_flogi(9)lpfc_els_abort_flogi(9)lpfc_initial_flogi(9)lpfc_initial_fdisc(9)lpfc_more_plogi(9)lpfc_plogi_confirm_nport(9)lpfc_end_rscn(9)lpfc_cmpl_els_rrq(9)lpfc_check_encryption(9)lpfc_cmpl_els_plogi(9)lpfc_issue_els_plogi(9)lpfc_cmpl_els_prli(9)lpfc_issue_els_prli(9)lpfc_rscn_disc(9)lpfc_adisc_done(9)lpfc_more_adisc(9)lpfc_cmpl_els_adisc(9)lpfc_issue_els_adisc(9)lpfc_cmpl_els_logo(9)lpfc_issue_els_logo(9)lpfc_cmpl_els_cmd(9)lpfc_reg_fab_ctrl_node(9)lpfc_cmpl_els_disc_cmd(9)lpfc_issue_els_scr(9)lpfc_issue_els_rscn(9)lpfc_issue_els_farpr(9)lpfc_issue_els_rdf(9)lpfc_least_capable_settings(9)lpfc_cmpl_els_edc(9)lpfc_cancel_retry_delay_tmo(9)lpfc_els_retry_delay(9)lpfc_els_retry_delay_handler(9)lpfc_link_reset(9)lpfc_els_retry(9)lpfc_els_free_data(9)lpfc_els_free_bpl(9)lpfc_els_free_iocb(9)lpfc_cmpl_els_logo_acc(9)lpfc_mbx_cmpl_dflt_rpi(9)lpfc_cmpl_els_rsp(9)lpfc_els_rsp_acc(9)lpfc_els_rsp_reject(9)lpfc_els_rsp_adisc_acc(9)lpfc_els_rsp_prli_acc(9)lpfc_els_rsp_rnid_acc(9)lpfc_els_clear_rrq(9)lpfc_els_rsp_echo_acc(9)lpfc_els_disc_adisc(9)lpfc_els_disc_plogi(9)lpfc_els_rcv_lcb(9)lpfc_els_flush_rscn(9)lpfc_rscn_payload_check(9)lpfc_rscn_recovery_check(9)lpfc_send_rscn_event(9)lpfc_els_rcv_rscn(9)lpfc_els_handle_rscn(9)lpfc_els_rcv_flogi(9)lpfc_els_rcv_rnid(9)lpfc_els_rcv_echo(9)lpfc_els_rcv_lirr(9)lpfc_els_rcv_rrq(9)lpfc_els_rsp_rls_acc(9)lpfc_els_rcv_rls(9)lpfc_els_rcv_rtv(9)lpfc_send_rrq(9)lpfc_els_rsp_rpl_acc(9)lpfc_els_rcv_farp(9)lpfc_els_rcv_farpr(9)lpfc_els_rcv_fan(9)lpfc_els_rcv_edc(9)lpfc_els_timeout(9)lpfc_els_timeout_handler(9)lpfc_els_flush_cmd(9)lpfc_els_flush_all_cmd(9)lpfc_send_els_failure_event(9)lpfc_send_els_event(9)lpfc_display_fpin_wwpn(9)lpfc_els_rcv_fpin_li(9)lpfc_els_rcv_fpin_del(9)lpfc_els_rcv_fpin_peer_cgn(9)lpfc_els_rcv_fpin_cgn(9)lpfc_els_unsol_buffer(9)lpfc_els_unsol_event(9)lpfc_do_scr_ns_plogi(9)lpfc_cmpl_reg_new_vport(9)lpfc_register_new_vport(9)lpfc_cancel_all_vport_retry_delay_timer(9)lpfc_retry_pport_discovery(9)lpfc_fabric_login_reqd(9)lpfc_cmpl_els_fdisc(9)lpfc_issue_els_fdisc(9)lpfc_cmpl_els_npiv_logo(9)lpfc_issue_els_npiv_logo(9)lpfc_fabric_block_timeout(9)lpfc_resume_fabric_iocbs(9)lpfc_unblock_fabric_iocbs(9)lpfc_block_fabric_iocbs(9)lpfc_cmpl_fabric_iocb(9)lpfc_issue_fabric_iocb(9)lpfc_fabric_abort_vport(9)lpfc_fabric_abort_nport(9)lpfc_fabric_abort_hba(9)lpfc_sli4_vport_delete_els_xri_aborted(9)lpfc_sli4_els_xri_aborted(9)
ngl, reading the whole SEE ALSO list is a workout, but you ate that. πͺβ¨
and that's the page, bestie!! ππ¦ this absolute gem lives in ./drivers/scsi/lpfc, dated October 2026, and yes the page itself is literally lpfc_els_rcv_rpl(9) β mwah, no notes, 10/10, would read again. ππ
π
π¦ 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