STRUCT CHAIN_ELEMENT(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct chain_element(9) πŸ’–

okay so bestie, we're in the Kernel API Manual today and the star of the show is struct chain_element(9) β€” no cap, it's lowkey one of the most iconic little helpers in the whole mpi3mr saga 🫢


✨ NAME ✨

struct chain_element β€” it's a memory descriptor structure, and its whole job is to store virtual and dma addresses for chain elements πŸ’… like that's literally it, that's the gig, and it does it beautifully.


🌸 SYNOPSIS 🌸

struct chain_element {
    void *addr;
    dma_addr_t dma_addr;
 };

look at her. two members. clean lines. main character energy ✨


πŸŽ€ Members πŸŽ€

  • addr β€” the virtual address πŸ’œ
  • dma_addr β€” the dma address πŸ¦‹

yep, one of each, no notes, she ate πŸ”₯


🌈 SEE ALSO 🌈

Kernel file ./drivers/scsi/mpi3mr/mpi3mr.h plus the whole friend group β€” seriously, this struct rolls deep:

  • struct mpi3mr_nvme_pt_sge(9)
  • struct mpi3mr_buf_map(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 scmd_priv(9)
  • struct mpi3mr_ioc(9)
  • struct mpi3mr_fwevt(9)
  • struct delayed_dev_rmhs_node(9)
  • struct delayed_evt_ack_node(9)

like… the whole cast 😭 go read them, fr fr, iykyk πŸ‘‘


aaaand that's the page, bestie πŸ’– this one lives in ./drivers/scsi/mpi3mr and it's dated October 2026 β€” so jot that down, screenshot it, whatever you gotta do πŸ“Έ mwah, slay, bye πŸ§šβ€β™€οΈβ­

πŸ“¦ where this page comes from