GetIoUnitPage2(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’« GetIoUnitPage2(9) β€” the Kernel API Manual glow-up πŸ’«

okay bestie, so this one lives in the Kernel API Manual and it's called GetIoUnitPage2(9) β€” say it with me, it's giving "retrieve BIOS version and boot order information" ✨ Like, that's literally the whole job. It grabs the BIOS version + boot order tea for you. πŸŽ€


🌸 SYNOPSIS 🌸

int GetIoUnitPage2 (MPT_ADAPTER *ioc );

that's it. that's the whole vibe. one function, one arg, zero drama πŸ’…


πŸ¦‹ ARGUMENTS πŸ¦‹

  • ioc β€” a pointer to the MPT_ADAPTER structure, aka the main character of this whole operation πŸ‘‘ you hand it over and it knows what to do.

πŸ’– RETURN πŸ’–

ngl the return values are doing a lot, so let's go through them one by one, no skips:

  • 0 β€” success!! we ate. πŸŽ‰
  • -ENOMEM β€” no memory available 😭 the allocation said "not today"
  • -EPERM β€” not allowed because we're in ISR context πŸ’€ like, wrong place, wrong time, read the room
  • -EAGAIN β€” no msg frames currently available, try again later bestie πŸ™ˆ
  • -EFAULT β€” non-successful reply, or straight-up no reply at all (timeout) 🫠
lowkey memorize these? they're your little error-code besties and they will tell you exactly what went wrong 🧚

🌈 SEE ALSO 🌈

okay this list is long β€” like, iconic levels of long β€” but every single one is here because they're all siblings in the same kernel family 🫢

Kernel file ./drivers/message/fusion/mptbase.c

mpt_get_cb_idx(9), mpt_is_discovery_complete(9), mpt_remove_dead_ioc_func(9), mpt_fault_reset_work(9), mpt_interrupt(9), mptbase_reply(9), mpt_register(9), mpt_deregister(9), mpt_event_register(9), mpt_event_deregister(9), mpt_reset_register(9), mpt_reset_deregister(9), mpt_device_driver_register(9), mpt_device_driver_deregister(9), mpt_get_msg_frame(9), mpt_put_msg_frame(9), mpt_put_msg_frame_hi_pri(9), mpt_free_msg_frame(9), mpt_add_sge(9), mpt_add_sge_64bit(9), mpt_add_sge_64bit_1078(9), mpt_add_chain(9), mpt_add_chain_64bit(9), mpt_send_handshake_request(9), mpt_host_page_access_control(9), mpt_host_page_alloc(9), mpt_verify_adapter(9), mpt_get_product_name(9), mpt_mapresources(9), mpt_attach(9), mpt_detach(9), mpt_suspend(9), mpt_resume(9), mpt_do_ioc_recovery(9), mpt_detect_bound_ports(9), mpt_adapter_disable(9), mpt_adapter_dispose(9), MptDisplayIocCapabilities(9), MakeIocReady(9), mpt_GetIocState(9), GetIocFacts(9), GetPortFacts(9), SendIocInit(9), SendPortEnable(9), mpt_alloc_fw_memory(9), mpt_free_fw_memory(9), mpt_do_upload(9), mpt_downloadboot(9), KickStart(9), mpt_diag_reset(9), SendIocReset(9), initChainBuffers(9), PrimeIocFifos(9), mpt_handshake_req_reply_wait(9), WaitForDoorbellAck(9), WaitForDoorbellInt(9), WaitForDoorbellReply(9), GetLanConfigPages(9), mptbase_sas_persist_operation(9), mpt_GetScsiPortSettings(9), mpt_readScsiDevicePageHeaders(9), mpt_inactive_raid_list_free(9), mpt_inactive_raid_volumes(9), mpt_raid_phys_disk_pg0(9), mpt_raid_phys_disk_get_num_paths(9), mpt_raid_phys_disk_pg1(9), mpt_findImVolumes(9), SendEventNotification(9), SendEventAck(9), mpt_config(9), mpt_ioc_reset(9), procmpt_create(9), procmpt_destroy(9), mpt_print_ioc_summary(9), mpt_set_taskmgmt_in_progress_flag(9), mpt_clear_taskmgmt_in_progress_flag(9), mpt_halt_firmware(9), mpt_SoftResetHandler(9), mpt_Soft_Hard_ResetHandler(9), mpt_HardResetHandler(9), ProcessEventNotification(9), mpt_fc_log_info(9), mpt_spi_log_info(9), mpt_sas_log_info(9), mpt_iocstatus_info_config(9), mpt_iocstatus_info(9), fusion_init(9), fusion_exit(9)

like… okay, that's the whole squad. they all said hi. 🫑


and that's the page!! source spot is ./drivers/message/fusion and the date stamp is October 2026 β€” so yeah, this manpage is literally from the future, no cap πŸ’€βœ¨ go forth and get that BIOS version + boot order info, bestie, you've got this πŸŽ€πŸ’œ

πŸ“¦ where this page comes from