mpi3mr_post_cfg_req(9)
π NAME π
mpi3mr_post_cfg_req β issue config requests and wait, bestie π
Welcome to the Kernel API Manual, this is the page for mpi3mr_post_cfg_req(9), and yes we're gonna get through the whole thing together π«Ά
β¨ SYNOPSIS β¨
int mpi3mr_post_cfg_req (struct mpi3mr_ioc *mrioc , struct
mpi3_config_request *cfg_req , int timeout , u16 *ioc_status );
okay so that's the whole signature, literally copy it exactly, don't be weird about the spacing, it's fine πΈ
π¦ ARGUMENTS π¦
mriocβ the adapter instance reference, aka your controller's whole personality πcfg_reqβ the configuration request itself, the actual thing you're postingtimeoutβ timeout, in seconds β° (yes seconds, not jiffies, not vibes)ioc_statusβ a pointer used to return the ioc status back atcha π
π DESCRIPTION π
So this is the generic function for posting an MPI3 configuration request to the firmware. Nothing spicy, it's the standard little courier π§
It blocks for the completion of the request for timeout seconds. Like, it will sit there and wait. Patient queen energy π
β οΈ and if the request times out, this function faults the controller with the proper reason code. Not a drill, not a cute little retry β it faults the controller. iykyk π
On successful completion of the request, this function returns the appropriate ioc status from the firmware back to the caller. The firmware says a thing, you get told the thing π₯
β RETURN β
0on success π- non-zero on failure π
That's it. Zero is the good one, periodt.
π SEE ALSO π
Kernel file ./drivers/scsi/mpi3mr/mpi3mr_fw.c β and honestly the whole friend group is here:
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_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_enclosure_pg0(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)
(yes mpimr_initialize_reply_sbuf_queues(9) really is spelled like that up there, not a typo on my end, go look π)
and that's the whole page bestie, you ate it up π β¨
this absolute icon of a page lives in ./drivers/scsi/mpi3mr, dated October 2026, and it's mpi3mr_post_cfg_req(9) forever and always ππ
π¦ 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