[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7ff20252-4672-fdcf-6c64-f7bbbd469cc7@linux.intel.com>
Date: Wed, 14 Jun 2023 11:39:49 +0200
From: Marcin Szycik <marcin.szycik@...ux.intel.com>
To: intel-wired-lan@...ts.osuosl.org
Cc: netdev@...r.kernel.org, wojciech.drewek@...el.com,
michal.swiatkowski@...ux.intel.com, aleksander.lobakin@...el.com,
davem@...emloft.net, kuba@...nel.org, jiri@...nulli.us, pabeni@...hat.com,
jesse.brandeburg@...el.com, simon.horman@...igine.com, idosch@...dia.com
Subject: Re: [PATCH iwl-next v2 0/6] ice: Add PFCP filter support
On 07.06.2023 13:26, Marcin Szycik wrote:
> Add support for creating PFCP filters in switchdev mode. Add pfcp module
> that allows to create a PFCP-type netdev. The netdev then can be passed to
> tc when creating a filter to indicate that PFCP filter should be created.
>
> To add a PFCP filter, a special netdev must be created and passed to tc
> command:
>
> ip link add pfcp0 type pfcp
> tc filter add dev eth0 ingress prio 1 flower pfcp_opts \
> 1:123/ff:fffffffffffffff0 skip_hw action mirred egress redirect dev pfcp0
>
> Changes in iproute2 are required to be able to add the pfcp netdev and use
> pfcp_opts in tc (patchset will be submitted later).
iproute2 patch posted to netdev [1]. A little clarification: no changes are
required to create pfcp type netdev - it can be created if pfcp module is
loaded. Changes in iproute2 are only needed to use the newly introduced
pfcp_opts.
[1] https://lore.kernel.org/netdev/20230614091758.11180-1-marcin.szycik@linux.intel.com
>
> ICE COMMS package is required as it contains PFCP profiles.
>
> Part of this patchset modifies IP_TUNNEL_*_OPTs, which were previously
> stored in a __be16. All possible values have already been used, making it
> impossible to add new ones.
>
> Alexander Lobakin (2):
> ip_tunnel: use a separate struct to store tunnel params in the kernel
> ip_tunnel: convert __be16 tunnel flags to bitmaps
>
> Marcin Szycik (2):
> ice: refactor ICE_TC_FLWR_FIELD_ENC_OPTS
> ice: Add support for PFCP hardware offload in switchdev
>
> Michal Swiatkowski (1):
> pfcp: always set pfcp metadata
>
> Wojciech Drewek (1):
> pfcp: add PFCP module
>
> drivers/net/Kconfig | 13 +
> drivers/net/Makefile | 1 +
> drivers/net/bareudp.c | 19 +-
> drivers/net/ethernet/intel/ice/ice_ddp.c | 9 +
> .../net/ethernet/intel/ice/ice_flex_type.h | 4 +-
> .../ethernet/intel/ice/ice_protocol_type.h | 12 +
> drivers/net/ethernet/intel/ice/ice_switch.c | 85 +++++
> drivers/net/ethernet/intel/ice/ice_switch.h | 2 +
> drivers/net/ethernet/intel/ice/ice_tc_lib.c | 68 +++-
> drivers/net/ethernet/intel/ice/ice_tc_lib.h | 7 +-
> .../ethernet/mellanox/mlx5/core/en/tc_tun.h | 2 +-
> .../mellanox/mlx5/core/en/tc_tun_encap.c | 6 +-
> .../mellanox/mlx5/core/en/tc_tun_geneve.c | 12 +-
> .../mellanox/mlx5/core/en/tc_tun_gre.c | 9 +-
> .../mellanox/mlx5/core/en/tc_tun_vxlan.c | 9 +-
> .../net/ethernet/mellanox/mlx5/core/en_tc.c | 15 +-
> .../ethernet/mellanox/mlxsw/spectrum_ipip.c | 62 ++--
> .../ethernet/mellanox/mlxsw/spectrum_ipip.h | 2 +-
> .../ethernet/mellanox/mlxsw/spectrum_span.c | 10 +-
> .../ethernet/netronome/nfp/flower/action.c | 12 +-
> drivers/net/geneve.c | 46 ++-
> drivers/net/pfcp.c | 303 ++++++++++++++++++
> drivers/net/vxlan/vxlan_core.c | 14 +-
> include/linux/netdevice.h | 7 +-
> include/net/dst_metadata.h | 10 +-
> include/net/flow_dissector.h | 2 +-
> include/net/gre.h | 59 ++--
> include/net/ip6_tunnel.h | 4 +-
> include/net/ip_tunnels.h | 106 +++++-
> include/net/pfcp.h | 83 +++++
> include/net/udp_tunnel.h | 4 +-
> include/uapi/linux/if_tunnel.h | 36 +++
> include/uapi/linux/pkt_cls.h | 14 +
> net/bridge/br_vlan_tunnel.c | 5 +-
> net/core/filter.c | 20 +-
> net/core/flow_dissector.c | 12 +-
> net/ipv4/fou_bpf.c | 2 +-
> net/ipv4/gre_demux.c | 2 +-
> net/ipv4/ip_gre.c | 148 +++++----
> net/ipv4/ip_tunnel.c | 92 ++++--
> net/ipv4/ip_tunnel_core.c | 83 +++--
> net/ipv4/ip_vti.c | 43 ++-
> net/ipv4/ipip.c | 33 +-
> net/ipv4/ipmr.c | 2 +-
> net/ipv4/udp_tunnel_core.c | 5 +-
> net/ipv6/addrconf.c | 3 +-
> net/ipv6/ip6_gre.c | 87 ++---
> net/ipv6/ip6_tunnel.c | 14 +-
> net/ipv6/sit.c | 47 ++-
> net/netfilter/ipvs/ip_vs_core.c | 6 +-
> net/netfilter/ipvs/ip_vs_xmit.c | 20 +-
> net/netfilter/nft_tunnel.c | 45 +--
> net/openvswitch/flow_netlink.c | 55 ++--
> net/psample/psample.c | 26 +-
> net/sched/act_tunnel_key.c | 39 +--
> net/sched/cls_flower.c | 134 +++++++-
> 56 files changed, 1501 insertions(+), 469 deletions(-)
> create mode 100644 drivers/net/pfcp.c
> create mode 100644 include/net/pfcp.h
>
Powered by blists - more mailing lists