dma_buf_unpin(9)
π dma_buf_unpin(9) β like, the Kernel API Manual one, bestie
okay so real talk, this is the <pink>dma_buf_unpin</pink> page from the Kernel API Manual and it is genuinely short but SO important, don't skip it π
β¨ NAME β¨
dma_buf_unpin β the vibe is: unpin a DMA-buf π¦
πΈ SYNOPSIS πΈ
void dma_buf_unpin (struct dma_buf_attachment *attach );
like, it returns void, it takes one thing, it's giving "I do one job and I do it well" energy π
π ARGUMENTS π
attachβ [in] the attachment that should get unpinned π«Ά literally just hand it the attachment and it handles it, no cap.
π DESCRIPTION π
bestie. listen. this is the undo button for dma_buf_pin. π₯
So like, dma_buf_unpin unpins a buffer that was previously pinned by dma_buf_pin, and once that pin is gone it allows the exporter to move any mapping of attach again π§ β yes, they were being held in place and now they're free to move, main character energy honestly.
And while it's doing that, it also informs the importer through dma_buf_attach_ops.invalidate_mappings so the importer knows the mappings are no longer valid. communication! we love to see it ππ
ngl thedma_buf_pin/dma_buf_unpinpair is a set β if you pin it, you unpin it. periodt.
β SEE ALSO β
so you can go down the whole rabbit hole, here's every single one, no skips, we don't gatekeep here π
- Kernel file
./drivers/dma-buf/dma-buf.c dma_buf_iter_begin(9)dma_buf_iter_next(9)implicit fence polling(9)dma_buf_set_name(9)dma buf device access(9)dma_buf_export(9)dma_buf_fd(9)dma_buf_fd_install(9)dma_buf_get(9)dma_buf_put(9)locking convention(9)dma_buf_dynamic_attach(9)dma_buf_attach(9)dma_buf_detach(9)dma_buf_pin(9)dma_buf_map_attachment(9)dma_buf_map_attachment_unlocked(9)dma_buf_unmap_attachment(9)dma_buf_unmap_attachment_unlocked(9)dma_buf_attach_revocable(9)dma_buf_invalidate_mappings(9)cpu access(9)dma_buf_begin_cpu_access(9)dma_buf_end_cpu_access(9)dma_buf_mmap(9)dma_buf_vmap(9)dma_buf_vmap_unlocked(9)dma_buf_vunmap(9)dma_buf_vunmap_unlocked(9)
go read dma_buf_pin(9) first if you haven't, iykyk π
okay and the lil sign-off, because the original footer said so: this one lives under ./drivers/dma-buf, it's from October 2026, and it's the dma_buf_unpin(9) page from the Kernel API Manual β bye bestie, go unpin something responsibly πβ¨π
π¦ 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