On 05/27/2013 09:13 AM, Ming Lei wrote: > This patch looses the check on DMA buffer size for streaming > DMA unmap, based on the below fact: > > - it is common to see only part of DMA transfer is completed, > especially in case of DMA_FROM_DEVICE > > So it isn't necessary to unmap the whole DMA buffer inside DMA > unmapping, and unmapping the actual completed buffer should be more > efficient. Considered that unmapping is often called in hard irq > context, time of irq handling can be saved. > > Cc: Shuah Khan <shuah.khan@xxxxxx> > Cc: Joerg Roedel <joro@xxxxxxxxxx> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > Cc: Alexander Duyck <alexander.h.duyck@xxxxxxxxx> > Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> > Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxxxxx> What you are proposing doesn't make much sense. If you are only wanting to use part of a buffer then just use the dma_sync primitives. The idea behind unmapping a buffer is to free any resources associated with it. Calling map once, and unmap multiple times per buffer is just asking for trouble in the form of use after free or memory leaks. Thanks, Alex -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html