Re: [PATCH 2/2] ioatdma: add DMA_PRIVATE capabilities flag

From: Dave Jiang
Date: Wed Jun 19 2013 - 13:36:33 EST

On 06/18/2013 05:59 PM, Dan Williams wrote:
On Tue, Jun 18, 2013 at 5:46 PM, Jon Mason <jon.mason@xxxxxxxxx> wrote:
Set the DMA_PRIVATE dma_transaction_type in the capability mask. This
enables the ability to get an exclusive ioatdma DMA channel for any
devices that requests one via the dma_request_channel function call.

Signed-off-by: Jon Mason <jon.mason@xxxxxxxxx>
Acked-by: Dave Jiang <dave.jiang@xxxxxxxxx>
drivers/dma/ioat/dma_v3.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/dma/ioat/dma_v3.c b/drivers/dma/ioat/dma_v3.c
index ca6ea9b..ac2aeef 100644
--- a/drivers/dma/ioat/dma_v3.c
+++ b/drivers/dma/ioat/dma_v3.c
@@ -1883,6 +1883,7 @@ int ioat3_dma_probe(struct ioatdma_device *device, int dca)
dma->copy_align = 6;

dma_cap_set(DMA_INTERRUPT, dma->cap_mask);
+ dma_cap_set(DMA_PRIVATE, dma->cap_mask);
dma->device_prep_dma_interrupt = ioat3_prep_interrupt_lock;
DMA_PRIVATE here keeps all channels private, so they couldn't be used
elsewhere, for example raid offload. Do you need a private allocation
or can you get away with a dynamically assigned channel?
So is there no way to reserve a channel as private if no one is using it? It seems the current setup is async_tx or nothing.


Dave Jiang
Application Engineer, Storage Divsion
Intel Corp.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at