ãQuestionãWhether it's legal to enable same physical DMA memory mapped for different NIC device?

From: ustc.mail
Date: Wed Dec 07 2011 - 09:16:53 EST


Dear all,

In NIC driver, to eliminate the overhead of dma_map_single() for DMA
packet data, we have statically allocated huge DMA memory buffer ring
at once instead of calling dma_map_single() per packet. Considering
to further reduce the copy overhead between different NIC(port) ring
while forwarding, one packet from a input NIC(port) will be
transferred to output NIC(port) with no any copy action.

To satisfy this requirement, the packet memory should be mapped into
input port and unmapped when leaving input port, then mapped into
output port and unmapped later.

Whether it's legal to map the same DMA memory into input and output
port simultaneously? If it's not, then the zero-copy for packet
forwarding is not feasible?

Hope PCI expert to post your suggestion.

Thanks!

--Yanfei

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/