All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
To: intel-wired-lan@lists.osuosl.org
Cc: netdev@vger.kernel.org,
	Michal Swiatkowski <michal.swiatkowski@linux.intel.com>,
	Marcin Szycik <marcin.szycik@linux.intel.com>,
	Michal Kubiak <michal.kubiak@intel.com>
Subject: [iwl-net v1] ice: tc: do default match on all profiles
Date: Tue, 12 Mar 2024 11:52:59 +0100	[thread overview]
Message-ID: <20240312105259.2450-1-michal.swiatkowski@linux.intel.com> (raw)

A simple non-tunnel rule (e.g. matching only on destination MAC) in
hardware will be hit only if the packet isn't a tunnel. In software
execution of the same command, the rule will match both tunnel and
non-tunnel packets.

Change the hardware behaviour to match tunnel and non-tunnel packets in
this case. Do this by considering all profiles when adding non-tunnel rule
(rule not added on tunnel, or not redirecting to tunnel).

Example command:
tc filter add dev pf0 ingress protocol ip flower skip_sw action mirred \
	egress redirect dev pr0

It should match also tunneled packets, the same as command with skip_hw
will do in software.

Fixes: 9e300987d4a8 ("ice: VXLAN and Geneve TC support")
Reviewed-by: Marcin Szycik <marcin.szycik@linux.intel.com>
Reviewed-by: Michal Kubiak <michal.kubiak@intel.com>
Signed-off-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
---
v1 --> v2:
 * fix commit message sugested by Marcin
---
 drivers/net/ethernet/intel/ice/ice_tc_lib.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_tc_lib.c b/drivers/net/ethernet/intel/ice/ice_tc_lib.c
index b890410a2bc0..47f28cd576c6 100644
--- a/drivers/net/ethernet/intel/ice/ice_tc_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_tc_lib.c
@@ -158,7 +158,7 @@ ice_sw_type_from_tunnel(enum ice_tunnel_type type)
 	case TNL_GTPC:
 		return ICE_SW_TUN_GTPC;
 	default:
-		return ICE_NON_TUN;
+		return ICE_SW_TUN_AND_NON_TUN;
 	}
 }
 
-- 
2.42.0


WARNING: multiple messages have this Message-ID (diff)
From: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
To: intel-wired-lan@lists.osuosl.org
Cc: netdev@vger.kernel.org,
	Marcin Szycik <marcin.szycik@linux.intel.com>,
	Michal Kubiak <michal.kubiak@intel.com>,
	Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
Subject: [Intel-wired-lan] [iwl-net v1] ice: tc: do default match on all profiles
Date: Tue, 12 Mar 2024 11:52:59 +0100	[thread overview]
Message-ID: <20240312105259.2450-1-michal.swiatkowski@linux.intel.com> (raw)

A simple non-tunnel rule (e.g. matching only on destination MAC) in
hardware will be hit only if the packet isn't a tunnel. In software
execution of the same command, the rule will match both tunnel and
non-tunnel packets.

Change the hardware behaviour to match tunnel and non-tunnel packets in
this case. Do this by considering all profiles when adding non-tunnel rule
(rule not added on tunnel, or not redirecting to tunnel).

Example command:
tc filter add dev pf0 ingress protocol ip flower skip_sw action mirred \
	egress redirect dev pr0

It should match also tunneled packets, the same as command with skip_hw
will do in software.

Fixes: 9e300987d4a8 ("ice: VXLAN and Geneve TC support")
Reviewed-by: Marcin Szycik <marcin.szycik@linux.intel.com>
Reviewed-by: Michal Kubiak <michal.kubiak@intel.com>
Signed-off-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
---
v1 --> v2:
 * fix commit message sugested by Marcin
---
 drivers/net/ethernet/intel/ice/ice_tc_lib.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_tc_lib.c b/drivers/net/ethernet/intel/ice/ice_tc_lib.c
index b890410a2bc0..47f28cd576c6 100644
--- a/drivers/net/ethernet/intel/ice/ice_tc_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_tc_lib.c
@@ -158,7 +158,7 @@ ice_sw_type_from_tunnel(enum ice_tunnel_type type)
 	case TNL_GTPC:
 		return ICE_SW_TUN_GTPC;
 	default:
-		return ICE_NON_TUN;
+		return ICE_SW_TUN_AND_NON_TUN;
 	}
 }
 
-- 
2.42.0


             reply	other threads:[~2024-03-12 10:48 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-12 10:52 Michal Swiatkowski [this message]
2024-03-12 10:52 ` [Intel-wired-lan] [iwl-net v1] ice: tc: do default match on all profiles Michal Swiatkowski
2024-03-18 18:55 ` Simon Horman
2024-03-18 18:55   ` [Intel-wired-lan] " Simon Horman
2024-03-25  6:36 ` Buvaneswaran, Sujai
2024-03-25  6:36   ` Buvaneswaran, Sujai
2024-03-29  8:25   ` Michal Swiatkowski
2024-03-29  8:25     ` Michal Swiatkowski
2024-04-01  9:28     ` Buvaneswaran, Sujai
2024-04-01  9:28       ` Buvaneswaran, Sujai
2024-04-05  8:43       ` Michal Swiatkowski
2024-04-05  8:43         ` Michal Swiatkowski
2024-04-10  9:57         ` Michal Swiatkowski
2024-04-10  9:57           ` Michal Swiatkowski
2024-04-10 21:40           ` Tony Nguyen

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=20240312105259.2450-1-michal.swiatkowski@linux.intel.com \
    --to=michal.swiatkowski@linux.intel.com \
    --cc=intel-wired-lan@lists.osuosl.org \
    --cc=marcin.szycik@linux.intel.com \
    --cc=michal.kubiak@intel.com \
    --cc=netdev@vger.kernel.org \
    /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.