mpi3mr_diag_buffer_for_type(9)
π mpi3mr_diag_buffer_for_type(9) β the kernel API manual, bestie edition π
okay so real talk, this is a page from the Kernel API Manual and it's about one tiny-but-iconic little function called mpi3mr_diag_buffer_for_type. she's not doing the most, but she's doing her job and honestly? we respect her for it. β¨
β¨ NAME β¨
mpi3mr_diag_buffer_for_type β returns buffer desc for type
like, that's literally the whole gig. she gives you the buffer descriptor for a type. no cap. π
π¦ SYNOPSIS π¦
struct diag_buffer_desc * mpi3mr_diag_buffer_for_type (struct mpi3mr_ioc
*mrioc , u8 buf_type );
πΈ ARGUMENTS πΈ
mriocβ the adapter instance reference, aka your main character. you gotta hand her the adapter you care about. πbuf_typeβ the diagnostic buffer type. it's au8, it's a vibe, it's how you tell her which diag buffer you're looking for. π―
π DESCRIPTION π
the way that this function works is genuinely so chill: it goes and identifies the matching diag descriptor from mrioc for the given diag buffer type. that's it. that's the whole thing. you show up with an adapter and a type, she finds the descriptor that matches, and you both move on with your lives. slay. π
β¨
π₯ RETURN π₯
- the diag buffer descriptor on success π«Ά
NULLon failures π (yes, you gotta check. always check. ngl, checking is the moment.)
fr fr, if you get NULL back that's not a cute surprise, that's a failure β handle it. π
π SEE ALSO π
the kernel file lives right here, iykyk:
./drivers/scsi/mpi3mr/mpi3mr_app.c
and here's the whole friend group, every single one of them, no skips:
mpi3mr_alloc_trace_buffer(9)mpi3mr_alloc_diag_bufs(9)mpi3mr_issue_diag_buf_post(9)mpi3mr_post_diag_bufs(9)mpi3mr_issue_diag_buf_release(9)mpi3mr_process_trigger(9)mpi3mr_global_trigger(9)mpi3mr_scsisense_trigger(9)mpi3mr_event_trigger(9)mpi3mr_reply_trigger(9)mpi3mr_get_num_trigger(9)mpi3mr_refresh_trigger(9)mpi3mr_release_diag_bufs(9)mpi3mr_set_trigger_data_in_hdb(9)mpi3mr_set_trigger_data_in_all_hdb(9)mpi3mr_hdbstatuschg_evt_th(9)mpi3mr_bsg_pel_abort(9)mpi3mr_bsg_verify_adapter(9)mpi3mr_bsg_refresh_hdb_triggers(9)mpi3mr_bsg_upload_hdb(9)mpi3mr_bsg_repost_hdb(9)mpi3mr_bsg_query_hdb(9)mpi3mr_enable_logdata(9)mpi3mr_get_logdata(9)mpi3mr_bsg_pel_enable(9)mpi3mr_get_all_tgt_info(9)mpi3mr_get_change_count(9)mpi3mr_bsg_adp_reset(9)mpi3mr_bsg_populate_adpinfo(9)mpi3mr_bsg_process_drv_cmds(9)mpi3mr_total_num_ioctl_sges(9)mpi3mr_bsg_build_sgl(9)mpi3mr_get_nvme_data_fmt(9)mpi3mr_build_nvme_sgl(9)mpi3mr_build_nvme_prp(9)mpi3mr_map_data_buffer_dma(9)mpi3mr_bsg_process_mpt_cmds(9)mpi3mr_app_save_logdata_th(9)mpi3mr_bsg_request(9)mpi3mr_bsg_exit(9)mpi3mr_bsg_node_release(9)mpi3mr_bsg_init(9)version_fw_show(9)fw_queue_depth_show(9)op_req_q_count_show(9)reply_queue_count_show(9)reply_qfull_count_show(9)logging_level_show(9)logging_level_store(9)adp_state_show(9)fwfault_count_show(9)sas_address_show(9)device_handle_show(9)persistent_id_show(9)sas_ncq_prio_supported_show(9)sas_ncq_prio_enable_show(9)
and that's the page, bestie π« this little manual lives in ./drivers/scsi/mpi3mr, dated October 2026, and it's filed under mpi3mr_diag_buffer_for_type(9) β go off, queen ππ
π¦ 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