> Actually this is what I'm working on now, using async_tx to replace the > memcpy. I believe the changes shouldn't be that significant. > > Is the "hardware that can setup dma" you refer to something that does > not use this interface? > Yes, they use this interface, but split 'memcpy_toio' to two operation: 1. setup dma 2. wait/poll for the dma to finish. So maybe it need to provide a generic function 'tx' for different hardwares. If async_tx is available, it's much better than this 'sync dma/memcpy'. One problem with async_tx is, it can't detect memcpy error. If the remote ntb goes down when async_memcpy is in operation, async_tx will trigger an oops. -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html