| 2337 | } |
| 2338 | |
| 2339 | int |
| 2340 | iavf_flow_flush(struct rte_eth_dev *dev, |
| 2341 | struct rte_flow_error *error) |
| 2342 | { |
| 2343 | struct iavf_adapter *ad = |
| 2344 | IAVF_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private); |
| 2345 | struct iavf_info *vf = IAVF_DEV_PRIVATE_TO_VF(ad); |
| 2346 | struct rte_flow *p_flow; |
| 2347 | void *temp; |
| 2348 | int ret = 0; |
| 2349 | |
| 2350 | RTE_TAILQ_FOREACH_SAFE(p_flow, &vf->flow_list, node, temp) { |
| 2351 | ret = iavf_flow_destroy(dev, p_flow, error); |
| 2352 | if (ret) { |
| 2353 | PMD_DRV_LOG(ERR, "Failed to flush flows"); |
| 2354 | return -EINVAL; |
| 2355 | } |
| 2356 | } |
| 2357 | |
| 2358 | return ret; |
| 2359 | } |
| 2360 | |
| 2361 | static int |
| 2362 | iavf_flow_query(struct rte_eth_dev *dev, |
no test coverage detected