All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Nguyen <anthony.l.nguyen@intel.com>
To: Marcin Szycik <marcin.szycik@linux.intel.com>,
	<intel-wired-lan@lists.osuosl.org>
Cc: andy@kernel.org, michal.swiatkowski@linux.intel.com,
	wojciech.drewek@intel.com, idosch@nvidia.com,
	jesse.brandeburg@intel.com, aleksander.lobakin@intel.com,
	kuba@kernel.org, netdev@vger.kernel.org,
	simon.horman@corigine.com, jiri@resnulli.us, pabeni@redhat.com,
	davem@davemloft.net
Subject: Re: [Intel-wired-lan] [PATCH iwl-next v4 0/7] Add PFCP filter support
Date: Fri, 8 Dec 2023 13:34:10 -0800	[thread overview]
Message-ID: <b3e5ec09-d01b-0cea-69ea-c7406ea3f8b5@intel.com> (raw)
In-Reply-To: <20231207164911.14330-1-marcin.szycik@linux.intel.com>



On 12/7/2023 8:49 AM, 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:12ab/ff:fffffffffffffff0 skip_hw action mirred egress redirect \
>      dev pfcp0
> 
> Changes in iproute2 [1] are required to use pfcp_opts in tc.
> 
> 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.
> 
> [1] https://lore.kernel.org/netdev/20230614091758.11180-1-marcin.szycik@linux.intel.com
> ---
> This patchset should be applied on top of the "boys" tree [2], as it
> depends on recent bitmap changes.

Is this for comment only (RFC)? This doesn't seem to apply to iwl-next 
and if this based on, and has dependencies from, another tree, I can't 
apply them here.

> [2] https://github.com/norov/linux/commits/boys
> ---
> v3: https://lore.kernel.org/intel-wired-lan/20230721071532.613888-1-marcin.szycik@linux.intel.com
> v2: https://lore.kernel.org/intel-wired-lan/20230607112606.15899-1-marcin.szycik@linux.intel.com
> v1: https://lore.kernel.org/intel-wired-lan/20230601131929.294667-1-marcin.szycik@linux.intel.com
> ---
> 
> Alexander Lobakin (3):
>    ip_tunnel: use a separate struct to store tunnel params in the kernel
>    ip_tunnel: convert __be16 tunnel flags to bitmaps
>    lib/bitmap: add tests for IP tunnel flags conversion helpers
> 
> 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   |   8 +-
>   .../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        |   8 +-
>   .../mellanox/mlx5/core/en/tc_tun_vxlan.c      |   9 +-
>   .../net/ethernet/mellanox/mlx5/core/en_tc.c   |  16 +-
>   .../ethernet/mellanox/mlxsw/spectrum_ipip.c   |  56 ++--
>   .../ethernet/mellanox/mlxsw/spectrum_ipip.h   |   2 +-
>   .../ethernet/mellanox/mlxsw/spectrum_span.c   |  10 +-
>   .../ethernet/netronome/nfp/flower/action.c    |  27 +-
>   drivers/net/geneve.c                          |  44 ++-
>   drivers/net/pfcp.c                            | 302 ++++++++++++++++++
>   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                             |  70 ++--
>   include/net/ip6_tunnel.h                      |   4 +-
>   include/net/ip_tunnels.h                      | 139 ++++++--
>   include/net/pfcp.h                            |  90 ++++++
>   include/net/udp_tunnel.h                      |   4 +-
>   include/uapi/linux/if_tunnel.h                |  36 +++
>   include/uapi/linux/pkt_cls.h                  |  14 +
>   lib/test_bitmap.c                             | 100 ++++++
>   net/bridge/br_vlan_tunnel.c                   |   9 +-
>   net/core/filter.c                             |  26 +-
>   net/core/flow_dissector.c                     |  20 +-
>   net/ipv4/fou_bpf.c                            |   2 +-
>   net/ipv4/gre_demux.c                          |   2 +-
>   net/ipv4/ip_gre.c                             | 144 +++++----
>   net/ipv4/ip_tunnel.c                          | 109 +++++--
>   net/ipv4/ip_tunnel_core.c                     |  82 +++--
>   net/ipv4/ip_vti.c                             |  41 ++-
>   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                            |  85 ++---
>   net/ipv6/ip6_tunnel.c                         |  14 +-
>   net/ipv6/sit.c                                |  38 ++-
>   net/netfilter/ipvs/ip_vs_core.c               |   6 +-
>   net/netfilter/ipvs/ip_vs_xmit.c               |  20 +-
>   net/netfilter/nft_tunnel.c                    |  44 +--
>   net/openvswitch/flow_netlink.c                |  61 ++--
>   net/psample/psample.c                         |  26 +-
>   net/sched/act_tunnel_key.c                    |  36 +--
>   net/sched/cls_flower.c                        | 134 +++++++-
>   57 files changed, 1652 insertions(+), 495 deletions(-)
>   create mode 100644 drivers/net/pfcp.c
>   create mode 100644 include/net/pfcp.h
> 
_______________________________________________
Intel-wired-lan mailing list
Intel-wired-lan@osuosl.org
https://lists.osuosl.org/mailman/listinfo/intel-wired-lan

WARNING: multiple messages have this Message-ID (diff)
From: Tony Nguyen <anthony.l.nguyen@intel.com>
To: Marcin Szycik <marcin.szycik@linux.intel.com>,
	<intel-wired-lan@lists.osuosl.org>
Cc: <jiri@resnulli.us>, <andy@kernel.org>,
	<wojciech.drewek@intel.com>, <netdev@vger.kernel.org>,
	<idosch@nvidia.com>, <jesse.brandeburg@intel.com>,
	<aleksander.lobakin@intel.com>,
	<michal.swiatkowski@linux.intel.com>, <simon.horman@corigine.com>,
	<kuba@kernel.org>, <pabeni@redhat.com>, <davem@davemloft.net>
Subject: Re: [Intel-wired-lan] [PATCH iwl-next v4 0/7] Add PFCP filter support
Date: Fri, 8 Dec 2023 13:34:10 -0800	[thread overview]
Message-ID: <b3e5ec09-d01b-0cea-69ea-c7406ea3f8b5@intel.com> (raw)
In-Reply-To: <20231207164911.14330-1-marcin.szycik@linux.intel.com>



On 12/7/2023 8:49 AM, 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:12ab/ff:fffffffffffffff0 skip_hw action mirred egress redirect \
>      dev pfcp0
> 
> Changes in iproute2 [1] are required to use pfcp_opts in tc.
> 
> 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.
> 
> [1] https://lore.kernel.org/netdev/20230614091758.11180-1-marcin.szycik@linux.intel.com
> ---
> This patchset should be applied on top of the "boys" tree [2], as it
> depends on recent bitmap changes.

Is this for comment only (RFC)? This doesn't seem to apply to iwl-next 
and if this based on, and has dependencies from, another tree, I can't 
apply them here.

> [2] https://github.com/norov/linux/commits/boys
> ---
> v3: https://lore.kernel.org/intel-wired-lan/20230721071532.613888-1-marcin.szycik@linux.intel.com
> v2: https://lore.kernel.org/intel-wired-lan/20230607112606.15899-1-marcin.szycik@linux.intel.com
> v1: https://lore.kernel.org/intel-wired-lan/20230601131929.294667-1-marcin.szycik@linux.intel.com
> ---
> 
> Alexander Lobakin (3):
>    ip_tunnel: use a separate struct to store tunnel params in the kernel
>    ip_tunnel: convert __be16 tunnel flags to bitmaps
>    lib/bitmap: add tests for IP tunnel flags conversion helpers
> 
> 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   |   8 +-
>   .../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        |   8 +-
>   .../mellanox/mlx5/core/en/tc_tun_vxlan.c      |   9 +-
>   .../net/ethernet/mellanox/mlx5/core/en_tc.c   |  16 +-
>   .../ethernet/mellanox/mlxsw/spectrum_ipip.c   |  56 ++--
>   .../ethernet/mellanox/mlxsw/spectrum_ipip.h   |   2 +-
>   .../ethernet/mellanox/mlxsw/spectrum_span.c   |  10 +-
>   .../ethernet/netronome/nfp/flower/action.c    |  27 +-
>   drivers/net/geneve.c                          |  44 ++-
>   drivers/net/pfcp.c                            | 302 ++++++++++++++++++
>   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                             |  70 ++--
>   include/net/ip6_tunnel.h                      |   4 +-
>   include/net/ip_tunnels.h                      | 139 ++++++--
>   include/net/pfcp.h                            |  90 ++++++
>   include/net/udp_tunnel.h                      |   4 +-
>   include/uapi/linux/if_tunnel.h                |  36 +++
>   include/uapi/linux/pkt_cls.h                  |  14 +
>   lib/test_bitmap.c                             | 100 ++++++
>   net/bridge/br_vlan_tunnel.c                   |   9 +-
>   net/core/filter.c                             |  26 +-
>   net/core/flow_dissector.c                     |  20 +-
>   net/ipv4/fou_bpf.c                            |   2 +-
>   net/ipv4/gre_demux.c                          |   2 +-
>   net/ipv4/ip_gre.c                             | 144 +++++----
>   net/ipv4/ip_tunnel.c                          | 109 +++++--
>   net/ipv4/ip_tunnel_core.c                     |  82 +++--
>   net/ipv4/ip_vti.c                             |  41 ++-
>   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                            |  85 ++---
>   net/ipv6/ip6_tunnel.c                         |  14 +-
>   net/ipv6/sit.c                                |  38 ++-
>   net/netfilter/ipvs/ip_vs_core.c               |   6 +-
>   net/netfilter/ipvs/ip_vs_xmit.c               |  20 +-
>   net/netfilter/nft_tunnel.c                    |  44 +--
>   net/openvswitch/flow_netlink.c                |  61 ++--
>   net/psample/psample.c                         |  26 +-
>   net/sched/act_tunnel_key.c                    |  36 +--
>   net/sched/cls_flower.c                        | 134 +++++++-
>   57 files changed, 1652 insertions(+), 495 deletions(-)
>   create mode 100644 drivers/net/pfcp.c
>   create mode 100644 include/net/pfcp.h
> 

  parent reply	other threads:[~2023-12-08 21:34 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-07 16:49 [Intel-wired-lan] [PATCH iwl-next v4 0/7] Add PFCP filter support Marcin Szycik
2023-12-07 16:49 ` Marcin Szycik
2023-12-07 16:49 ` [Intel-wired-lan] [PATCH iwl-next v4 1/7] ip_tunnel: use a separate struct to store tunnel params in the kernel Marcin Szycik
2023-12-07 16:49   ` Marcin Szycik
2023-12-07 16:49 ` [Intel-wired-lan] [PATCH iwl-next v4 2/7] ip_tunnel: convert __be16 tunnel flags to bitmaps Marcin Szycik
2023-12-07 16:49   ` Marcin Szycik
2023-12-07 16:49 ` [Intel-wired-lan] [PATCH iwl-next v4 3/7] lib/bitmap: add tests for IP tunnel flags conversion helpers Marcin Szycik
2023-12-07 16:49   ` Marcin Szycik
2023-12-07 16:49 ` [Intel-wired-lan] [PATCH iwl-next v4 4/7] pfcp: add PFCP module Marcin Szycik
2023-12-07 16:49   ` Marcin Szycik
2023-12-07 16:49 ` [Intel-wired-lan] [PATCH iwl-next v4 5/7] pfcp: always set pfcp metadata Marcin Szycik
2023-12-07 16:49   ` Marcin Szycik
2023-12-07 16:49 ` [Intel-wired-lan] [PATCH iwl-next v4 6/7] ice: refactor ICE_TC_FLWR_FIELD_ENC_OPTS Marcin Szycik
2023-12-07 16:49   ` Marcin Szycik
2023-12-07 16:49 ` [Intel-wired-lan] [PATCH iwl-next v4 7/7] ice: Add support for PFCP hardware offload in switchdev Marcin Szycik
2023-12-07 16:49   ` Marcin Szycik
2023-12-08 21:34 ` Tony Nguyen [this message]
2023-12-08 21:34   ` [Intel-wired-lan] [PATCH iwl-next v4 0/7] Add PFCP filter support Tony Nguyen
2023-12-11 12:38   ` Alexander Lobakin
2023-12-11 12:38     ` Alexander Lobakin
2023-12-11 21:23     ` Tony Nguyen
2023-12-11 21:23       ` Tony Nguyen
2023-12-12 10:45       ` Marcin Szycik
2023-12-12 10:45         ` Marcin Szycik
2023-12-15 10:11         ` Alexander Lobakin
2023-12-15 10:11           ` Alexander Lobakin
2023-12-15 16:49           ` Jakub Kicinski
2023-12-15 16:49             ` Jakub Kicinski
2023-12-18 10:04             ` Marcin Szycik
2023-12-18 10:04               ` Marcin Szycik
2023-12-18 12:47               ` Alexander Lobakin
2023-12-18 12:47                 ` Alexander Lobakin
2023-12-18 15:57                 ` Yury Norov
2023-12-18 15:57                   ` Yury Norov
2023-12-18 16:16                   ` Alexander Potapenko
2023-12-18 16:16                     ` Alexander Potapenko
2023-12-19  9:04                     ` Alexander Lobakin
2023-12-19  9:04                       ` Alexander Lobakin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b3e5ec09-d01b-0cea-69ea-c7406ea3f8b5@intel.com \
    --to=anthony.l.nguyen@intel.com \
    --cc=aleksander.lobakin@intel.com \
    --cc=andy@kernel.org \
    --cc=davem@davemloft.net \
    --cc=idosch@nvidia.com \
    --cc=intel-wired-lan@lists.osuosl.org \
    --cc=jesse.brandeburg@intel.com \
    --cc=jiri@resnulli.us \
    --cc=kuba@kernel.org \
    --cc=marcin.szycik@linux.intel.com \
    --cc=michal.swiatkowski@linux.intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=simon.horman@corigine.com \
    --cc=wojciech.drewek@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.