Home
last modified time | relevance | path

Searched refs:offloads (Results 1 – 25 of 37) sorted by relevance

12

/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/
Dingress_ofld.c43 if (vport->ingress.offloads.modify_metadata_rule) { in esw_acl_ingress_prio_tag_create()
45 flow_act.modify_hdr = vport->ingress.offloads.modify_metadata; in esw_acl_ingress_prio_tag_create()
82 vport->ingress.offloads.modify_metadata = in esw_acl_ingress_mod_metadata_create()
85 if (IS_ERR(vport->ingress.offloads.modify_metadata)) { in esw_acl_ingress_mod_metadata_create()
86 err = PTR_ERR(vport->ingress.offloads.modify_metadata); in esw_acl_ingress_mod_metadata_create()
94 flow_act.modify_hdr = vport->ingress.offloads.modify_metadata; in esw_acl_ingress_mod_metadata_create()
95 vport->ingress.offloads.modify_metadata_rule = in esw_acl_ingress_mod_metadata_create()
98 if (IS_ERR(vport->ingress.offloads.modify_metadata_rule)) { in esw_acl_ingress_mod_metadata_create()
99 err = PTR_ERR(vport->ingress.offloads.modify_metadata_rule); in esw_acl_ingress_mod_metadata_create()
103 mlx5_modify_header_dealloc(esw->dev, vport->ingress.offloads.modify_metadata); in esw_acl_ingress_mod_metadata_create()
[all …]
Degress_ofld.c11 if (!vport->egress.offloads.fwd_rule) in esw_acl_egress_ofld_fwd2vport_destroy()
14 mlx5_del_flow_rules(vport->egress.offloads.fwd_rule); in esw_acl_egress_ofld_fwd2vport_destroy()
15 vport->egress.offloads.fwd_rule = NULL; in esw_acl_egress_ofld_fwd2vport_destroy()
33 vport->egress.offloads.fwd_rule = in esw_acl_egress_ofld_fwd2vport_create()
36 if (IS_ERR(vport->egress.offloads.fwd_rule)) { in esw_acl_egress_ofld_fwd2vport_create()
37 err = PTR_ERR(vport->egress.offloads.fwd_rule); in esw_acl_egress_ofld_fwd2vport_create()
41 vport->egress.offloads.fwd_rule = NULL; in esw_acl_egress_ofld_fwd2vport_create()
132 vport->egress.offloads.fwd_grp = fwd_grp; in esw_acl_egress_ofld_groups_create()
144 if (!IS_ERR_OR_NULL(vport->egress.offloads.fwd_grp)) { in esw_acl_egress_ofld_groups_destroy()
145 mlx5_destroy_flow_group(vport->egress.offloads.fwd_grp); in esw_acl_egress_ofld_groups_destroy()
[all …]
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/
Deswitch_offloads.c120 hash_for_each_possible(esw->fdb_table.offloads.vports.table, e, hlist, key) in esw_vport_tbl_lookup()
134 mutex_lock(&esw->fdb_table.offloads.vports.lock); in esw_vport_tbl_put()
144 mutex_unlock(&esw->fdb_table.offloads.vports.lock); in esw_vport_tbl_put()
157 mutex_lock(&esw->fdb_table.offloads.vports.lock); in esw_vport_tbl_get()
185 hash_add(esw->fdb_table.offloads.vports.table, &e->hlist, hkey); in esw_vport_tbl_get()
187 mutex_unlock(&esw->fdb_table.offloads.vports.lock); in esw_vport_tbl_get()
193 mutex_unlock(&esw->fdb_table.offloads.vports.lock); in esw_vport_tbl_get()
241 return &esw->offloads.vport_reps[idx]; in mlx5_eswitch_get_rep()
427 atomic64_inc(&esw->offloads.num_flows); in mlx5_eswitch_add_offloaded_rule()
501 atomic64_inc(&esw->offloads.num_flows); in mlx5_eswitch_add_fwd_rule()
[all …]
Deswitch_offloads_termtbl.c118 mutex_lock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_get_create()
120 hash_for_each_possible(esw->offloads.termtbl_tbl, tt, in mlx5_eswitch_termtbl_get_create()
148 hash_add(esw->offloads.termtbl_tbl, &tt->termtbl_hlist, hash_key); in mlx5_eswitch_termtbl_get_create()
151 mutex_unlock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_get_create()
155 mutex_unlock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_get_create()
163 mutex_lock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_put()
166 mutex_unlock(&esw->offloads.termtbl_mutex); in mlx5_eswitch_termtbl_put()
Deswitch.h67 ((esw)->fdb_table.offloads.esw_chains_priv)
91 } offloads; member
107 } offloads; member
192 } offloads; member
272 struct mlx5_esw_offload offloads; member
590 (rep) = &(esw)->offloads.vport_reps[i], \
595 (rep) = &(esw)->offloads.vport_reps[i], \
600 (rep) = &(esw)->offloads.vport_reps[i], \
612 (rep) = &(esw)->offloads.vport_reps[i], \
617 (rep) = &(esw)->offloads.vport_reps[i], \
Den_tc.c445 &esw->offloads.mod_hdr : in get_mod_hdr_table()
1725 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_tc_update_neigh_used_value()
1742 mutex_unlock(&esw->offloads.encap_tbl_lock); in mlx5e_tc_update_neigh_used_value()
1800 if (!refcount_dec_and_mutex_lock(&e->refcnt, &esw->offloads.encap_tbl_lock)) in mlx5e_encap_put()
1803 mutex_unlock(&esw->offloads.encap_tbl_lock); in mlx5e_encap_put()
1812 if (!refcount_dec_and_mutex_lock(&d->refcnt, &esw->offloads.decap_tbl_lock)) in mlx5e_decap_put()
1815 mutex_unlock(&esw->offloads.decap_tbl_lock); in mlx5e_decap_put()
1830 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_detach_encap()
1834 mutex_unlock(&esw->offloads.encap_tbl_lock); in mlx5e_detach_encap()
1838 mutex_unlock(&esw->offloads.encap_tbl_lock); in mlx5e_detach_encap()
[all …]
DKconfig79 Switchdev mode (eswitch offloads).
86 mlx5 ConnectX offloads support for TC classifier action (NET_CLS_ACT),
93 If set to N, TC offloads in both NIC and switchdev modes will be disabled.
119 bool "Mellanox 5th generation network adapters (connectX series) IPoIB offloads support"
123 MLX5 IPoIB offloads & acceleration support.
Deswitch.c1773 mutex_init(&esw->offloads.encap_tbl_lock); in mlx5_eswitch_init()
1774 hash_init(esw->offloads.encap_tbl); in mlx5_eswitch_init()
1775 mutex_init(&esw->offloads.decap_tbl_lock); in mlx5_eswitch_init()
1776 hash_init(esw->offloads.decap_tbl); in mlx5_eswitch_init()
1777 mlx5e_mod_hdr_tbl_init(&esw->offloads.mod_hdr); in mlx5_eswitch_init()
1778 atomic64_set(&esw->offloads.num_flows, 0); in mlx5_eswitch_init()
1779 ida_init(&esw->offloads.vport_metadata_ida); in mlx5_eswitch_init()
1793 esw->offloads.inline_mode = MLX5_INLINE_MODE_NONE; in mlx5_eswitch_init()
1817 ida_destroy(&esw->offloads.vport_metadata_ida); in mlx5_eswitch_cleanup()
1818 mlx5e_mod_hdr_tbl_destroy(&esw->offloads.mod_hdr); in mlx5_eswitch_cleanup()
[all …]
/kernel/linux/linux-5.10/kernel/bpf/
Doffload.c113 list_add_tail(&offload->offloads, &ondev->progs); in bpf_prog_offload_init()
222 list_del_init(&offload->offloads); in __bpf_prog_offload_destroy()
398 list_add_tail(&offmap->offloads, &ondev->maps); in bpf_map_offload_map_alloc()
416 list_del_init(&offmap->offloads); in __bpf_map_offload_destroy()
650 list_for_each_entry(offload, &ondev->progs, offloads) in bpf_offload_dev_netdev_unregister()
654 list_for_each_entry(offmap, &ondev->maps, offloads) in bpf_offload_dev_netdev_unregister()
658 list_for_each_entry_safe(offload, ptmp, &ondev->progs, offloads) in bpf_offload_dev_netdev_unregister()
660 list_for_each_entry_safe(offmap, mtmp, &ondev->maps, offloads) in bpf_offload_dev_netdev_unregister()
/kernel/linux/linux-5.10/Documentation/networking/
Dindex.rst33 checksum-offloads
34 segmentation-offloads
Dvxlan.rst63 offloads (most commonly VXLAN features, but support for a particular
72 perform protocol-aware offloads, like checksum validation offload of
73 inner frames (only needed by NICs without protocol-agnostic offloads)
Dsegmentation-offloads.rst68 In addition to the offloads described above it is possible for a frame to
111 deal with cases where device drivers cannot perform the offloads described
141 offloads or tunnel offloads with checksum to still make use of segmentation.
158 This requires a different approach to other offloads, as SCTP packets
/kernel/linux/linux-5.10/net/ipv4/
Dfou.c234 const struct net_offload **offloads; in fou_gro_receive() local
250 offloads = NAPI_GRO_CB(skb)->is_ipv6 ? inet6_offloads : inet_offloads; in fou_gro_receive()
251 ops = rcu_dereference(offloads[proto]); in fou_gro_receive()
269 const struct net_offload **offloads; in fou_gro_complete() local
272 offloads = NAPI_GRO_CB(skb)->is_ipv6 ? inet6_offloads : inet_offloads; in fou_gro_complete()
273 ops = rcu_dereference(offloads[proto]); in fou_gro_complete()
314 const struct net_offload **offloads; in gue_gro_receive() local
442 offloads = NAPI_GRO_CB(skb)->is_ipv6 ? inet6_offloads : inet_offloads; in gue_gro_receive()
443 ops = rcu_dereference(offloads[proto]); in gue_gro_receive()
460 const struct net_offload **offloads; in gue_gro_complete() local
[all …]
Dudp_offload.c153 const struct net_offload **offloads; in skb_udp_tunnel_segment() local
167 offloads = is_ipv6 ? inet6_offloads : inet_offloads; in skb_udp_tunnel_segment()
168 ops = rcu_dereference(offloads[skb->inner_ipproto]); in skb_udp_tunnel_segment()
/kernel/linux/linux-5.10/drivers/net/hyperv/
Drndis_filter.c1252 struct ndis_offload_params offloads; in rndis_netdev_set_hwcaps() local
1262 memset(&offloads, 0, sizeof(struct ndis_offload_params)); in rndis_netdev_set_hwcaps()
1265 offloads.ip_v4_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_DISABLED; in rndis_netdev_set_hwcaps()
1281 offloads.tcp_ip_v4_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED; in rndis_netdev_set_hwcaps()
1284 offloads.lso_v2_ipv4 = NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED; in rndis_netdev_set_hwcaps()
1292 offloads.udp_ip_v4_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED; in rndis_netdev_set_hwcaps()
1300 offloads.tcp_ip_v6_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED; in rndis_netdev_set_hwcaps()
1305 offloads.lso_v2_ipv6 = NDIS_OFFLOAD_PARAMETERS_LSOV2_ENABLED; in rndis_netdev_set_hwcaps()
1313 offloads.udp_ip_v6_csum = NDIS_OFFLOAD_PARAMETERS_TX_RX_ENABLED; in rndis_netdev_set_hwcaps()
1322 offloads.rsc_ip_v4 = NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED; in rndis_netdev_set_hwcaps()
[all …]
Dnetvsc_drv.c1933 struct ndis_offload_params offloads; in netvsc_set_features() local
1942 memset(&offloads, 0, sizeof(struct ndis_offload_params)); in netvsc_set_features()
1945 offloads.rsc_ip_v4 = NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED; in netvsc_set_features()
1946 offloads.rsc_ip_v6 = NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED; in netvsc_set_features()
1948 offloads.rsc_ip_v4 = NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED; in netvsc_set_features()
1949 offloads.rsc_ip_v6 = NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED; in netvsc_set_features()
1952 ret = rndis_filter_set_offload_params(ndev, nvdev, &offloads); in netvsc_set_features()
/kernel/linux/linux-5.10/Documentation/infiniband/
Dipoib.rst57 Stateless offloads
60 If the IB HW supports IPoIB stateless offloads, IPoIB advertises
68 Stateless offloads are supported only in datagram mode.
/kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/mellanox/
Dmlx5.rst23 | Basic features, ethernet net device rx/tx offloads and XDP, are available with the most basic fla…
35 …ng this option will allow basic ethernet netdevice support with all of the standard rx/tx offloads.
69 | 2) `Switchdev mode (eswitch offloads) <https://www.mellanox.com/related-docs/prod_softw…
74 | IPoIB offloads & acceleration support.
286 tc and eswitch offloads tracepoints:
/kernel/linux/linux-5.10/drivers/net/
Dvirtio_net.c178 __virtio64 offloads; member
2418 static int virtnet_set_guest_offloads(struct virtnet_info *vi, u64 offloads) in virtnet_set_guest_offloads() argument
2421 vi->ctrl->offloads = cpu_to_virtio64(vi->vdev, offloads); in virtnet_set_guest_offloads()
2423 sg_init_one(&sg, &vi->ctrl->offloads, sizeof(vi->ctrl->offloads)); in virtnet_set_guest_offloads()
2436 u64 offloads = 0; in virtnet_clear_guest_offloads() local
2441 return virtnet_set_guest_offloads(vi, offloads); in virtnet_clear_guest_offloads()
2446 u64 offloads = vi->guest_offloads; in virtnet_restore_guest_offloads() local
2451 return virtnet_set_guest_offloads(vi, offloads); in virtnet_restore_guest_offloads()
2597 u64 offloads; in virtnet_set_features() local
2605 offloads = vi->guest_offloads_capable; in virtnet_set_features()
[all …]
/kernel/linux/linux-5.10/drivers/vdpa/
DKconfig50 offloads depending on the actual device used and firmware version.
/kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/freescale/
Dgianfar.rst16 in hardware. The Linux kernel only offloads the TCP and UDP
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/esw/
Ddevlink_port.c43 controller_num = dev->priv.eswitch->offloads.host_number + 1; in mlx5_esw_dl_port_alloc()
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/en/rep/
Dtc.c97 mutex_lock(&esw->offloads.encap_tbl_lock); in mlx5e_rep_update_flows()
124 mutex_unlock(&esw->offloads.encap_tbl_lock); in mlx5e_rep_update_flows()
/kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/neterion/
Ds2io.rst22 such as jumbo frames, MSI/MSI-X, checksum offloads, TSO, UFO and so on.
/kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/freescale/dpaa2/
Dethernet-driver.rst170 The checksum offloads can be independently configured on RX and TX through

12