hc
2023-12-06 08f87f769b595151be1afeff53e144f543faa614
kernel/drivers/net/ethernet/hisilicon/hns3/hns3_dcbnl.c
....@@ -4,10 +4,12 @@
44 #include "hnae3.h"
55 #include "hns3_enet.h"
66
7
-static
8
-int hns3_dcbnl_ieee_getets(struct net_device *ndev, struct ieee_ets *ets)
7
+static int hns3_dcbnl_ieee_getets(struct net_device *ndev, struct ieee_ets *ets)
98 {
109 struct hnae3_handle *h = hns3_get_handle(ndev);
10
+
11
+ if (hns3_nic_resetting(ndev))
12
+ return -EBUSY;
1113
1214 if (h->kinfo.dcb_ops->ieee_getets)
1315 return h->kinfo.dcb_ops->ieee_getets(h, ets);
....@@ -15,10 +17,12 @@
1517 return -EOPNOTSUPP;
1618 }
1719
18
-static
19
-int hns3_dcbnl_ieee_setets(struct net_device *ndev, struct ieee_ets *ets)
20
+static int hns3_dcbnl_ieee_setets(struct net_device *ndev, struct ieee_ets *ets)
2021 {
2122 struct hnae3_handle *h = hns3_get_handle(ndev);
23
+
24
+ if (hns3_nic_resetting(ndev))
25
+ return -EBUSY;
2226
2327 if (h->kinfo.dcb_ops->ieee_setets)
2428 return h->kinfo.dcb_ops->ieee_setets(h, ets);
....@@ -26,10 +30,12 @@
2630 return -EOPNOTSUPP;
2731 }
2832
29
-static
30
-int hns3_dcbnl_ieee_getpfc(struct net_device *ndev, struct ieee_pfc *pfc)
33
+static int hns3_dcbnl_ieee_getpfc(struct net_device *ndev, struct ieee_pfc *pfc)
3134 {
3235 struct hnae3_handle *h = hns3_get_handle(ndev);
36
+
37
+ if (hns3_nic_resetting(ndev))
38
+ return -EBUSY;
3339
3440 if (h->kinfo.dcb_ops->ieee_getpfc)
3541 return h->kinfo.dcb_ops->ieee_getpfc(h, pfc);
....@@ -37,11 +43,13 @@
3743 return -EOPNOTSUPP;
3844 }
3945
40
-static
41
-int hns3_dcbnl_ieee_setpfc(struct net_device *ndev, struct ieee_pfc *pfc)
46
+static int hns3_dcbnl_ieee_setpfc(struct net_device *ndev, struct ieee_pfc *pfc)
4247 {
4348 struct hnae3_handle *h = hns3_get_handle(ndev);
4449
50
+ if (hns3_nic_resetting(ndev))
51
+ return -EBUSY;
52
+
4553 if (h->kinfo.dcb_ops->ieee_setpfc)
4654 return h->kinfo.dcb_ops->ieee_setpfc(h, pfc);
4755