app/testpmd: support extended RSS offload types
[dpdk.git] / app / proc-info / main.c
index 3cd5341..8cf501d 100644 (file)
@@ -30,7 +30,9 @@
 #include <rte_string_fns.h>
 #include <rte_metrics.h>
 #include <rte_cycles.h>
+#ifdef RTE_LIBRTE_SECURITY
 #include <rte_security.h>
+#endif
 #include <rte_cryptodev.h>
 #include <rte_tm.h>
 #include <rte_hexdump.h>
@@ -580,8 +582,16 @@ err:
 static void
 nic_xstats_clear(uint16_t port_id)
 {
+       int ret;
+
        printf("\n Clearing NIC xstats for port %d\n", port_id);
-       rte_eth_xstats_reset(port_id);
+       ret = rte_eth_xstats_reset(port_id);
+       if (ret != 0) {
+               printf("\n Error clearing xstats for port %d: %s\n", port_id,
+                      strerror(-ret));
+               return;
+       }
+
        printf("\n  NIC extended statistics for port %d cleared\n", port_id);
 }
 
@@ -670,20 +680,30 @@ show_port(void)
                printf("  - generic config\n");
 
                printf("\t  -- Socket %d\n", rte_eth_dev_socket_id(i));
-               rte_eth_link_get(i, &link);
-               printf("\t  -- link speed %d duplex %d,"
-                               " auto neg %d status %d\n",
-                               link.link_speed,
-                               link.link_duplex,
-                               link.link_autoneg,
-                               link.link_status);
+               ret = rte_eth_link_get(i, &link);
+               if (ret < 0) {
+                       printf("Link get failed (port %u): %s\n",
+                              i, rte_strerror(-ret));
+               } else {
+                       printf("\t  -- link speed %d duplex %d,"
+                                       " auto neg %d status %d\n",
+                                       link.link_speed,
+                                       link.link_duplex,
+                                       link.link_autoneg,
+                                       link.link_status);
+               }
                printf("\t  -- promiscuous (%d)\n",
                                rte_eth_promiscuous_get(i));
                ret = rte_eth_dev_get_mtu(i, &mtu);
                if (ret == 0)
                        printf("\t  -- mtu (%d)\n", mtu);
 
-               rte_eth_dev_info_get(i, &dev_info);
+               ret = rte_eth_dev_info_get(i, &dev_info);
+               if (ret != 0) {
+                       printf("Error during getting device (port %u) info: %s\n",
+                               i, strerror(-ret));
+                       return;
+               }
 
                printf("  - queue\n");
                for (j = 0; j < dev_info.nb_rx_queues; j++) {
@@ -715,6 +735,7 @@ show_port(void)
                }
 
                printf("  - cyrpto context\n");
+#ifdef RTE_LIBRTE_SECURITY
                void *p_ctx = rte_eth_dev_get_sec_ctx(i);
                printf("\t  -- security context - %p\n", p_ctx);
 
@@ -733,6 +754,7 @@ show_port(void)
                                                s_cap->crypto_capabilities->op);
                        }
                }
+#endif
        }
 
        STATS_BDR_STR(50, "");
@@ -836,7 +858,13 @@ show_tm(void)
                memset(&cap, 0, sizeof(cap));
                memset(&error, 0, sizeof(error));
 
-               rte_eth_dev_info_get(i, &dev_info);
+               ret = rte_eth_dev_info_get(i, &dev_info);
+               if (ret != 0) {
+                       printf("Error during getting device (port %u) info: %s\n",
+                               i, strerror(-ret));
+                       return;
+               }
+
                printf("  - Generic for port (%u)\n"
                        "\t  -- driver name %s\n"
                        "\t  -- max vf (%u)\n"
@@ -873,21 +901,21 @@ show_tm(void)
 
                printf("  - mark support:\n");
                printf("\t  -- vlan dei: GREEN (%d) YELLOW (%d) RED (%d)\n",
-                       cap.mark_vlan_dei_supported[RTE_TM_GREEN],
-                       cap.mark_vlan_dei_supported[RTE_TM_YELLOW],
-                       cap.mark_vlan_dei_supported[RTE_TM_RED]);
+                       cap.mark_vlan_dei_supported[RTE_COLOR_GREEN],
+                       cap.mark_vlan_dei_supported[RTE_COLOR_YELLOW],
+                       cap.mark_vlan_dei_supported[RTE_COLOR_RED]);
                printf("\t  -- ip ecn tcp: GREEN (%d) YELLOW (%d) RED (%d)\n",
-                       cap.mark_ip_ecn_tcp_supported[RTE_TM_GREEN],
-                       cap.mark_ip_ecn_tcp_supported[RTE_TM_YELLOW],
-                       cap.mark_ip_ecn_tcp_supported[RTE_TM_RED]);
+                       cap.mark_ip_ecn_tcp_supported[RTE_COLOR_GREEN],
+                       cap.mark_ip_ecn_tcp_supported[RTE_COLOR_YELLOW],
+                       cap.mark_ip_ecn_tcp_supported[RTE_COLOR_RED]);
                printf("\t  -- ip ecn sctp: GREEN (%d) YELLOW (%d) RED (%d)\n",
-                       cap.mark_ip_ecn_sctp_supported[RTE_TM_GREEN],
-                       cap.mark_ip_ecn_sctp_supported[RTE_TM_YELLOW],
-                       cap.mark_ip_ecn_sctp_supported[RTE_TM_RED]);
+                       cap.mark_ip_ecn_sctp_supported[RTE_COLOR_GREEN],
+                       cap.mark_ip_ecn_sctp_supported[RTE_COLOR_YELLOW],
+                       cap.mark_ip_ecn_sctp_supported[RTE_COLOR_RED]);
                printf("\t  -- ip dscp: GREEN (%d) YELLOW (%d) RED (%d)\n",
-                       cap.mark_ip_dscp_supported[RTE_TM_GREEN],
-                       cap.mark_ip_dscp_supported[RTE_TM_YELLOW],
-                       cap.mark_ip_dscp_supported[RTE_TM_RED]);
+                       cap.mark_ip_dscp_supported[RTE_COLOR_GREEN],
+                       cap.mark_ip_dscp_supported[RTE_COLOR_YELLOW],
+                       cap.mark_ip_dscp_supported[RTE_COLOR_RED]);
 
                printf("  - mask stats (0x%"PRIx64")"
                        " dynamic update (0x%"PRIx64")\n",
@@ -1004,12 +1032,12 @@ show_tm(void)
                                " pkts (%"PRIu64") bytes (%"PRIu64")\n"
                                "\t  -- RED:"
                                " pkts (%"PRIu64") bytes (%"PRIu64")\n",
-                               stats.leaf.n_pkts_dropped[RTE_TM_GREEN],
-                               stats.leaf.n_bytes_dropped[RTE_TM_GREEN],
-                               stats.leaf.n_pkts_dropped[RTE_TM_YELLOW],
-                               stats.leaf.n_bytes_dropped[RTE_TM_YELLOW],
-                               stats.leaf.n_pkts_dropped[RTE_TM_RED],
-                               stats.leaf.n_bytes_dropped[RTE_TM_RED]);
+                               stats.leaf.n_pkts_dropped[RTE_COLOR_GREEN],
+                               stats.leaf.n_bytes_dropped[RTE_COLOR_GREEN],
+                               stats.leaf.n_pkts_dropped[RTE_COLOR_YELLOW],
+                               stats.leaf.n_bytes_dropped[RTE_COLOR_YELLOW],
+                               stats.leaf.n_pkts_dropped[RTE_COLOR_RED],
+                               stats.leaf.n_bytes_dropped[RTE_COLOR_RED]);
                }
        }