/** * blk_rq_dma_map_coalesce - were all segments coalesced? * @state: DMA state to check * * Returns true if blk_rq_dma_map_iter_start coalesced all segments into a * single DMA range.
*/ staticinlinebool blk_rq_dma_map_coalesce(struct dma_iova_state *state)
{ return dma_use_iova(state);
}
/** * blk_rq_dma_unmap - try to DMA unmap a request * @req: request to unmap * @dma_dev: device to unmap from * @state: DMA IOVA state * @mapped_len: number of bytes to unmap * * Returns %false if the callers need to manually unmap every DMA segment * mapped using @iter or %true if no work is left to be done.
*/ staticinlinebool blk_rq_dma_unmap(struct request *req, struct device *dma_dev, struct dma_iova_state *state, size_t mapped_len)
{ if (req->cmd_flags & REQ_P2PDMA) returntrue;
if (dma_use_iova(state)) {
dma_iova_destroy(dma_dev, state, mapped_len, rq_dma_dir(req),
0); returntrue;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.