sba_alloc(9)
πΈ NAME πΈ
Okay so welcome to sba_alloc(9), straight out of the Kernel API Manual, bestie π
β manual name folded in right here because we're cute like that. This page is all about sba_alloc β allocate/map shared mem for DMA. That's the whole name line, periodt β¨.
β¨ SYNOPSIS β¨
void * sba_alloc (struct device *hwdev , size_t size , dma_addr_t
*dma_handle , gfp_t gfp , unsigned long attrs );
π¦ ARGUMENTS π¦
Group-chat roll call, no skips:
hwdevβ thestruct device *that's the PCI instance owned by the driver that's asking. Like, the driver is the one asking, and this is its PCI device moment π«Ά.sizeβ number of bytes mapped in the driver buffer. That's the byte count, bestie, no cap.dma_handleβ IOVA of the new buffer. Iconic little handle β¨.gfpβ allocation flags. Just flags doing their flag thing.attrsβ attributes. Yep, the attributes π.
π DESCRIPTION π
This is lowkey the shortest description ever: see Documentation/core-api/dma-api-howto.rst π. That's the whole vibe β go read that doc, bestie. No extra lore here.
π SEE ALSO π
Kernel file ./drivers/parisc/sba_iommu.c is the main-character file for this one π. Also pls go peek at these related pages:
sba_dump_ranges(9)sba_dump_tlb(9)sba_dump_pdir_entry(9)sba_check_pdir(9)sba_dump_sg(9)sba_search_bitmap(9)sba_alloc_range(9)sba_free_range(9)sba_io_pdir_entry(9)sba_mark_invalid(9)sba_dma_supported(9)sba_map_single(9)sba_unmap_phys(9)sba_free(9)sba_map_sg(9)sba_unmap_sg(9)sba_get_iommu(9)sba_directed_lmmio(9)sba_distributed_lmmio(9)
Sign-off szn π«Ά: this page is from ./drivers/parisc, dated October 2026, and it's still sba_alloc(9) β mwah πβ¨
π¦ 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