xgene_dma_cl...g_descriptor(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ xgene_dma_clean_running_descriptor β€” the Kernel API Manual, bestie edition πŸŽ€

okay so this is the page for xgene_dma_clean_running_descriptor(9) and honestly? it's giving cleanup crew main character energy. it lives in the Kernel API Manual and it is so much chiller than it sounds, trust πŸ’…


✨ NAME ✨

xgene_dma_clean_running_descriptor β€” move the completed descriptor from ld_running to ld_completed

no cap, that's the whole job. it's a glow-up relocation service for descriptors 🌸


πŸ¦‹ SYNOPSIS πŸ¦‹

void xgene_dma_clean_running_descriptor (struct xgene_dma_chan *chan ,
       struct xgene_dma_desc_sw *desc );

it returns void, so like… nothing comes back. it just does the thing and leaves. iconic behavior honestly πŸ‘‘


πŸ’– ARGUMENTS πŸ’–

  • chan β€” the X-Gene DMA channel. this is the vibe check context, the place where all the descriptor shuffling actually happens 🫢
  • desc β€” the descriptor which is completed. yes bestie, this one's done, it's finished, it ate and it's ready to move on ✨

πŸ”₯ DESCRIPTION πŸ”₯

so here's the tea. this function figures out where a finished descriptor should go. two possible outcomes, and it picks based on one condition:

  • if it's acked by the async_tx api β€” free the descriptor directly. like, immediately. no queue, no waiting, just poof, gone πŸ’€
  • else β€” move it to the queue ld_completed. it goes and waits with the other completed descriptors like it's in the group chat but on read-only mode πŸ™ˆ

that's literally it. simple, elegant, does exactly one thing. we love a focused function πŸ’œ


🌈 SEE ALSO 🌈

all of these are the extended universe fr fr β€” same family, same drama, same drivers/dma neighborhood 🏑


little reminder bestie: if it is acked by async_tx, the descriptor gets freed directly. do not pass go, do not collect ld_completed. 😭

and that's the page!! source path: ./drivers/dma, dated October 2026, straight out of the Kernel API Manual. mwah, go forth and clean those running descriptors πŸ’…πŸŽ€πŸ¦‹β­

πŸ“¦ where this page comes from