ccio_unmap_sg(9)
π ccio_unmap_sg β like, the un-mapping one, bestie
okay so real talk, this is page ccio_unmap_sg(9) from the Kernel API Manual, and if you're here it's because something got mapped into the IOMMU and now it's gotta come back out. we love a cleanup era. β¨
π NAME π
ccio_unmap_sg β unmap the scatter/gather list from the IOMMU. that's the whole vibe. in goes a list, out goes the mapping. periodt.
π¦ SYNOPSIS π¦
void ccio_unmap_sg (struct device *dev , struct scatterlist *sglist ,
int nents , enum dma_data_direction direction , unsigned long attrs );
literally just those five things and you're done. no cap. π
πΈ ARGUMENTS πΈ
okay let's meet the cast π«Ά
devβ the PCI device. the main character, honestly. it's the one whose stuff is getting unmapped.sglistβ the scatter/gather list that's getting unmapped from the IOMMU. this is the list. the actual list. hold it gently.nentsβ the number of entries in the scatter/gather list. a count. a whole number. don't lie to it. πdirectionβ the direction of the DMA transaction (to/from device). iykyk.attrsβ attributes. yes that's it. that's the description. attributes. π
π§ DESCRIPTION π§
so what does it do? this function implements the pci_unmap_sg function. that's it. that's the tea. β
like, it's the pci_unmap_sg implementation for this bad boy right here, and honestly? iconic. it shows up, it unmaps, it leaves. no notes. β¨
π SEE ALSO π
bestie you are NOT ready for this reading list, it's giving syllabus day ππ
kernel file ./drivers/parisc/ccio-dma.c, plus the whole friend group:
ccio_alloc_range(9)ccio_free_range(9)ccio_io_pdir_entry(9)ccio_clear_io_tlb(9)ccio_mark_invalid(9)ccio_dma_supported(9)ccio_map_single(9)ccio_unmap_phys(9)ccio_alloc(9)ccio_free(9)ccio_map_sg(9)ccio_find_ioc(9)ccio_get_iommu(9)ccio_ioc_init(9)ccio_probe(9)ccio_init(9)
π friendly reminder that ccio_map_sg(9) is right there in the list β the mapping one β so if you're reading the *un*mapping page you probably already know each other. slay.
and that's the page!! this gem lives in ./drivers/parisc, dated October 2026, and it's brought to you by the Kernel API Manual (section 9). go unmap something, bestie. 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