hcd_buffer_create(9)
π hcd_buffer_create(9) π
okay bestie, welcome to the Kernel API Manual β this one's hcd_buffer_create, and it's literally the moment your host controller gets its very own buffer pools β¨
NAME πΈ
hcd_buffer_create β initialize buffer pools
Yeah. That's it. That's the whole job. Slay.
SYNOPSIS π
int hcd_buffer_create (struct usb_hcd *hcd );
ARGUMENTS π¦
hcdβ the bus whose buffer pools are to be initialized π
CONTEXT π
task context, and no cap: this one might sleep π΄ so don't be out here calling it from somewhere spicy.
DESCRIPTION π
Call this as part of initializing a host controller that uses the DMA memory allocators π
It initializes some pools of dma-coherent memory that will be shared by all the drivers using that controller β like, the whole friend group shares the snack stash, iykyk π
When you're done with those pools, call hcd_buffer_destroy to clean up after them π§Ήβ¨ (yes bestie, you have to actually clean up. main character energy includes aftercare.)
RETURN β
0if successful ππ- a negative errno value otherwise π
SEE ALSO π₯
- Kernel file
./drivers/usb/core/buffer.c hcd_buffer_destroy(9)
btw this whole page lives under ./drivers/usb/core π«Ά β dated October 2026 in the Kernel API Manual, and that's the whole vibe check. go forth and initialize your pools, bestie πβ¨π
π¦ 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