Messages in this thread | | | Date | Wed, 19 Jun 2013 10:36:50 -0700 | From | Dave Jiang <> | Subject | Re: [PATCH 2/2] ioatdma: add DMA_PRIVATE capabilities flag |
| |
On 06/18/2013 05:59 PM, Dan Williams wrote: > On Tue, Jun 18, 2013 at 5:46 PM, Jon Mason <jon.mason@intel.com> 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@intel.com> >> Acked-by: Dave Jiang <dave.jiang@intel.com> >> --- >> 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. dave.jiang@intel.com
| |