mv_check_atapi_dma(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie πŸ’– welcome to the mv_check_atapi_dma(9) page from the Kernel API Manual. This is the ATAPI DMA vibe check, and yes, it’s giving β€œtiny function, very important filter” energy ✨.

πŸŽ€ NAME πŸŽ€

mv_check_atapi_dma β€” filter ATAPI cmds which are unsuitable for DMA. That’s it, that’s the job: it’s the bouncer at the DMA club, checking which ATAPI cmds get in and which ones are a hard no πŸ’….

✨ SYNOPSIS ✨

int mv_check_atapi_dma (struct ata_queued_cmd *qc );

Returns an int and takes a pointer to struct ata_queued_cmd named qc β€” short, iconic, no notes 🫢.

🫢 ARGUMENTS 🫢

  • qc β€” the queued command to check for chipset/DMA compatibility. Basically, β€œdoes this queued command match the chipset/DMA setup?” energy ✨.

πŸ’… DESCRIPTION πŸ’…

The bmdma engines cannot handle speculative data sizes β€” that’s the bytecount under/over flow situation 😭 β€” so this function only allows DMA for data transfer commands with known data sizes. If the data size is not known, it is not getting the DMA pass, periodt.

LOCKING: Inherited from caller. It does not bring its own lock drama; it inherits the locking from whoever called it πŸ™ˆ.

🌈 SEE ALSO 🌈

Kernel file ./drivers/ata/sata_mv.c and the whole function crew:

Signed off from ./drivers/ata (source/version), dated October 2026 β€” mv_check_atapi_dma(9) out, bestie πŸ’œβœ¨

πŸ“¦ where this page comes from