mpi3mr_free...q_q_segments(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ mpi3mr_free_op_req_q_segments(9) πŸŽ€

okay bestie, welcome to the Kernel API Manual ✨ β€” yes, that's the whole manual name, we're fancy here. This lil page is all about one function, and honestly? It's giving cleanup crew energy. Let's get into it πŸ’…


🌸 NAME 🌸

mpi3mr_free_op_req_q_segments β€” frees request memory segments 🧹

Like, it literally hands the memory back. No cap.


✨ SYNOPSIS ✨

void mpi3mr_free_op_req_q_segments (struct mpi3mr_ioc *mrioc , u16 q_idx );

That's the whole signature, keep it exactly like that, void return and all 🫢


πŸ’– ARGUMENTS πŸ’–

  • mrioc β€” the adapter instance reference. Think of it as the main character of this whole operation πŸ‘‘ it's your struct mpi3mr_ioc * and it knows everything about the controller.
  • q_idx β€” the operational request queue index, typed as u16. It's literally which queue you're talking about, bestie πŸ”’

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the vibe: this function frees the memory segments that were allocated for the operational request queue 🌈

That's it. That's the whole job. It's the undoing of the alloc, the "okay we're done here" moment, the graceful exit πŸšͺ✨


πŸ“ RETURN πŸ“

Nothing. πŸ’€

Not 0, not -ENOMEM, not a status code β€” it's a void function, so there's literally nothing coming back. It's giving "I did the thing, no notes" πŸ™ˆ


πŸ”₯ SEE ALSO πŸ”₯

okay so this is the part where the manpage shows off its entire friend group 😭 β€” the kernel file is ./drivers/scsi/mpi3mr/mpi3mr_fw.c and here's every single cross-reference, in order, exactly as listed, no skips (I would never skip, that's not the vibe):

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_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_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)
ngl that's a lot of friends but every single one of them is listed up there, mpimr_initialize_reply_sbuf_queues(9) included (yes with the mpimr spelling, I'm not touching it, that's not my business πŸ™ˆ).

and that's the whole page!! πŸ’œ one function, two arguments, zero return values, and a truly iconic amount of cross-references 🌟

this lil masterpiece lives at ./drivers/scsi/mpi3mr, dated October 2026, and it's filed under mpi3mr_free...q_q_segments(9) β€” slay, go free those segments bestie πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from