net/dpaa2: free flow rule memory
authorJun Yang <jun.yang@nxp.com>
Tue, 7 Jul 2020 09:22:33 +0000 (14:52 +0530)
committerFerruh Yigit <ferruh.yigit@intel.com>
Sat, 11 Jul 2020 04:18:52 +0000 (06:18 +0200)
Free rule memory when the flow is destroyed.

Signed-off-by: Jun Yang <jun.yang@nxp.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
drivers/net/dpaa2/dpaa2_flow.c

index 9a449ca..887fe75 100644 (file)
@@ -3594,6 +3594,7 @@ int dpaa2_flow_destroy(struct rte_eth_dev *dev,
                        "Error in entry addition in QoS table(%d)", ret);
                        goto error;
                }
+               priv->qos_index[flow->qos_index] = 0;
                break;
        default:
                DPAA2_PMD_ERR(
@@ -3603,6 +3604,10 @@ int dpaa2_flow_destroy(struct rte_eth_dev *dev,
        }
 
        LIST_REMOVE(flow, next);
+       rte_free((void *)(size_t)flow->qos_rule.key_iova);
+       rte_free((void *)(size_t)flow->qos_rule.mask_iova);
+       rte_free((void *)(size_t)flow->fs_rule.key_iova);
+       rte_free((void *)(size_t)flow->fs_rule.mask_iova);
        /* Now free the flow */
        rte_free(flow);