From: Yufeng Mo <moyuf...@huawei.com>

When allocating memory, the GFP_KERNEL cannot be used during the
spin_lock period. This is because it may cause scheduling when holding
spin_lock. This patch changes GFP flag to GFP_ATOMIC in this case.

Fixes: dd74f815dd41 ("net: hns3: Add support for rule add/delete for flow 
director")
Signed-off-by: Yufeng Mo <moyuf...@huawei.com>
Signed-off-by: lipeng 00277521 <lipeng...@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazh...@huawei.com>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 
b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
index 3c64d70..14199c4 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
@@ -5796,7 +5796,7 @@ static int hclge_add_fd_entry_by_arfs(struct hnae3_handle 
*handle, u16 queue_id,
                        return -ENOSPC;
                }
 
-               rule = kzalloc(sizeof(*rule), GFP_KERNEL);
+               rule = kzalloc(sizeof(*rule), GFP_ATOMIC);
                if (!rule) {
                        spin_unlock_bh(&hdev->fd_rule_lock);
 
-- 
2.7.4

Reply via email to