]> www.infradead.org Git - users/jedix/linux-maple.git/commit
net: hns: fix for unmapping problem when SMMU is on
authorYunsheng Lin <linyunsheng@huawei.com>
Tue, 25 Sep 2018 09:21:55 +0000 (10:21 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 Oct 2018 07:16:17 +0000 (09:16 +0200)
commit6c61dae979ae39850a3a9945f93e83e5b5baf31c
treed012067750d3fae35a218aab0a335f2aeea757f2
parent8193b775247a2c38294fd9d1fee5084b5c1b3de8
net: hns: fix for unmapping problem when SMMU is on

[ Upstream commit 2e9361efa707e186d91b938e44f9e326725259f7 ]

If SMMU is on, there is more likely that skb_shinfo(skb)->frags[i]
can not send by a single BD. when this happen, the
hns_nic_net_xmit_hw function map the whole data in a frags using
skb_frag_dma_map, but unmap each BD' data individually when tx is
done, which causes problem when SMMU is on.

This patch fixes this problem by ummapping the whole data in a
frags when tx is done.

Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
Signed-off-by: Peng Li <lipeng321@huawei.com>
Reviewed-by: Yisen Zhuang <yisen.zhuang@huawei.com>
Signed-off-by: Salil Mehta <salil.mehta@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/hisilicon/hns/hnae.c
drivers/net/ethernet/hisilicon/hns/hns_enet.c