dma_chan_put(9)
okay so bestie, we're doing dma_chan_put(9) from the Kernel API Manual and honestly? it's a tiny little function with big main-character energy π
β¨ NAME β¨
dma_chan_put β drop a reference to a DMA channel's parent driver module
like, you're letting go of a ref, respectfully π«Ά
πΈ SYNOPSIS πΈ
void dma_chan_put (struct dma_chan *chan );
no cap, that's the whole signature β¨
π ARGUMENTS π
chanβ the channel to release. that's your girl to let go of π
π DESCRIPTION π
okay so this is the important part, bestie: Must be called under dma_list_mutex.
like, not optional. not "eh, maybe later." you gotta be holding dma_list_mutex when you call this. periodt. π₯
π¦ SEE ALSO π¦
- Kernel file
./drivers/dma/dmaengine.c dev_to_dma_chan(9)struct dma_chan_tbl_ent(9)dma_chan_is_local(9)min_chan(9)dma_channel_rebalance(9)balance_ref_count(9)dma_chan_get(9)dma_find_channel(9)dma_issue_pending_all(9)dma_get_slave_channel(9)__dma_request_channel(9)dma_request_chan(9)dma_request_chan_by_mask(9)devm_dma_request_chan(9)dmaengine_get(9)dmaengine_put(9)dma_async_device_register(9)dma_async_device_unregister(9)dmaenginem_async_device_register(9)dma_wait_for_async_tx(9)dma_run_dependencies(9)
go read those if you want the full lore, iykyk πβ¨
and that's the whole vibe check, bestie π this cutie lives over in ./drivers/dma, dated October 2026, and it's literally called dma_chan_put(9) β slay, goodbye, don't forget your dma_list_mutex ππ
π¦ 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