Lars, Here's the reworked code per your comment. Let me know if this matches what you are thinking. Patch 2/4 shows how the driver provides the error, and patch 3,4/4 show how the errors are received by upper layer. The callback is an addition so people should be able to transition to the new one when convenient and the old callback still remains for compatibility. We should be able to expand on the new callback as needed since I don't know much about the slave DMA side of things. If you are ok with it I'll clean it up and add the proper comments/docs etc and resubmit. --- Dave Jiang (4): RFC: dmaengine: Add error reporting infrastructure RFC: dmaengine: ioatdma: Add error handling to ioat driver RFC: ntb: add DMA error handling for TX DMA RFC: ntb: add DMA error handling for RX DMA drivers/dma/ioat/dma.c | 155 +++++++++++++++++++++++++---- drivers/dma/ioat/registers.h | 2 drivers/ntb/ntb_transport.c | 228 ++++++++++++++++++++++++++++++++---------- include/linux/dmaengine.h | 16 +++ 4 files changed, 326 insertions(+), 75 deletions(-) -- -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html