STRUCT MPI3MR_BUF_MAP(9)
π¦ struct mpi3mr_buf_map(9) π¦
Kernel API Manual, bestie β folded in right here like a lil name tag at the function party π
π NAME π
struct mpi3mr_buf_map is the local structure that tracks the kernel and user buffers associated with an BSG structure. That's it, that's the whole job, and it's doing it slayfully π
β¨ SYNOPSIS β¨
okay so here's the exact struct, no cap β every field stays exactly as written:
struct mpi3mr_buf_map {
void *bsg_buf;
u32 bsg_buf_len;
void *kern_buf;
u32 kern_buf_len;
dma_addr_t kern_buf_dma;
u8 data_dir;
u16 num_dma_desc;
struct dma_memory_desc *dma_desc;
};
π Members π
Let's give each documented member its moment, bestie:
bsg_bufβ BSG buffer virtual address. It's giving "where the BSG buffer lives in virtual-address land" β¨bsg_buf_lenβ BSG buffer length. Yep, it's the length of the BSG buffer, iconic.kern_bufβ Kernel buffer virtual address. The virtual address of the kernel buffer, periodt.kern_buf_lenβ Kernel buffer length. The length of the kernel buffer, no cap.kern_buf_dmaβ Kernel buffer DMA address. The DMA address for the kernel buffer, slay.data_dirβ Data direction. Which way the data is headed β that's the vibe.
Tiny heads-up: the synopsis also hasu16 num_dma_desc;andstruct dma_memory_desc *dma_desc;. This page's Members section doesn't give those two their own descriptions, so I'm not inventing anything β periodt π
π SEE ALSO π
Kernel file: ./drivers/scsi/mpi3mr/mpi3mr.h β and the whole SEE ALSO group chat is:
struct mpi3mr_nvme_pt_sge(9)struct mpi3mr_compimg_ver(9)struct segments(9)struct op_req_qinfo(9)struct op_reply_qinfo(9)struct mpi3mr_intr_info(9)struct mpi3mr_throttle_group_info(9)struct mpi3mr_hba_port(9)struct mpi3mr_sas_port(9)struct mpi3mr_sas_phy(9)struct mpi3mr_sas_node(9)struct mpi3mr_enclosure_node(9)struct tgt_dev_sas_sata(9)struct tgt_dev_pcie(9)struct tgt_dev_vd(9)union _form_spec_inf(9)struct mpi3mr_tgt_dev(9)mpi3mr_tgtdev_get(9)mpi3mr_free_tgtdev(9)mpi3mr_tgtdev_put(9)struct mpi3mr_stgt_priv_data(9)struct mpi3mr_drv_cmd(9)union mpi3mr_trigger_data(9)struct trigger_event_data(9)struct diag_buffer_desc(9)struct dma_memory_desc(9)struct chain_element(9)struct scmd_priv(9)struct mpi3mr_ioc(9)struct mpi3mr_fwevt(9)struct delayed_dev_rmhs_node(9)struct delayed_evt_ack_node(9)
mwah π β this page's source/version is ./drivers/scsi/mpi3mr, and the date is October 2026. That's the footer, bestie. We ate. Periodt π
π¦ 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