On Mon, Apr 23, 2012 at 6:51 AM, Jiang Liu <liuj97@xxxxxxxxx> wrote: > Enhance network subsystem to correctly update DMA channel reference counts, > so it won't break DMA device hotplug logic. > > Signed-off-by: Jiang Liu <liuj97@xxxxxxxxx> This introduces an atomic action on every channel touch, which is more expensive than what we had previously. There has always been a concern about the overhead of offload that sometimes makes ineffective or a loss compared to cpu copies. In the cases where net_dma shows improvement this will eat into / maybe eliminate that advantage. Take a look at where dmaengine started [1]. It was from the beginning going through contortions to avoid something like this. We made it simpler here [2], but still kept the principle of not dirtying a shared cacheline on every channel touch, and certainly not locking it. If you are going to hotplug the entire IOH, then you are probably ok with network links going down, so could you just down the links and remove the driver with the existing code? -- Dan [1]: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=c13c826 [2]: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=6f49a57a -- 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