]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: hns3: fix return value check bug of rx copybreak
authorJie Wang <wangjie125@huawei.com>
Mon, 14 Nov 2022 08:20:47 +0000 (16:20 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 26 Nov 2022 08:27:37 +0000 (09:27 +0100)
[ Upstream commit 29df7c695ed67a8fa32bb7805bad8fe2a76c1f88 ]

The refactoring of rx copybreak modifies the original return logic, which
will make this feature unavailable. So this patch fixes the return logic of
rx copybreak.

Fixes: e74a726da2c4 ("net: hns3: refactor hns3_nic_reuse_page()")
Fixes: 99f6b5fb5f63 ("net: hns3: use bounce buffer when rx page can not be reused")
Signed-off-by: Jie Wang <wangjie125@huawei.com>
Signed-off-by: Hao Lan <lanhao@huawei.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c

index 944f36e4d66fa4a7f8a6fa7510c00809b752121a..44d4265f109a8e018894c950d8888b9c1bef64c6 100644 (file)
@@ -3736,8 +3736,8 @@ static void hns3_nic_reuse_page(struct sk_buff *skb, int i,
                desc_cb->reuse_flag = 1;
        } else if (frag_size <= ring->rx_copybreak) {
                ret = hns3_handle_rx_copybreak(skb, i, ring, pull_len, desc_cb);
-               if (ret)
-                       goto out;
+               if (!ret)
+                       return;
        }
 
 out: