On 01/24/2017 09:21 PM, Simon Horman wrote:
From: Kazuya Mizuguchi <kazuya.mizuguchi.ks@xxxxxxxxxxx> "swiotlb buffer is full" errors occur after repeated initialisation of a device - f.e. suspend/resume or ip link set up/down. This is because memory mapped using dma_map_single() in ravb_ring_format() and ravb_start_xmit() is not released. Resolve this problem by unmapping descriptors when freeing rings.
Could you look into the sh_eth driver which seems to have the same issue?
Note, ravb_tx_free() is moved but not otherwise modified by this patch.
This is not true anymore BTW.
Signed-off-by: Kazuya Mizuguchi <kazuya.mizuguchi.ks@xxxxxxxxxxx> [simon: reworked] Signed-off-by: Simon Horman <horms+renesas@xxxxxxxxxxxx>
MBR, Sergei