mpi3mr_cfg_g...nclosure_pg0(9)
π mpi3mr_cfg_g...nclosure_pg0(9) π
okay bestie, so this is a page from the Kernel API Manual and the star of the show is mpi3mr_cfg_get_enclosure_pg0 β say that five times fast, i can't either π. she's a little config-page reader with a big heart, and no cap, you're gonna want to know her.
β¨ NAME β¨
mpi3mr_cfg_get_enclosure_pg0 β read the current Enclosure page0 π
πΈ SYNOPSIS πΈ
int mpi3mr_cfg_get_enclosure_pg0 (struct mpi3mr_ioc *mrioc , u16
*ioc_status , struct mpi3_enclosure_page0 *encl_pg0 , u16 pg_sz , u32
form , u32 form_spec );
π¦ ARGUMENTS π¦
mriocβ the adapter instance reference, aka your main character. give her the respect she deserves π«Άioc_statusβ a pointer where the ioc status gets handed back to you. she's the receipts, keep her safe πencl_pg0β pointer to where the Enclosure page 0 gets returned. yep, the whole point of the function, iconic behavior β¨pg_szβ size of the memory you allocated for the page pointer. don't lowball it πformβ the form used for addressing the page. it's giving "choose your fighter" πform_specβ form-specific info, like the device handle. the little details, iykyk π
π§ DESCRIPTION π§
so this is the handler for a config page read for a specific Enclosure page0 β literally her whole job and she ate π₯
the ioc_status carries the controller-returned ioc_status. and here's the important part bestie, listen up π: this routine does NOT check ioc_status to decide whether the page read succeeded or not. that check is the caller's responsibility β so if you're the caller, the vibes check is on you, not her π
β RETURN β
0 on success, non-zero on failure. short and sweet, periodt π
π SEE ALSO π
kernel file ./drivers/scsi/mpi3mr/mpi3mr_fw.c, plus the whole friend group:
mpi3mr_get_reply_desc(9), mpi3mr_process_op_reply_q(9), mpi3mr_blk_mq_poll(9), mpi3mr_isr_poll(9), mpi3mr_request_irq(9), mpi3mr_setup_isr(9), mpi3mr_reset_rc_name(9), mpi3mr_reset_type_name(9), mpi3mr_is_fault_recoverable(9), mpi3mr_print_fault_info(9), mpi3mr_save_fault_info(9), mpi3mr_get_iocstate(9), mpi3mr_free_ioctl_dma_memory(9), mpi3mr_alloc_ioctl_dma_memory(9), mpi3mr_fault_uevent_emit(9), mpi3mr_clear_reset_history(9), mpi3mr_issue_and_process_mur(9), mpi3mr_revalidate_factsdata(9), mpi3mr_bring_ioc_ready(9), mpi3mr_soft_reset_success(9), mpi3mr_diagfault_success(9), mpi3mr_set_diagsave(9), mpi3mr_issue_reset(9), mpi3mr_admin_request_post(9), mpi3mr_free_op_req_q_segments(9), mpi3mr_free_op_reply_q_segments(9), mpi3mr_delete_op_reply_q(9), mpi3mr_alloc_op_reply_q_segments(9), mpi3mr_alloc_op_req_q_segments(9), mpi3mr_create_op_reply_q(9), mpi3mr_create_op_req_q(9), mpi3mr_create_op_queues(9), mpi3mr_op_request_post(9), mpi3mr_check_rh_fault_ioc(9), mpi3mr_sync_timestamp(9), mpi3mr_print_pkg_ver(9), mpi3mr_watchdog_work(9), mpi3mr_start_watchdog(9), mpi3mr_stop_watchdog(9), mpi3mr_setup_admin_qpair(9), mpi3mr_issue_iocfacts(9), mpi3mr_check_reset_dma_mask(9), mpi3mr_process_factsdata(9), mpi3mr_alloc_reply_sense_bufs(9), mpimr_initialize_reply_sbuf_queues(9), mpi3mr_issue_iocinit(9), mpi3mr_unmask_events(9), mpi3mr_issue_event_notification(9), mpi3mr_process_event_ack(9), mpi3mr_alloc_chain_bufs(9), mpi3mr_port_enable_complete(9), mpi3mr_issue_port_enable(9), mpi3mr_repost_diag_bufs(9), mpi3mr_read_tsu_interval(9), mpi3mr_print_ioc_info(9), mpi3mr_cleanup_resources(9), mpi3mr_setup_resources(9), mpi3mr_enable_events(9), mpi3mr_init_ioc(9), mpi3mr_reinit_ioc(9), mpi3mr_memset_op_reply_q_buffers(9), mpi3mr_memset_op_req_q_buffers(9), mpi3mr_memset_buffers(9), mpi3mr_free_mem(9), mpi3mr_issue_ioc_shutdown(9), mpi3mr_cleanup_ioc(9), mpi3mr_drv_cmd_comp_reset(9), mpi3mr_flush_drv_cmds(9), mpi3mr_pel_wait_post(9), mpi3mr_pel_get_seqnum_post(9), mpi3mr_pel_wait_complete(9), mpi3mr_pel_get_seqnum_complete(9), mpi3mr_check_op_admin_proc(9), mpi3mr_soft_reset_handler(9), mpi3mr_post_cfg_req(9), mpi3mr_process_cfg_req(9), mpi3mr_cfg_get_dev_pg0(9), mpi3mr_cfg_get_sas_phy_pg0(9), mpi3mr_cfg_get_sas_phy_pg1(9), mpi3mr_cfg_get_sas_exp_pg0(9), mpi3mr_cfg_get_sas_exp_pg1(9), mpi3mr_cfg_get_sas_io_unit_pg0(9), mpi3mr_cfg_get_sas_io_unit_pg1(9), mpi3mr_cfg_set_sas_io_unit_pg1(9), mpi3mr_cfg_get_driver_pg1(9), mpi3mr_cfg_get_driver_pg2(9)
like i said. the whole friend group. go say hi π«Ά
lowkey a reminder bestie: the page-read success check is yours to do. she hands you the ioc_status and trusts you with it. no cap π
and that's the whole page!! shipped from ./drivers/scsi/mpi3mr, dated October 2026 β catch you in the next manpage, mwah ππβ¨
π¦ 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