summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet
diff options
context:
space:
mode:
authorLipeng2017-10-23 13:51:02 +0200
committerDavid S. Miller2017-10-24 02:16:41 +0200
commit564883bb4dc1a4f3cba6344e77743175694b0761 (patch)
tree09969f4be4a36d39a36af763addee46e56c69e10 /drivers/net/ethernet
parentnet: hns3: fix a bug when alloc new buffer (diff)
downloadkernel-qcow2-linux-564883bb4dc1a4f3cba6344e77743175694b0761.tar.gz
kernel-qcow2-linux-564883bb4dc1a4f3cba6344e77743175694b0761.tar.xz
kernel-qcow2-linux-564883bb4dc1a4f3cba6344e77743175694b0761.zip
net: hns3: fix the bug when map buffer fail
If one buffer had been recieved to stack, driver will alloc a new buffer, map the buffer to device and replace the old buffer. When map fail, should only free the new alloced buffer, but not free all buffers in the ring. Fixes: 76ad4f0 (net: hns3: Add support of HNS3 Ethernet Driver for hip08 SoC) Signed-off-by: Lipeng <lipeng321@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet')
-rw-r--r--drivers/net/ethernet/hisilicon/hns3/hns3pf/hns3_enet.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hns3_enet.c
index 3ddcd47fa61c..58aa2dd6ace0 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hns3_enet.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hns3_enet.c
@@ -1555,7 +1555,7 @@ static int hns3_reserve_buffer_map(struct hns3_enet_ring *ring,
return 0;
out_with_buf:
- hns3_free_buffers(ring);
+ hns3_free_buffer(ring, cb);
out:
return ret;
}