MCPcopy Create free account
hub / github.com/F-Stack/f-stack / nfp_flow_validate

Function nfp_flow_validate

dpdk/drivers/net/nfp/nfp_flow.c:3924–3956  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3922}
3923
3924static int
3925nfp_flow_validate(struct rte_eth_dev *dev,
3926 const struct rte_flow_attr *attr,
3927 const struct rte_flow_item items[],
3928 const struct rte_flow_action actions[],
3929 struct rte_flow_error *error)
3930{
3931 int ret;
3932 struct rte_flow *nfp_flow;
3933 struct nfp_flow_priv *priv;
3934 struct nfp_flower_representor *representor;
3935
3936 representor = dev->data->dev_private;
3937 priv = representor->app_fw_flower->flow_priv;
3938
3939 nfp_flow = nfp_flow_setup(representor, attr, items, actions, error, true);
3940 if (nfp_flow == NULL) {
3941 return rte_flow_error_set(error, ENOTSUP,
3942 RTE_FLOW_ERROR_TYPE_UNSPECIFIED,
3943 NULL, "This flow can not be offloaded.");
3944 }
3945
3946 ret = nfp_flow_teardown(priv, nfp_flow, true);
3947 if (ret != 0) {
3948 return rte_flow_error_set(error, EINVAL,
3949 RTE_FLOW_ERROR_TYPE_UNSPECIFIED,
3950 NULL, "Flow resource free failed.");
3951 }
3952
3953 nfp_flow_free(nfp_flow);
3954
3955 return 0;
3956}
3957
3958static struct rte_flow *
3959nfp_flow_create(struct rte_eth_dev *dev,

Callers

nothing calls this directly

Calls 4

nfp_flow_setupFunction · 0.85
rte_flow_error_setFunction · 0.85
nfp_flow_teardownFunction · 0.85
nfp_flow_freeFunction · 0.85

Tested by

no test coverage detected