mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
net: hns3: set ops to null when unregister ad_dev
[ Upstream commit594a81b395] The hclge/hclgevf and hns3 module can be unloaded independently, when hclge/hclgevf unloaded firstly, the ops of ae_dev should be set to NULL, otherwise it will cause an use-after-free problem. Fixes:38caee9d3e("net: hns3: Add support of the HNAE3 framework") Signed-off-by: Weihang Li <liweihang@hisilicon.com> Signed-off-by: Peng Li <lipeng321@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
35407917b0
commit
cac3032062
@@ -229,6 +229,7 @@ void hnae3_unregister_ae_algo(struct hnae3_ae_algo *ae_algo)
|
||||
|
||||
ae_algo->ops->uninit_ae_dev(ae_dev);
|
||||
hnae3_set_bit(ae_dev->flag, HNAE3_DEV_INITED_B, 0);
|
||||
ae_dev->ops = NULL;
|
||||
}
|
||||
|
||||
list_del(&ae_algo->node);
|
||||
@@ -316,6 +317,7 @@ void hnae3_unregister_ae_dev(struct hnae3_ae_dev *ae_dev)
|
||||
|
||||
ae_algo->ops->uninit_ae_dev(ae_dev);
|
||||
hnae3_set_bit(ae_dev->flag, HNAE3_DEV_INITED_B, 0);
|
||||
ae_dev->ops = NULL;
|
||||
}
|
||||
|
||||
list_del(&ae_dev->node);
|
||||
|
||||
Reference in New Issue
Block a user