net: hns3: Add more packet size statisctics
authorJian Shen <shenjian15@huawei.com>
Fri, 5 Jan 2018 10:18:24 +0000 (18:18 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 8 Jan 2018 19:06:19 +0000 (14:06 -0500)
The statistics of rx/tx packets size greater than 1518
are not detailed. This patch adds more statistics for
different packet size range.

Signed-off-by: Jian Shen <shenjian15@huawei.com>
Signed-off-by: Peng Li <lipeng321@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.h

index 24d75ca..d7352f5 100644 (file)
@@ -295,8 +295,24 @@ static const struct hclge_comm_stats_str g_mac_stats_string[] = {
                HCLGE_MAC_STATS_FIELD_OFF(mac_tx_512_1023_oct_pkt_num)},
        {"mac_tx_1024_1518_oct_pkt_num",
                HCLGE_MAC_STATS_FIELD_OFF(mac_tx_1024_1518_oct_pkt_num)},
-       {"mac_tx_1519_max_oct_pkt_num",
-               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_1519_max_oct_pkt_num)},
+       {"mac_tx_1519_2047_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_1519_2047_oct_pkt_num)},
+       {"mac_tx_2048_4095_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_2048_4095_oct_pkt_num)},
+       {"mac_tx_4096_8191_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_4096_8191_oct_pkt_num)},
+       {"mac_tx_8192_12287_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_8192_12287_oct_pkt_num)},
+       {"mac_tx_8192_9216_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_8192_9216_oct_pkt_num)},
+       {"mac_tx_9217_12287_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_9217_12287_oct_pkt_num)},
+       {"mac_tx_12288_16383_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_12288_16383_oct_pkt_num)},
+       {"mac_tx_1519_max_good_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_1519_max_good_oct_pkt_num)},
+       {"mac_tx_1519_max_bad_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_tx_1519_max_bad_oct_pkt_num)},
        {"mac_rx_total_pkt_num",
                HCLGE_MAC_STATS_FIELD_OFF(mac_rx_total_pkt_num)},
        {"mac_rx_total_oct_num",
@@ -331,8 +347,24 @@ static const struct hclge_comm_stats_str g_mac_stats_string[] = {
                HCLGE_MAC_STATS_FIELD_OFF(mac_rx_512_1023_oct_pkt_num)},
        {"mac_rx_1024_1518_oct_pkt_num",
                HCLGE_MAC_STATS_FIELD_OFF(mac_rx_1024_1518_oct_pkt_num)},
-       {"mac_rx_1519_max_oct_pkt_num",
-               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_1519_max_oct_pkt_num)},
+       {"mac_rx_1519_2047_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_1519_2047_oct_pkt_num)},
+       {"mac_rx_2048_4095_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_2048_4095_oct_pkt_num)},
+       {"mac_rx_4096_8191_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_4096_8191_oct_pkt_num)},
+       {"mac_rx_8192_12287_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_8192_12287_oct_pkt_num)},
+       {"mac_rx_8192_9216_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_8192_9216_oct_pkt_num)},
+       {"mac_rx_9217_12287_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_9217_12287_oct_pkt_num)},
+       {"mac_rx_12288_16383_oct_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_12288_16383_oct_pkt_num)},
+       {"mac_rx_1519_max_good_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_1519_max_good_oct_pkt_num)},
+       {"mac_rx_1519_max_bad_pkt_num",
+               HCLGE_MAC_STATS_FIELD_OFF(mac_rx_1519_max_bad_oct_pkt_num)},
 
        {"mac_tx_fragment_pkt_num",
                HCLGE_MAC_STATS_FIELD_OFF(mac_tx_fragment_pkt_num)},
@@ -465,7 +497,7 @@ static int hclge_32_bit_update_stats(struct hclge_dev *hdev)
 
 static int hclge_mac_update_stats(struct hclge_dev *hdev)
 {
-#define HCLGE_MAC_CMD_NUM 17
+#define HCLGE_MAC_CMD_NUM 21
 #define HCLGE_RTN_DATA_NUM 4
 
        u64 *data = (u64 *)(&hdev->hw_stats.mac_stats);
index 83fb195..eeb6c8d 100644 (file)
@@ -394,7 +394,16 @@ struct hclge_mac_stats {
        u64 mac_tx_256_511_oct_pkt_num;
        u64 mac_tx_512_1023_oct_pkt_num;
        u64 mac_tx_1024_1518_oct_pkt_num;
-       u64 mac_tx_1519_max_oct_pkt_num;
+       u64 mac_tx_1519_2047_oct_pkt_num;
+       u64 mac_tx_2048_4095_oct_pkt_num;
+       u64 mac_tx_4096_8191_oct_pkt_num;
+       u64 mac_tx_8192_12287_oct_pkt_num; /* valid for GE MAC only */
+       u64 mac_tx_8192_9216_oct_pkt_num; /* valid for LGE & CGE MAC only */
+       u64 mac_tx_9217_12287_oct_pkt_num; /* valid for LGE & CGE MAC */
+       u64 mac_tx_12288_16383_oct_pkt_num;
+       u64 mac_tx_1519_max_good_oct_pkt_num;
+       u64 mac_tx_1519_max_bad_oct_pkt_num;
+
        u64 mac_rx_total_pkt_num;
        u64 mac_rx_total_oct_num;
        u64 mac_rx_good_pkt_num;
@@ -412,7 +421,15 @@ struct hclge_mac_stats {
        u64 mac_rx_256_511_oct_pkt_num;
        u64 mac_rx_512_1023_oct_pkt_num;
        u64 mac_rx_1024_1518_oct_pkt_num;
-       u64 mac_rx_1519_max_oct_pkt_num;
+       u64 mac_rx_1519_2047_oct_pkt_num;
+       u64 mac_rx_2048_4095_oct_pkt_num;
+       u64 mac_rx_4096_8191_oct_pkt_num;
+       u64 mac_rx_8192_12287_oct_pkt_num;/* valid for GE MAC only */
+       u64 mac_rx_8192_9216_oct_pkt_num; /* valid for LGE & CGE MAC only */
+       u64 mac_rx_9217_12287_oct_pkt_num; /* valid for LGE & CGE MAC only */
+       u64 mac_rx_12288_16383_oct_pkt_num;
+       u64 mac_rx_1519_max_good_oct_pkt_num;
+       u64 mac_rx_1519_max_bad_oct_pkt_num;
 
        u64 mac_tx_fragment_pkt_num;
        u64 mac_tx_undermin_pkt_num;