From: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx> Date: Wed, 19 Apr 2017 22:09:51 +0300 > On 04/17/2017 11:10 PM, David Miller wrote: > >>> The DMA API debugging (when enabled) causes: >>> >>> WARNING: CPU: 0 PID: 1445 at lib/dma-debug.c:519 >>> add_dma_entry+0xe0/0x12c >>> DMA-API: exceeded 7 overlapping mappings of cacheline 0x01b2974d >>> >>> to be printed after repeated initialization of the Ether device, e.g. >>> suspend/resume or 'ifconfig' up/down. This is because DMA buffers >>> mapped >>> using dma_map_single() in sh_eth_ring_format() and sh_eth_start_xmit() >>> are >>> never unmapped. Resolve this problem by unmapping the buffers when >>> freeing >>> the descriptor rings; in order to do it right, we'd have to add an >>> extra >>> parameter to sh_eth_txfree() (we rename this function to >>> sh_eth_tx_free(), >>> while at it). >>> >>> Based on the commit a47b70ea86bd ("ravb: unmap descriptors when >>> freeing >>> rings"). >>> >>> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx> >> >> Applied, thanks. > > Please don;t forget to send it to -stable. > The bug seems to be there from the very beginning. Ok, queued up.