_ctl_send_mctp_passthru_req(9)
π NAME π
_ctl_send_mctp_passthru_req β literally just sending an MCTP passthru request, bestie π (this is the _ctl_send_mctp_passthru_req(9) kernel API manual, and yes we're getting into it)
β¨ SYNOPSIS β¨
void _ctl_send_mctp_passthru_req (struct MPT3SAS_ADAPTER *ioc ,
Mpi26MctpPassthroughRequest_t *mctp_passthru_req , void *psge ,
dma_addr_t data_out_dma , int data_out_sz , dma_addr_t data_in_dma , int
data_in_sz , u16 smid );
okay so it returns void β meaning it does the thing and does not come back to tell you how it went. it's giving "i did it, don't ask questions" energy π
π ARGUMENTS π
Eight (8) arguments, no cap, let's go through every single one because we do not skip π
iocβ the per adapter object π¦ like, the actual adapter we're talking to. main character of the whole file ngl.mctp_passthru_reqβ the MPI mctppasshthrurequest from the caller π (yes the original spells it passhthru β she said what she said, we're keeping it, periodt).psgeβ pointer to theH2DSGLπ this is the hookup, treat her with respect.data_out_dmaβ DMA buffer for theH2D SGLβdata_out_szβH2Dlength, i.e. how much is going out πΈdata_in_dmaβ DMA buffer for theD2H SGLβdata_in_szβD2Hlength, i.e. how much is coming back πsmidβ theSMIDto submit the request with π₯ that's the ticket, bestie.
fr fr: H2D = host to device, D2H = device to host, and you need BOTH buffers plus their sizes, plus the SGL pointer and the SMID. no shortcuts, we love a complete call signature π
π¦ SEE ALSO π¦
Kernel file ./drivers/scsi/mpt3sas/mpt3sas_ctl.c β go read her, she's iconic. and then there's... gestures vaguely at the entire rest of the driver β okay buckle up, because this list is LONG and every single one of these is in the group chat π
enum block_state(9)_ctl_display_some_debug(9)mpt3sas_ctl_done(9)_ctl_check_event_type(9)mpt3sas_ctl_add_to_event_log(9)mpt3sas_ctl_event_callback(9)_ctl_verify_adapter(9)mpt3sas_ctl_pre_reset_handler(9)mpt3sas_ctl_clear_outstanding_ioctls(9)mpt3sas_ctl_reset_done_handler(9)_ctl_fasync(9)_ctl_poll(9)_ctl_set_task_mid(9)_ctl_do_mpt_command(9)_ctl_getiocinfo(9)_ctl_eventquery(9)_ctl_eventenable(9)_ctl_eventreport(9)_ctl_do_reset(9)_ctl_btdh_search_sas_device(9)_ctl_btdh_search_pcie_device(9)_ctl_btdh_search_raid_device(9)_ctl_btdh_mapping(9)_ctl_diag_capability(9)_ctl_diag_get_bufftype(9)_ctl_diag_register_2(9)mpt3sas_enable_diag_buffer(9)_ctl_diag_register(9)_ctl_diag_unregister(9)_ctl_diag_query(9)mpt3sas_send_diag_release(9)_ctl_diag_release(9)_ctl_diag_read_buffer(9)_ctl_addnl_diag_query(9)_ctl_enable_diag_sbr_reload(9)_ctl_compat_mpt_command(9)_ctl_ioctl_main(9)_ctl_get_mpt_mctp_passthru_adapter(9)mpt3sas_get_device_count(9)_ctl_ioctl(9)_ctl_mpt2_ioctl(9)_ctl_ioctl_compat(9)_ctl_mpt2_ioctl_compat(9)version_fw_show(9)version_bios_show(9)version_mpi_show(9)version_product_show(9)version_nvdata_persistent_show(9)version_nvdata_default_show(9)board_name_show(9)board_assembly_show(9)board_tracer_show(9)io_delay_show(9)device_delay_show(9)fw_queue_depth_show(9)host_sas_address_show(9)logging_level_show(9)fwfault_debug_show(9)ioc_reset_count_show(9)reply_queue_count_show(9)BRM_status_show(9)host_trace_buffer_size_show(9)host_trace_buffer_show(9)host_trace_buffer_enable_show(9)diag_trigger_master_show(9)diag_trigger_master_store(9)diag_trigger_event_show(9)diag_trigger_event_store(9)diag_trigger_scsi_show(9)diag_trigger_scsi_store(9)diag_trigger_mpi_show(9)diag_trigger_mpi_store(9)drv_support_bitmap_show(9)enable_sdev_max_qd_show(9)enable_sdev_max_qd_store(9)sas_address_show(9)sas_device_handle_show(9)sas_ncq_prio_supported_show(9)sas_ncq_prio_enable_show(9)mpt3sas_ctl_init(9)mpt3sas_ctl_release(9)mpt3sas_ctl_exit(9)
like I said. EVERYONE is here. it's a whole reunion episode π«Ά see also: your entire weekend π
and that's the page, bestie β shoutout to ./drivers/scsi/mpt3sas for hosting this whole situation, dated October 2026, filed under _ctl_send_mctp_passthru_req(9) β¨ slay, go send your request, iykyk ππ
π¦ 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