app/testpmd: support shared age action query
authorDekel Peled <dekelp@nvidia.com>
Thu, 4 Feb 2021 10:04:15 +0000 (12:04 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Thu, 4 Feb 2021 17:19:37 +0000 (18:19 +0100)
Shared age action query was implemented as part of flow query,
but was not implemented as part of shared action query.

This patch adds the required implementation.

Fixes: 2f622174bf86 ("app/testpmd: support query of age action")
Cc: stable@dpdk.org
Signed-off-by: Dekel Peled <dekelp@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
app/test-pmd/config.c

index 0e2b9f7..dab8afe 100644 (file)
@@ -1879,6 +1879,7 @@ port_shared_action_query(portid_t port_id, uint32_t id)
                return -EINVAL;
        switch (psa->type) {
        case RTE_FLOW_ACTION_TYPE_RSS:
+       case RTE_FLOW_ACTION_TYPE_AGE:
                data = &default_data;
                break;
        default:
@@ -1895,6 +1896,20 @@ port_shared_action_query(portid_t port_id, uint32_t id)
                               *((uint32_t *)data));
                data = NULL;
                break;
+       case RTE_FLOW_ACTION_TYPE_AGE:
+               if (!ret) {
+                       struct rte_flow_query_age *resp = data;
+
+                       printf("AGE:\n"
+                              " aged: %u\n"
+                              " sec_since_last_hit_valid: %u\n"
+                              " sec_since_last_hit: %" PRIu32 "\n",
+                              resp->aged,
+                              resp->sec_since_last_hit_valid,
+                              resp->sec_since_last_hit);
+               }
+               data = NULL;
+               break;
        default:
                printf("Shared action %u (type: %d) on port %u doesn't support"
                       " query\n", id, psa->type, port_id);
@@ -1902,6 +1917,7 @@ port_shared_action_query(portid_t port_id, uint32_t id)
        }
        return ret;
 }
+
 static struct port_flow_tunnel *
 port_flow_tunnel_offload_cmd_prep(portid_t port_id,
                                  const struct rte_flow_item *pattern,