STRUCT LEAPRAID_IOCTL_COMMAND(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct leapraid_ioctl_command β€” the Kernel API Manual glow-up ✨

okay bestie, buckle up πŸŽ€ this is struct leapraid_ioctl_command from the Kernel API Manual, aka the IOCTL command structure. yes it's a struct, yes it has a flexible array at the end, yes it's iconic. let's get into it πŸ’…


✨ NAME ✨

struct leapraid_ioctl_command β€” the IOCTL command structure. that's it, that's the vibe πŸ¦‹


🌸 SYNOPSIS 🌸

here's the whole shape of her, literally verbatim, don't touch a single character:

struct leapraid_ioctl_command {
    struct leapraid_ioctl_header hdr;
    u32 timeout;
    void __user *rep_msg_buf_ptr;
    void __user *c2h_buf_ptr;
    void __user *h2c_buf_ptr;
    void __user *sense_data_ptr;
    u32 max_rep_bytes;
    u32 c2h_size;
    u32 h2c_size;
    u32 max_sense_bytes;
    u32 data_sge_offset;
    u8 mf[];
};

like… she's structured, she's organized, she ate πŸ”₯


πŸ¦‹ Members πŸ¦‹

bestie these are the fields, and no we are not skipping any of them, every single one gets her moment πŸ‘‘

  • hdr β€” the IOCTL header. the little intro before the main character arrives πŸ’«
  • timeout β€” command timeout. the "how long are we waiting around for this" number ⏳
  • rep_msg_buf_ptr β€” a user pointer to the reply message buffer. yes, user pointer, keep that in mind 🫢
  • c2h_buf_ptr β€” a user pointer to the card-to-host data buffer. card ➑️ host, get it? πŸ“₯
  • h2c_buf_ptr β€” a user pointer to the host-to-card data buffer. host ➑️ card, the other direction, we love a symmetrical queen 🌈
  • sense_data_ptr β€” a user pointer to the sense data buffer. she's got sense, obviously πŸ’…
  • max_rep_bytes β€” maximum reply bytes. the ceiling on how much reply you can get πŸ“
  • c2h_size β€” the card-to-host data size. πŸ“¦
  • h2c_size β€” the host-to-card data size. πŸ“¦
  • max_sense_bytes β€” maximum sense data bytes. again, boundaries, we respect them ✨
  • data_sge_offset β€” the data SGE offset. offsets are lowkey underrated ngl πŸŽ€
  • mf β€” the message frame data, and she's a flexible array. flexible, like your plans on a friday night πŸŒ™
fr fr, four of these are __user pointers pointing at user buffers β€” that's literally in the types, i'm not making it up 😭

πŸ’œ SEE ALSO πŸ’œ

go read these next, i'm obsessed with a cross-reference moment:

  • Kernel file ./drivers/scsi/leapraid/leapraid_app.c
  • struct leapraid_ioctl_header(9)
  • struct leapraid_ioctl_diag_reset(9)
  • struct leapraid_ioctl_pci_info(9)
  • struct leapraid_ioctl_adapter_info(9)

and that's the page!! πŸ“ this whole thing lives at ./drivers/scsi/leapraid, it's dated October 2026, and the page title is literally struct leap...octl_command(9) (yes, truncated with the dots, that's the actual string, she's mysterious like that πŸ™ˆ). mwah, study hard, ily, bye πŸ’–πŸ§šβ€β™€οΈ

πŸ“¦ where this page comes from