Lines Matching refs:app

95 nfp_flower_xmit_flow(struct nfp_app *app, struct nfp_fl_payload *nfp_flow,  in nfp_flower_xmit_flow()  argument
116 skb = nfp_flower_cmsg_alloc(app, tot_len, mtype, GFP_KERNEL); in nfp_flower_xmit_flow()
134 nfp_ctrl_tx(app->ctrl, skb); in nfp_flower_xmit_flow()
238 nfp_flower_calculate_key_layers(struct nfp_app *app, in nfp_flower_calculate_key_layers() argument
247 struct nfp_flower_priv *priv = app->priv; in nfp_flower_calculate_key_layers()
1001 int nfp_flower_merge_offloaded_flows(struct nfp_app *app, in nfp_flower_merge_offloaded_flows() argument
1005 struct nfp_flower_priv *priv = app->priv; in nfp_flower_merge_offloaded_flows()
1022 nfp_flower_cmsg_warn(app, "The two flows are already merged.\n"); in nfp_flower_merge_offloaded_flows()
1056 err = nfp_compile_flow_metadata(app, merge_flow->tc_flower_cookie, merge_flow, in nfp_flower_merge_offloaded_flows()
1077 err = nfp_flower_xmit_flow(app, merge_flow, in nfp_flower_merge_offloaded_flows()
1098 nfp_modify_flow_metadata(app, merge_flow); in nfp_flower_merge_offloaded_flows()
1123 nfp_flower_validate_pre_tun_rule(struct nfp_app *app, in nfp_flower_validate_pre_tun_rule() argument
1128 struct nfp_flower_priv *priv = app->priv; in nfp_flower_validate_pre_tun_rule()
1328 nfp_flower_add_offload(struct nfp_app *app, struct net_device *netdev, in nfp_flower_add_offload() argument
1333 struct nfp_flower_priv *priv = app->priv; in nfp_flower_add_offload()
1357 err = nfp_flower_calculate_key_layers(app, netdev, key_layer, rule, in nfp_flower_add_offload()
1368 err = nfp_flower_compile_flow_match(app, rule, key_layer, netdev, in nfp_flower_add_offload()
1373 err = nfp_flower_compile_action(app, rule, netdev, flow_pay, extack); in nfp_flower_add_offload()
1378 err = nfp_flower_validate_pre_tun_rule(app, flow_pay, key_layer, extack); in nfp_flower_add_offload()
1383 err = nfp_compile_flow_metadata(app, flow->cookie, flow_pay, netdev, extack); in nfp_flower_add_offload()
1409 nfp_tun_link_and_update_nn_entries(app, predt); in nfp_flower_add_offload()
1412 err = nfp_flower_xmit_pre_tun_flow(app, flow_pay); in nfp_flower_add_offload()
1415 err = nfp_flower_xmit_flow(app, flow_pay, in nfp_flower_add_offload()
1437 nfp_modify_flow_metadata(app, flow_pay); in nfp_flower_add_offload()
1440 nfp_tunnel_put_ipv6_off(app, flow_pay->nfp_tun_ipv6); in nfp_flower_add_offload()
1451 nfp_flower_remove_merge_flow(struct nfp_app *app, in nfp_flower_remove_merge_flow() argument
1455 struct nfp_flower_priv *priv = app->priv; in nfp_flower_remove_merge_flow()
1471 err = nfp_modify_flow_metadata(app, merge_flow); in nfp_flower_remove_merge_flow()
1473 nfp_flower_cmsg_warn(app, "Metadata fail for merge flow delete.\n"); in nfp_flower_remove_merge_flow()
1478 err = nfp_flower_xmit_flow(app, merge_flow, in nfp_flower_remove_merge_flow()
1481 nfp_flower_cmsg_warn(app, "Failed to delete merged flow.\n"); in nfp_flower_remove_merge_flow()
1486 err = nfp_flower_xmit_flow(app, origin, in nfp_flower_remove_merge_flow()
1489 nfp_flower_cmsg_warn(app, "Failed to revert merge flow.\n"); in nfp_flower_remove_merge_flow()
1523 nfp_flower_del_linked_merge_flows(struct nfp_app *app, in nfp_flower_del_linked_merge_flows() argument
1531 nfp_flower_remove_merge_flow(app, sub_flow, in nfp_flower_del_linked_merge_flows()
1547 nfp_flower_del_offload(struct nfp_app *app, struct net_device *netdev, in nfp_flower_del_offload() argument
1550 struct nfp_flower_priv *priv = app->priv; in nfp_flower_del_offload()
1569 nfp_flow = nfp_flower_search_fl_table(app, flow->cookie, netdev); in nfp_flower_del_offload()
1575 err = nfp_modify_flow_metadata(app, nfp_flow); in nfp_flower_del_offload()
1580 nfp_tunnel_del_ipv4_off(app, nfp_flow->nfp_tun_ipv4_addr); in nfp_flower_del_offload()
1583 nfp_tunnel_put_ipv6_off(app, nfp_flow->nfp_tun_ipv6); in nfp_flower_del_offload()
1597 nfp_tun_unlink_and_update_nn_entries(app, predt); in nfp_flower_del_offload()
1603 err = nfp_flower_xmit_pre_tun_del_flow(app, nfp_flow); in nfp_flower_del_offload()
1606 err = nfp_flower_xmit_flow(app, nfp_flow, in nfp_flower_del_offload()
1612 nfp_flower_del_linked_merge_flows(app, nfp_flow); in nfp_flower_del_offload()
1626 __nfp_flower_update_merge_stats(struct nfp_app *app, in __nfp_flower_update_merge_stats() argument
1629 struct nfp_flower_priv *priv = app->priv; in __nfp_flower_update_merge_stats()
1662 nfp_flower_update_merge_stats(struct nfp_app *app, in nfp_flower_update_merge_stats() argument
1669 __nfp_flower_update_merge_stats(app, link->merge_flow.flow); in nfp_flower_update_merge_stats()
1684 nfp_flower_get_stats(struct nfp_app *app, struct net_device *netdev, in nfp_flower_get_stats() argument
1687 struct nfp_flower_priv *priv = app->priv; in nfp_flower_get_stats()
1700 nfp_flow = nfp_flower_search_fl_table(app, flow->cookie, netdev); in nfp_flower_get_stats()
1711 nfp_flower_update_merge_stats(app, nfp_flow); in nfp_flower_get_stats()
1725 nfp_flower_repr_offload(struct nfp_app *app, struct net_device *netdev, in nfp_flower_repr_offload() argument
1728 struct nfp_flower_priv *priv = app->priv; in nfp_flower_repr_offload()
1737 ret = nfp_flower_add_offload(app, netdev, flower); in nfp_flower_repr_offload()
1740 ret = nfp_flower_del_offload(app, netdev, flower); in nfp_flower_repr_offload()
1743 ret = nfp_flower_get_stats(app, netdev, flower); in nfp_flower_repr_offload()
1765 return nfp_flower_repr_offload(repr->app, repr->netdev, in nfp_flower_setup_tc_block_cb()
1768 return nfp_flower_setup_qos_offload(repr->app, repr->netdev, in nfp_flower_setup_tc_block_cb()
1821 int nfp_flower_setup_tc(struct nfp_app *app, struct net_device *netdev, in nfp_flower_setup_tc() argument
1834 struct nfp_app *app; member
1839 nfp_flower_indr_block_cb_priv_lookup(struct nfp_app *app, in nfp_flower_indr_block_cb_priv_lookup() argument
1843 struct nfp_flower_priv *priv = app->priv; in nfp_flower_indr_block_cb_priv_lookup()
1859 return nfp_flower_repr_offload(priv->app, priv->netdev, in nfp_flower_setup_indr_block_cb()
1875 nfp_flower_setup_indr_tc_block(struct net_device *netdev, struct Qdisc *sch, struct nfp_app *app, in nfp_flower_setup_indr_tc_block() argument
1880 struct nfp_flower_priv *priv = app->priv; in nfp_flower_setup_indr_tc_block()
1884 !nfp_flower_internal_port_can_offload(app, netdev)) || in nfp_flower_setup_indr_tc_block()
1886 nfp_flower_internal_port_can_offload(app, netdev))) in nfp_flower_setup_indr_tc_block()
1893 cb_priv = nfp_flower_indr_block_cb_priv_lookup(app, netdev); in nfp_flower_setup_indr_tc_block()
1905 cb_priv->app = app; in nfp_flower_setup_indr_tc_block()
1911 f, netdev, sch, data, app, cleanup); in nfp_flower_setup_indr_tc_block()
1922 cb_priv = nfp_flower_indr_block_cb_priv_lookup(app, netdev); in nfp_flower_setup_indr_tc_block()
1942 nfp_setup_tc_no_dev(struct nfp_app *app, enum tc_setup_type type, void *data) in nfp_setup_tc_no_dev() argument
1949 return nfp_setup_tc_act_offload(app, data); in nfp_setup_tc_no_dev()