lpfc_issue_els_farpr(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 lpfc_issue_els_farpr(9) β€” Kernel API Manual 🌸

okay bestie, welcome to lpfc_issue_els_farpr(9), straight out of the Kernel API Manual. This is the little function that handles a farp going out to a node on a vport, and yes, it's lowkey iconic. πŸ’…


πŸ’– NAME πŸ’–

lpfc_issue_els_farpr β€” Issue a farp to an node on a vport

✨ SYNOPSIS ✨

int lpfc_issue_els_farpr (struct lpfc_vport *vport , uint32_t nportid ,
uint8_t retry );

πŸŽ€ ARGUMENTS πŸŽ€

  • vport β€” pointer to a host virtual N_Port data structure.
  • nportid β€” N_Port identifier to the remote node.
  • retry β€” number of retries to the command IOCB.

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so this routine issues a Fibre Channel Address Resolution Response (FARPR) to a node on a vport. The remote node N_Port identifier (nportid) is passed into the function. It first searches the vport node list to find the matching ndlp. If no such ndlp is found, a new ndlp shall be created for this (FARPR) purpose. An IOCB is allocated, payload prepared, and the lpfc_sli_issue_iocb routine is invoked to send the FARPR ELS command.

big note bestie 🫢: Note that the ndlp reference count will be incremented by 1 for holding the ndlp and the reference to ndlp will be stored into the ndlp field of the IOCB for the completion callback function to the FARPR ELS command.

Return codes, fr fr:

  • Return code 0 β€” Successfully issued farpr command
  • Return code 1 β€” Failed to issue farpr command

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file: ./drivers/scsi/lpfc/lpfc_els.c

and the whole related-function squad is: 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_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_rpl(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).


okay that's the whole page, bestie πŸ’– β€” source/version is ./drivers/scsi/lpfc, date is October 2026, and the page is lpfc_issue_els_farpr(9). mwah πŸ’‹πŸ«Ά

πŸ“¦ where this page comes from