STRUCT USB_FFS_DMABUF_TRANSFER_REQ(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct usb_ffs_dmabuf_transfer_req β€” the Kernel API Manual era ✨

okay so bestie, welcome to the Kernel API Manual entry for struct usb_ffs_dmabuf_transfer_req(9) β€” yes the header truncates it to struct usb_f...transfer_req(9), that's just how the man page renders it, don't come for me πŸ’…


🌸 NAME 🌸

struct usb_ffs_dmabuf_transfer_req β€” Transfer request for a DMABUF object. that's literally the whole vibe. it's the little struct that says "hey, here's a DMABUF, go move some data" πŸ¦‹


πŸŽ€ SYNOPSIS πŸŽ€

struct usb_ffs_dmabuf_transfer_req {
    int fd;
    __u32 flags;
    __u64 length;
 };

like, look at her. three fields. iconic. no notes. πŸ‘‘


πŸ’– Members πŸ’–

  • fd β€” the file descriptor of the DMABUF object. bestie it's the fd. that's the whole thing. it's how you point at the buffer 🫢
  • flags β€” one or more USB_FFS_DMABUF_TRANSFER_* flags. plural behavior, one or more, so stack 'em if you got 'em ✨
  • length β€” number of bytes used in this DMABUF for the data transfer. and ngl, the man page itself says it should generally be set to the DMABUF's size β€” like yeah, that's the default move, that's the assignment πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./include/uapi/linux/usb/functionfs.h
  • struct usb_dfu_functional_descriptor(9)
  • descriptors(9)

go read those too, iykyk, they're the supporting cast πŸ’œ



and that's the page!! πŸŽ‰ this little cutie lives under ./include/uapi/linux/usb, it's dated October 2026, and the whole thing is filed under struct usb_f...transfer_req(9) in the Kernel API Manual β€” slay, stan, periodt πŸŽ€πŸ’…πŸ”₯

πŸ“¦ where this page comes from