OSDN Git Service

net: hns3: fix a double shift bug
authorDan Carpenter <dan.carpenter@oracle.com>
Sat, 19 Jun 2021 13:49:18 +0000 (16:49 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 21 Jun 2021 19:14:11 +0000 (12:14 -0700)
These flags are used to set and test bits like this:

if (!test_bit(HCLGE_PTP_FLAG_TX_EN, &ptp->flags) ||

The issue is that test_bit() takes a bit number like 1, but we are
passing BIT(1) instead and it's testing BIT(BIT(1)).  This does not
cause a problem because it is always done consistently and the bit
values are very small.

Fixes: 0bf5eb788512 ("net: hns3: add support for PTP")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_ptp.h

index b3ca7af..5a202b7 100644 (file)
@@ -43,9 +43,9 @@
 #define HCLGE_PTP_SEC_H_OFFSET         32u
 #define HCLGE_PTP_SEC_L_MASK           GENMASK(31, 0)
 
-#define HCLGE_PTP_FLAG_EN              BIT(0)
-#define HCLGE_PTP_FLAG_TX_EN           BIT(1)
-#define HCLGE_PTP_FLAG_RX_EN           BIT(2)
+#define HCLGE_PTP_FLAG_EN              0
+#define HCLGE_PTP_FLAG_TX_EN           1
+#define HCLGE_PTP_FLAG_RX_EN           2
 
 struct hclge_ptp {
        struct hclge_dev *hdev;