lpfc_oas_lun_get_next(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… lpfc_oas_lun_get_next β€” the lpfc_oas_lun_get_next(9) glow-up

okay so bestie, welcome to the Kernel API Manual corner of the group chat πŸ’– this one's about lpfc_oas_lun_get_next, and yes the name is a mouthful, no cap. She's out here finding LUNs that are enabled for Optimized Access Storage (OAS) operations β€” literally the "next up" bouncer for your storage πŸ’…


✨ NAME ✨

lpfc_oas_lun_get_next β€” get the next lun that has been enabled for Optimized Access Storage (OAS) operations. periodt.


πŸ¦‹ SYNOPSIS πŸ¦‹

uint64_t lpfc_oas_lun_get_next (struct lpfc_hba *phba , uint8_t
vpt_wwpn[] , uint8_t tgt_wwpn[] , uint32_t *lun_status , uint32_t
*lun_pri );

🌸 ARGUMENTS 🌸

  • phba β€” an lpfc_hba pointer. the main character struct, honestly πŸ‘‘
  • vpt_wwpn β€” wwpn of the vport associated with the returned lun
  • tgt_wwpn β€” wwpn of the target associated with the returned lun
  • lun_status β€” status of the lun returned lun (yes it says "returned lun" twice, she's quirky like that, we keep it) πŸ™ˆ
  • lun_pri β€” priority of the lun returned lun

πŸ”₯ DESCRIPTION πŸ”₯

So the way this works 🫢: she returns the first or next lun enabled for OAS operations, for the vport/target you specify. Iconic behavior, no notes.

If a lun is found, its vport wwpn, target wwpn and status is returned. Chef's kiss ✨

If the lun is not found, NOT_OAS_ENABLED_LUN is returned β€” that's the vibe check failing, and it's giving "nothing here bestie" πŸ’€


⭐ RETURN ⭐

She gives you back the lun that is OAS enabled for the vport/target, and NOT_OAS_ENABLED_LUN when no oas enabled lun found. that's it, that's the deal 🌈


πŸŽ€ SEE ALSO πŸŽ€

lowkey the biggest friend group ever β€” the kernel file ./drivers/scsi/lpfc/lpfc_attr.c, and then all of these legends:

lpfc_jedec_to_ascii(9), lpfc_drvr_version_show(9), lpfc_enable_fip_show(9), lpfc_info_show(9), lpfc_serialnum_show(9), lpfc_temp_sensor_show(9), lpfc_modeldesc_show(9), lpfc_modelname_show(9), lpfc_programtype_show(9), lpfc_vportnum_show(9), lpfc_fwrev_show(9), lpfc_hdw_show(9), lpfc_option_rom_version_show(9), lpfc_link_state_show(9), lpfc_sli4_protocol_show(9), lpfc_oas_supported_show(9), lpfc_link_state_store(9), lpfc_num_discovered_ports_show(9), lpfc_issue_lip(9), lpfc_do_offline(9), lpfc_reset_pci_bus(9), lpfc_selective_reset(9), lpfc_issue_reset(9), lpfc_sli4_pdev_status_reg_wait(9), lpfc_sli4_pdev_reg_request(9), lpfc_nport_evt_cnt_show(9), lpfc_board_mode_show(9), lpfc_board_mode_store(9), lpfc_get_hba_info(9), lpfc_max_rpi_show(9), lpfc_used_rpi_show(9), lpfc_max_xri_show(9), lpfc_used_xri_show(9), lpfc_max_vpi_show(9), lpfc_used_vpi_show(9), lpfc_npiv_info_show(9), lpfc_poll_show(9), lpfc_poll_store(9), lpfc_sriov_hw_max_virtfn_show(9), lpfc_enable_bbcr_set(9), lpfc_wwn_set(9), lpfc_oas_tgt_show(9), lpfc_oas_tgt_store(9), lpfc_oas_priority_show(9), lpfc_oas_priority_store(9), lpfc_oas_vpt_show(9), lpfc_oas_vpt_store(9), lpfc_oas_lun_state_show(9), lpfc_oas_lun_state_store(9), lpfc_oas_lun_status_show(9), lpfc_oas_lun_state_set(9), lpfc_oas_lun_state_change(9), lpfc_oas_lun_show(9), lpfc_oas_lun_store(9), lpfc_nodev_tmo_show(9), lpfc_nodev_tmo_init(9), lpfc_update_rport_devloss_tmo(9), lpfc_nodev_tmo_set(9), lpfc_devloss_tmo_set(9), lpfc_tgt_queue_depth_set(9), lpfc_restrict_login_init(9), lpfc_restrict_login_set(9), lpfc_topology_store(9), lpfc_static_vport_show(9), lpfc_link_speed_store(9), lpfc_link_speed_init(9), lpfc_aer_support_store(9), lpfc_aer_cleanup_state(9), lpfc_sriov_nr_virtfn_store(9), lpfc_request_firmware_upgrade_store(9), lpfc_request_firmware_upgrade_init(9), lpfc_force_rscn_store(9), lpfc_force_rscn_init(9), lpfc_fcp_imax_store(9), lpfc_fcp_imax_init(9), lpfc_cq_max_proc_limit_store(9), lpfc_cq_max_proc_limit_init(9), lpfc_fcp_cpu_map_show(9), lpfc_fcp_cpu_map_store(9), lpfc_fcp_cpu_map_init(9), lpfc_cpumask_irq_mode_init(9), lpfc_irq_chann_show(9), lpfc_sg_seg_cnt_show(9), lpfc_sg_seg_cnt_init(9), sysfs_ctlreg_write(9), sysfs_ctlreg_read(9), sysfs_mbox_write(9), sysfs_mbox_read(9), lpfc_alloc_sysfs_attr(9), lpfc_free_sysfs_attr(9), lpfc_get_host_symbolic_name(9), lpfc_get_host_port_id(9), lpfc_get_host_port_type(9), lpfc_get_host_port_state(9), lpfc_get_host_speed(9), lpfc_get_host_fabric_name(9), lpfc_get_stats(9), lpfc_reset_stats(9), lpfc_get_enc_info(9), lpfc_get_node_by_target(9), lpfc_get_starget_port_id(9), lpfc_get_starget_node_name(9), lpfc_get_starget_port_name(9), lpfc_set_rport_loss_tmo(9), lpfc_set_vport_symbolic_name(9), lpfc_hba_log_verbose_init(9), lpfc_get_hba_function_mode(9), lpfc_get_cfgparam(9), lpfc_nvme_mod_param_dep(9), lpfc_get_vport_cfgparam(9)

iykyk πŸ’œ


and that's the whole page, bestie β€” no crumbs left behind πŸ“ this little love letter lives in ./drivers/scsi/lpfc, it's dated October 2026, and it's brought to you by the Kernel API Manual. mwah πŸ’‹

πŸ“¦ where this page comes from