All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
@ 2021-04-23 10:04 ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: magnus.karlsson, intel-wired-lan, anthony.l.nguyen, maciej.fijalkowski
  Cc: Magnus Karlsson, netdev, brouer

Add missing exception tracing to XDP when a number of different errors
can occur. The support was only partial. Several errors where not
logged which would confuse the user quite a lot not knowing where and
why the packets disappeared.

This patch set fixes this for all Intel drivers with XDP support.

Thanks: Magnus

Magnus Karlsson (5):
  i40e: add correct exception tracing for XDP
  ice: add correct exception tracing for XDP
  ixgbe: add correct exception tracing for XDP
  igb add correct exception tracing for XDP
  ixgbevf: add correct exception tracing for XDP

 drivers/net/ethernet/intel/i40e/i40e_txrx.c      |  7 ++++++-
 drivers/net/ethernet/intel/i40e/i40e_xsk.c       |  7 ++++++-
 drivers/net/ethernet/intel/ice/ice_txrx.c        | 12 +++++++++---
 drivers/net/ethernet/intel/ice/ice_xsk.c         |  7 ++++++-
 drivers/net/ethernet/intel/igb/igb_main.c        | 10 ++++++----
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    | 16 ++++++++--------
 drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c     | 13 ++++++++-----
 .../net/ethernet/intel/ixgbevf/ixgbevf_main.c    |  3 +++
 8 files changed, 52 insertions(+), 23 deletions(-)


base-commit: bb556de79f0a9e647e8febe15786ee68483fa67b
--
2.29.0

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
@ 2021-04-23 10:04 ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: intel-wired-lan

Add missing exception tracing to XDP when a number of different errors
can occur. The support was only partial. Several errors where not
logged which would confuse the user quite a lot not knowing where and
why the packets disappeared.

This patch set fixes this for all Intel drivers with XDP support.

Thanks: Magnus

Magnus Karlsson (5):
  i40e: add correct exception tracing for XDP
  ice: add correct exception tracing for XDP
  ixgbe: add correct exception tracing for XDP
  igb add correct exception tracing for XDP
  ixgbevf: add correct exception tracing for XDP

 drivers/net/ethernet/intel/i40e/i40e_txrx.c      |  7 ++++++-
 drivers/net/ethernet/intel/i40e/i40e_xsk.c       |  7 ++++++-
 drivers/net/ethernet/intel/ice/ice_txrx.c        | 12 +++++++++---
 drivers/net/ethernet/intel/ice/ice_xsk.c         |  7 ++++++-
 drivers/net/ethernet/intel/igb/igb_main.c        | 10 ++++++----
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    | 16 ++++++++--------
 drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c     | 13 ++++++++-----
 .../net/ethernet/intel/ixgbevf/ixgbevf_main.c    |  3 +++
 8 files changed, 52 insertions(+), 23 deletions(-)


base-commit: bb556de79f0a9e647e8febe15786ee68483fa67b
--
2.29.0

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PATCH intel-net 1/5] i40e: add correct exception tracing for XDP
  2021-04-23 10:04 ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-04-23 10:04   ` Magnus Karlsson
  -1 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: magnus.karlsson, intel-wired-lan, anthony.l.nguyen, maciej.fijalkowski
  Cc: netdev, brouer

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different errors
can occur. The support was only partial. Several errors where not
logged which would confuse the user quite a lot not knowing where and
why the packets disappeared.

Fixes: 74608d17fe29 ("i40e: add support for XDP_TX action")
Fixes: 0a714186d3c0 ("i40e: add AF_XDP zero-copy Rx support")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/i40e/i40e_txrx.c | 7 ++++++-
 drivers/net/ethernet/intel/i40e/i40e_xsk.c  | 7 ++++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
index 06b4271219b1..08fbb2ec7ff8 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
@@ -2317,15 +2317,20 @@ static int i40e_run_xdp(struct i40e_ring *rx_ring, struct xdp_buff *xdp)
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[rx_ring->queue_index];
 		result = i40e_xmit_xdp_tx_ring(xdp, xdp_ring);
+		if (result == I40E_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? I40E_XDP_REDIR : I40E_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = I40E_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
diff --git a/drivers/net/ethernet/intel/i40e/i40e_xsk.c b/drivers/net/ethernet/intel/i40e/i40e_xsk.c
index 12ca84113587..ca7dd1afe37a 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_xsk.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_xsk.c
@@ -166,15 +166,20 @@ static int i40e_run_xdp_zc(struct i40e_ring *rx_ring, struct xdp_buff *xdp)
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[rx_ring->queue_index];
 		result = i40e_xmit_xdp_tx_ring(xdp, xdp_ring);
+		if (result == I40E_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? I40E_XDP_REDIR : I40E_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = I40E_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 1/5] i40e: add correct exception tracing for XDP
@ 2021-04-23 10:04   ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different errors
can occur. The support was only partial. Several errors where not
logged which would confuse the user quite a lot not knowing where and
why the packets disappeared.

Fixes: 74608d17fe29 ("i40e: add support for XDP_TX action")
Fixes: 0a714186d3c0 ("i40e: add AF_XDP zero-copy Rx support")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/i40e/i40e_txrx.c | 7 ++++++-
 drivers/net/ethernet/intel/i40e/i40e_xsk.c  | 7 ++++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
index 06b4271219b1..08fbb2ec7ff8 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
@@ -2317,15 +2317,20 @@ static int i40e_run_xdp(struct i40e_ring *rx_ring, struct xdp_buff *xdp)
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[rx_ring->queue_index];
 		result = i40e_xmit_xdp_tx_ring(xdp, xdp_ring);
+		if (result == I40E_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? I40E_XDP_REDIR : I40E_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = I40E_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
diff --git a/drivers/net/ethernet/intel/i40e/i40e_xsk.c b/drivers/net/ethernet/intel/i40e/i40e_xsk.c
index 12ca84113587..ca7dd1afe37a 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_xsk.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_xsk.c
@@ -166,15 +166,20 @@ static int i40e_run_xdp_zc(struct i40e_ring *rx_ring, struct xdp_buff *xdp)
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[rx_ring->queue_index];
 		result = i40e_xmit_xdp_tx_ring(xdp, xdp_ring);
+		if (result == I40E_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? I40E_XDP_REDIR : I40E_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = I40E_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH intel-net 2/5] ice: add correct exception tracing for XDP
  2021-04-23 10:04 ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-04-23 10:04   ` Magnus Karlsson
  -1 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: magnus.karlsson, intel-wired-lan, anthony.l.nguyen, maciej.fijalkowski
  Cc: netdev, brouer

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: efc2214b6047 ("ice: Add support for XDP")
Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_txrx.c | 12 +++++++++---
 drivers/net/ethernet/intel/ice/ice_xsk.c  |  7 ++++++-
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_txrx.c b/drivers/net/ethernet/intel/ice/ice_txrx.c
index b91dcfd12727..b0a58d463441 100644
--- a/drivers/net/ethernet/intel/ice/ice_txrx.c
+++ b/drivers/net/ethernet/intel/ice/ice_txrx.c
@@ -523,7 +523,7 @@ ice_run_xdp(struct ice_ring *rx_ring, struct xdp_buff *xdp,
 	    struct bpf_prog *xdp_prog)
 {
 	struct ice_ring *xdp_ring;
-	int err;
+	int err, result;
 	u32 act;
 
 	act = bpf_prog_run_xdp(xdp_prog, xdp);
@@ -532,14 +532,20 @@ ice_run_xdp(struct ice_ring *rx_ring, struct xdp_buff *xdp,
 		return ICE_XDP_PASS;
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[smp_processor_id()];
-		return ice_xmit_xdp_buff(xdp, xdp_ring);
+		result = ice_xmit_xdp_buff(xdp, xdp_ring);
+		if (result == ICE_XDP_CONSUMED)
+			goto out_failure;
+		return result;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		return !err ? ICE_XDP_REDIR : ICE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		return ICE_XDP_REDIR;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough;
 	case XDP_DROP:
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c b/drivers/net/ethernet/intel/ice/ice_xsk.c
index 9f94d9159acd..ec8d590bccdd 100644
--- a/drivers/net/ethernet/intel/ice/ice_xsk.c
+++ b/drivers/net/ethernet/intel/ice/ice_xsk.c
@@ -479,15 +479,20 @@ ice_run_xdp_zc(struct ice_ring *rx_ring, struct xdp_buff *xdp)
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[rx_ring->q_index];
 		result = ice_xmit_xdp_buff(xdp, xdp_ring);
+		if (result == ICE_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? ICE_XDP_REDIR : ICE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = ICE_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough;
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 2/5] ice: add correct exception tracing for XDP
@ 2021-04-23 10:04   ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: efc2214b6047 ("ice: Add support for XDP")
Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_txrx.c | 12 +++++++++---
 drivers/net/ethernet/intel/ice/ice_xsk.c  |  7 ++++++-
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_txrx.c b/drivers/net/ethernet/intel/ice/ice_txrx.c
index b91dcfd12727..b0a58d463441 100644
--- a/drivers/net/ethernet/intel/ice/ice_txrx.c
+++ b/drivers/net/ethernet/intel/ice/ice_txrx.c
@@ -523,7 +523,7 @@ ice_run_xdp(struct ice_ring *rx_ring, struct xdp_buff *xdp,
 	    struct bpf_prog *xdp_prog)
 {
 	struct ice_ring *xdp_ring;
-	int err;
+	int err, result;
 	u32 act;
 
 	act = bpf_prog_run_xdp(xdp_prog, xdp);
@@ -532,14 +532,20 @@ ice_run_xdp(struct ice_ring *rx_ring, struct xdp_buff *xdp,
 		return ICE_XDP_PASS;
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[smp_processor_id()];
-		return ice_xmit_xdp_buff(xdp, xdp_ring);
+		result = ice_xmit_xdp_buff(xdp, xdp_ring);
+		if (result == ICE_XDP_CONSUMED)
+			goto out_failure;
+		return result;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		return !err ? ICE_XDP_REDIR : ICE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		return ICE_XDP_REDIR;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough;
 	case XDP_DROP:
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c b/drivers/net/ethernet/intel/ice/ice_xsk.c
index 9f94d9159acd..ec8d590bccdd 100644
--- a/drivers/net/ethernet/intel/ice/ice_xsk.c
+++ b/drivers/net/ethernet/intel/ice/ice_xsk.c
@@ -479,15 +479,20 @@ ice_run_xdp_zc(struct ice_ring *rx_ring, struct xdp_buff *xdp)
 	case XDP_TX:
 		xdp_ring = rx_ring->vsi->xdp_rings[rx_ring->q_index];
 		result = ice_xmit_xdp_buff(xdp, xdp_ring);
+		if (result == ICE_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? ICE_XDP_REDIR : ICE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = ICE_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough;
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH intel-net 3/5] ixgbe: add correct exception tracing for XDP
  2021-04-23 10:04 ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-04-23 10:04   ` Magnus Karlsson
  -1 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: magnus.karlsson, intel-wired-lan, anthony.l.nguyen, maciej.fijalkowski
  Cc: netdev, brouer

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: 33fdc82f0883 ("ixgbe: add support for XDP_TX action")
Fixes: d0bcacd0a130 ("ixgbe: add AF_XDP zero-copy Rx support")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 16 ++++++++--------
 drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c  | 13 ++++++++-----
 2 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index cffb95f8f632..c194158a421c 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -2213,23 +2213,23 @@ static struct sk_buff *ixgbe_run_xdp(struct ixgbe_adapter *adapter,
 		break;
 	case XDP_TX:
 		xdpf = xdp_convert_buff_to_frame(xdp);
-		if (unlikely(!xdpf)) {
-			result = IXGBE_XDP_CONSUMED;
-			break;
-		}
+		if (unlikely(!xdpf))
+			goto out_failure;
 		result = ixgbe_xmit_xdp_ring(adapter, xdpf);
+		if (result == IXGBE_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(adapter->netdev, xdp, xdp_prog);
-		if (!err)
-			result = IXGBE_XDP_REDIR;
-		else
-			result = IXGBE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = IXGBE_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c
index 3771857cf887..5f01e724037a 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c
@@ -109,20 +109,23 @@ static int ixgbe_run_xdp_zc(struct ixgbe_adapter *adapter,
 		break;
 	case XDP_TX:
 		xdpf = xdp_convert_buff_to_frame(xdp);
-		if (unlikely(!xdpf)) {
-			result = IXGBE_XDP_CONSUMED;
-			break;
-		}
+		if (unlikely(!xdpf))
+			goto out_failure;
 		result = ixgbe_xmit_xdp_ring(adapter, xdpf);
+		if (result == IXGBE_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? IXGBE_XDP_REDIR : IXGBE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = IXGBE_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 3/5] ixgbe: add correct exception tracing for XDP
@ 2021-04-23 10:04   ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: 33fdc82f0883 ("ixgbe: add support for XDP_TX action")
Fixes: d0bcacd0a130 ("ixgbe: add AF_XDP zero-copy Rx support")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 16 ++++++++--------
 drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c  | 13 ++++++++-----
 2 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index cffb95f8f632..c194158a421c 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -2213,23 +2213,23 @@ static struct sk_buff *ixgbe_run_xdp(struct ixgbe_adapter *adapter,
 		break;
 	case XDP_TX:
 		xdpf = xdp_convert_buff_to_frame(xdp);
-		if (unlikely(!xdpf)) {
-			result = IXGBE_XDP_CONSUMED;
-			break;
-		}
+		if (unlikely(!xdpf))
+			goto out_failure;
 		result = ixgbe_xmit_xdp_ring(adapter, xdpf);
+		if (result == IXGBE_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(adapter->netdev, xdp, xdp_prog);
-		if (!err)
-			result = IXGBE_XDP_REDIR;
-		else
-			result = IXGBE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = IXGBE_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c
index 3771857cf887..5f01e724037a 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c
@@ -109,20 +109,23 @@ static int ixgbe_run_xdp_zc(struct ixgbe_adapter *adapter,
 		break;
 	case XDP_TX:
 		xdpf = xdp_convert_buff_to_frame(xdp);
-		if (unlikely(!xdpf)) {
-			result = IXGBE_XDP_CONSUMED;
-			break;
-		}
+		if (unlikely(!xdpf))
+			goto out_failure;
 		result = ixgbe_xmit_xdp_ring(adapter, xdpf);
+		if (result == IXGBE_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-		result = !err ? IXGBE_XDP_REDIR : IXGBE_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = IXGBE_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH intel-net 4/5] igb add correct exception tracing for XDP
  2021-04-23 10:04 ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-04-23 10:04   ` Magnus Karlsson
  -1 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: magnus.karlsson, intel-wired-lan, anthony.l.nguyen, maciej.fijalkowski
  Cc: netdev, brouer

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: 9cbc948b5a20 ("igb: add XDP support")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/igb/igb_main.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
index a45cd2b416c8..45fcfc536b38 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
@@ -8402,18 +8402,20 @@ static struct sk_buff *igb_run_xdp(struct igb_adapter *adapter,
 		break;
 	case XDP_TX:
 		result = igb_xdp_xmit_back(adapter, xdp);
+		if (result == IGB_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(adapter->netdev, xdp, xdp_prog);
-		if (!err)
-			result = IGB_XDP_REDIR;
-		else
-			result = IGB_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = IGB_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough;
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 4/5] igb add correct exception tracing for XDP
@ 2021-04-23 10:04   ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: 9cbc948b5a20 ("igb: add XDP support")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/igb/igb_main.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
index a45cd2b416c8..45fcfc536b38 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
@@ -8402,18 +8402,20 @@ static struct sk_buff *igb_run_xdp(struct igb_adapter *adapter,
 		break;
 	case XDP_TX:
 		result = igb_xdp_xmit_back(adapter, xdp);
+		if (result == IGB_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	case XDP_REDIRECT:
 		err = xdp_do_redirect(adapter->netdev, xdp, xdp_prog);
-		if (!err)
-			result = IGB_XDP_REDIR;
-		else
-			result = IGB_XDP_CONSUMED;
+		if (err)
+			goto out_failure;
+		result = IGB_XDP_REDIR;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough;
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH intel-net 5/5] ixgbevf: add correct exception tracing for XDP
  2021-04-23 10:04 ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-04-23 10:04   ` Magnus Karlsson
  -1 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: magnus.karlsson, intel-wired-lan, anthony.l.nguyen, maciej.fijalkowski
  Cc: netdev, brouer

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: 21092e9ce8b1 ("ixgbevf: Add support for XDP_TX action")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
index 449d7d5b280d..b38860c48598 100644
--- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
+++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
@@ -1067,11 +1067,14 @@ static struct sk_buff *ixgbevf_run_xdp(struct ixgbevf_adapter *adapter,
 	case XDP_TX:
 		xdp_ring = adapter->xdp_ring[rx_ring->queue_index];
 		result = ixgbevf_xmit_xdp_ring(xdp_ring, xdp);
+		if (result == IXGBEVF_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 5/5] ixgbevf: add correct exception tracing for XDP
@ 2021-04-23 10:04   ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-04-23 10:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Magnus Karlsson <magnus.karlsson@intel.com>

Add missing exception tracing to XDP when a number of different
errors can occur. The support was only partial. Several errors
where not logged which would confuse the user quite a lot not
knowing where and why the packets disappeared.

Fixes: 21092e9ce8b1 ("ixgbevf: Add support for XDP_TX action")
Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
---
 drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
index 449d7d5b280d..b38860c48598 100644
--- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
+++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
@@ -1067,11 +1067,14 @@ static struct sk_buff *ixgbevf_run_xdp(struct ixgbevf_adapter *adapter,
 	case XDP_TX:
 		xdp_ring = adapter->xdp_ring[rx_ring->queue_index];
 		result = ixgbevf_xmit_xdp_ring(xdp_ring, xdp);
+		if (result == IXGBEVF_XDP_CONSUMED)
+			goto out_failure;
 		break;
 	default:
 		bpf_warn_invalid_xdp_action(act);
 		fallthrough;
 	case XDP_ABORTED:
+out_failure:
 		trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
 		fallthrough; /* handle aborts by dropping packet */
 	case XDP_DROP:
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
  2021-04-23 10:04 ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-05-07 22:58   ` Nguyen, Anthony L
  -1 siblings, 0 replies; 20+ messages in thread
From: Nguyen, Anthony L @ 2021-05-07 22:58 UTC (permalink / raw)
  To: magnus.karlsson, intel-wired-lan, Karlsson, Magnus, Fijalkowski, Maciej
  Cc: netdev, brouer

On Fri, 2021-04-23 at 12:04 +0200, Magnus Karlsson wrote:
> Add missing exception tracing to XDP when a number of different
> errors
> can occur. The support was only partial. Several errors where not
> logged which would confuse the user quite a lot not knowing where and
> why the packets disappeared.
> 
> This patch set fixes this for all Intel drivers with XDP support.
> 
> Thanks: Magnus

This doesn't apply anymore with the 5.13 patches. It looks like your
"optimize for XDP_REDIRECT in xsk path" patches are conflicting with
some of these. Did you want to rework them?

Thanks,
Tony

> Magnus Karlsson (5):
>   i40e: add correct exception tracing for XDP
>   ice: add correct exception tracing for XDP
>   ixgbe: add correct exception tracing for XDP
>   igb add correct exception tracing for XDP
>   ixgbevf: add correct exception tracing for XDP
> 
>  drivers/net/ethernet/intel/i40e/i40e_txrx.c      |  7 ++++++-
>  drivers/net/ethernet/intel/i40e/i40e_xsk.c       |  7 ++++++-
>  drivers/net/ethernet/intel/ice/ice_txrx.c        | 12 +++++++++---
>  drivers/net/ethernet/intel/ice/ice_xsk.c         |  7 ++++++-
>  drivers/net/ethernet/intel/igb/igb_main.c        | 10 ++++++----
>  drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    | 16 ++++++++----
> ----
>  drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c     | 13 ++++++++-----
>  .../net/ethernet/intel/ixgbevf/ixgbevf_main.c    |  3 +++
>  8 files changed, 52 insertions(+), 23 deletions(-)
> 
> 
> base-commit: bb556de79f0a9e647e8febe15786ee68483fa67b
> --
> 2.29.0

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
@ 2021-05-07 22:58   ` Nguyen, Anthony L
  0 siblings, 0 replies; 20+ messages in thread
From: Nguyen, Anthony L @ 2021-05-07 22:58 UTC (permalink / raw)
  To: intel-wired-lan

On Fri, 2021-04-23 at 12:04 +0200, Magnus Karlsson wrote:
> Add missing exception tracing to XDP when a number of different
> errors
> can occur. The support was only partial. Several errors where not
> logged which would confuse the user quite a lot not knowing where and
> why the packets disappeared.
> 
> This patch set fixes this for all Intel drivers with XDP support.
> 
> Thanks: Magnus

This doesn't apply anymore with the 5.13 patches. It looks like your
"optimize for XDP_REDIRECT in xsk path" patches are conflicting with
some of these. Did you want to rework them?

Thanks,
Tony

> Magnus Karlsson (5):
>   i40e: add correct exception tracing for XDP
>   ice: add correct exception tracing for XDP
>   ixgbe: add correct exception tracing for XDP
>   igb add correct exception tracing for XDP
>   ixgbevf: add correct exception tracing for XDP
> 
>  drivers/net/ethernet/intel/i40e/i40e_txrx.c      |  7 ++++++-
>  drivers/net/ethernet/intel/i40e/i40e_xsk.c       |  7 ++++++-
>  drivers/net/ethernet/intel/ice/ice_txrx.c        | 12 +++++++++---
>  drivers/net/ethernet/intel/ice/ice_xsk.c         |  7 ++++++-
>  drivers/net/ethernet/intel/igb/igb_main.c        | 10 ++++++----
>  drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    | 16 ++++++++----
> ----
>  drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c     | 13 ++++++++-----
>  .../net/ethernet/intel/ixgbevf/ixgbevf_main.c    |  3 +++
>  8 files changed, 52 insertions(+), 23 deletions(-)
> 
> 
> base-commit: bb556de79f0a9e647e8febe15786ee68483fa67b
> --
> 2.29.0

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
  2021-05-07 22:58   ` [Intel-wired-lan] " Nguyen, Anthony L
@ 2021-05-10  6:06     ` Magnus Karlsson
  -1 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-05-10  6:06 UTC (permalink / raw)
  To: Nguyen, Anthony L
  Cc: intel-wired-lan, Karlsson, Magnus, Fijalkowski, Maciej, netdev, brouer

On Sat, May 8, 2021 at 12:58 AM Nguyen, Anthony L
<anthony.l.nguyen@intel.com> wrote:
>
> On Fri, 2021-04-23 at 12:04 +0200, Magnus Karlsson wrote:
> > Add missing exception tracing to XDP when a number of different
> > errors
> > can occur. The support was only partial. Several errors where not
> > logged which would confuse the user quite a lot not knowing where and
> > why the packets disappeared.
> >
> > This patch set fixes this for all Intel drivers with XDP support.
> >
> > Thanks: Magnus
>
> This doesn't apply anymore with the 5.13 patches. It looks like your
> "optimize for XDP_REDIRECT in xsk path" patches are conflicting with
> some of these. Did you want to rework them?

I will rebase them and resubmit.

> Thanks,
> Tony
>
> > Magnus Karlsson (5):
> >   i40e: add correct exception tracing for XDP
> >   ice: add correct exception tracing for XDP
> >   ixgbe: add correct exception tracing for XDP
> >   igb add correct exception tracing for XDP
> >   ixgbevf: add correct exception tracing for XDP
> >
> >  drivers/net/ethernet/intel/i40e/i40e_txrx.c      |  7 ++++++-
> >  drivers/net/ethernet/intel/i40e/i40e_xsk.c       |  7 ++++++-
> >  drivers/net/ethernet/intel/ice/ice_txrx.c        | 12 +++++++++---
> >  drivers/net/ethernet/intel/ice/ice_xsk.c         |  7 ++++++-
> >  drivers/net/ethernet/intel/igb/igb_main.c        | 10 ++++++----
> >  drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    | 16 ++++++++----
> > ----
> >  drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c     | 13 ++++++++-----
> >  .../net/ethernet/intel/ixgbevf/ixgbevf_main.c    |  3 +++
> >  8 files changed, 52 insertions(+), 23 deletions(-)
> >
> >
> > base-commit: bb556de79f0a9e647e8febe15786ee68483fa67b
> > --
> > 2.29.0

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
@ 2021-05-10  6:06     ` Magnus Karlsson
  0 siblings, 0 replies; 20+ messages in thread
From: Magnus Karlsson @ 2021-05-10  6:06 UTC (permalink / raw)
  To: intel-wired-lan

On Sat, May 8, 2021 at 12:58 AM Nguyen, Anthony L
<anthony.l.nguyen@intel.com> wrote:
>
> On Fri, 2021-04-23 at 12:04 +0200, Magnus Karlsson wrote:
> > Add missing exception tracing to XDP when a number of different
> > errors
> > can occur. The support was only partial. Several errors where not
> > logged which would confuse the user quite a lot not knowing where and
> > why the packets disappeared.
> >
> > This patch set fixes this for all Intel drivers with XDP support.
> >
> > Thanks: Magnus
>
> This doesn't apply anymore with the 5.13 patches. It looks like your
> "optimize for XDP_REDIRECT in xsk path" patches are conflicting with
> some of these. Did you want to rework them?

I will rebase them and resubmit.

> Thanks,
> Tony
>
> > Magnus Karlsson (5):
> >   i40e: add correct exception tracing for XDP
> >   ice: add correct exception tracing for XDP
> >   ixgbe: add correct exception tracing for XDP
> >   igb add correct exception tracing for XDP
> >   ixgbevf: add correct exception tracing for XDP
> >
> >  drivers/net/ethernet/intel/i40e/i40e_txrx.c      |  7 ++++++-
> >  drivers/net/ethernet/intel/i40e/i40e_xsk.c       |  7 ++++++-
> >  drivers/net/ethernet/intel/ice/ice_txrx.c        | 12 +++++++++---
> >  drivers/net/ethernet/intel/ice/ice_xsk.c         |  7 ++++++-
> >  drivers/net/ethernet/intel/igb/igb_main.c        | 10 ++++++----
> >  drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    | 16 ++++++++----
> > ----
> >  drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c     | 13 ++++++++-----
> >  .../net/ethernet/intel/ixgbevf/ixgbevf_main.c    |  3 +++
> >  8 files changed, 52 insertions(+), 23 deletions(-)
> >
> >
> > base-commit: bb556de79f0a9e647e8febe15786ee68483fa67b
> > --
> > 2.29.0

^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
  2021-05-10  6:06     ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-05-10  8:57       ` Jesper Dangaard Brouer
  -1 siblings, 0 replies; 20+ messages in thread
From: Jesper Dangaard Brouer @ 2021-05-10  8:57 UTC (permalink / raw)
  To: Magnus Karlsson
  Cc: Nguyen, Anthony L, intel-wired-lan, Karlsson, Magnus,
	Fijalkowski, Maciej, netdev, brouer, Kumar Kartikeya Dwivedi,
	Toke Høiland-Jørgensen

On Mon, 10 May 2021 08:06:00 +0200
Magnus Karlsson <magnus.karlsson@gmail.com> wrote:

> On Sat, May 8, 2021 at 12:58 AM Nguyen, Anthony L
> <anthony.l.nguyen@intel.com> wrote:
> >
> > On Fri, 2021-04-23 at 12:04 +0200, Magnus Karlsson wrote:  
> > > Add missing exception tracing to XDP when a number of different errors
> > > can occur. The support was only partial. Several errors where not
> > > logged which would confuse the user quite a lot not knowing where and
> > > why the packets disappeared.
> > >
> > > This patch set fixes this for all Intel drivers with XDP support.
> > >
> > > Thanks: Magnus  
> >
> > This doesn't apply anymore with the 5.13 patches. It looks like your
> > "optimize for XDP_REDIRECT in xsk path" patches are conflicting with
> > some of these. Did you want to rework them?  
> 
> I will rebase them and resubmit.

Thanks for working on this Magnus, highly appreciated.  This should
help end-users troubleshoot these kind of 'exception' packet drops.

We have people that will look at updating the sample/bpf/ programs
(that does XDP redirect) to report on these exception errors/drops.

-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer


^ permalink raw reply	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP
@ 2021-05-10  8:57       ` Jesper Dangaard Brouer
  0 siblings, 0 replies; 20+ messages in thread
From: Jesper Dangaard Brouer @ 2021-05-10  8:57 UTC (permalink / raw)
  To: intel-wired-lan

On Mon, 10 May 2021 08:06:00 +0200
Magnus Karlsson <magnus.karlsson@gmail.com> wrote:

> On Sat, May 8, 2021 at 12:58 AM Nguyen, Anthony L
> <anthony.l.nguyen@intel.com> wrote:
> >
> > On Fri, 2021-04-23 at 12:04 +0200, Magnus Karlsson wrote:  
> > > Add missing exception tracing to XDP when a number of different errors
> > > can occur. The support was only partial. Several errors where not
> > > logged which would confuse the user quite a lot not knowing where and
> > > why the packets disappeared.
> > >
> > > This patch set fixes this for all Intel drivers with XDP support.
> > >
> > > Thanks: Magnus  
> >
> > This doesn't apply anymore with the 5.13 patches. It looks like your
> > "optimize for XDP_REDIRECT in xsk path" patches are conflicting with
> > some of these. Did you want to rework them?  
> 
> I will rebase them and resubmit.

Thanks for working on this Magnus, highly appreciated.  This should
help end-users troubleshoot these kind of 'exception' packet drops.

We have people that will look at updating the sample/bpf/ programs
(that does XDP redirect) to report on these exception errors/drops.

-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  LinkedIn: http://www.linkedin.com/in/brouer


^ permalink raw reply	[flat|nested] 20+ messages in thread

* RE: [Intel-wired-lan] [PATCH intel-net 3/5] ixgbe: add correct exception tracing for XDP
  2021-04-23 10:04   ` [Intel-wired-lan] " Magnus Karlsson
@ 2021-05-21 11:39     ` Jambekar, Vishakha
  -1 siblings, 0 replies; 20+ messages in thread
From: Jambekar, Vishakha @ 2021-05-21 11:39 UTC (permalink / raw)
  To: Magnus Karlsson, Karlsson, Magnus, intel-wired-lan, Nguyen,
	Anthony L, Fijalkowski, Maciej
  Cc: netdev, brouer

> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@osuosl.org> On Behalf Of
> Magnus Karlsson
> Sent: Friday, April 23, 2021 3:35 PM
> To: Karlsson, Magnus <magnus.karlsson@intel.com>; intel-wired-
> lan@lists.osuosl.org; Nguyen, Anthony L <anthony.l.nguyen@intel.com>;
> Fijalkowski, Maciej <maciej.fijalkowski@intel.com>
> Cc: netdev@vger.kernel.org; brouer@redhat.com
> Subject: [Intel-wired-lan] [PATCH intel-net 3/5] ixgbe: add correct exception
> tracing for XDP
> 
> From: Magnus Karlsson <magnus.karlsson@intel.com>
> 
> Add missing exception tracing to XDP when a number of different errors can
> occur. The support was only partial. Several errors where not logged which
> would confuse the user quite a lot not knowing where and why the packets
> disappeared.
> 
> Fixes: 33fdc82f0883 ("ixgbe: add support for XDP_TX action")
> Fixes: d0bcacd0a130 ("ixgbe: add AF_XDP zero-copy Rx support")
> Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
> Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
> ---
>  drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 16 ++++++++--------
> drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c  | 13 ++++++++-----
>  2 files changed, 16 insertions(+), 13 deletions(-)
> 

Tested-by: Vishakha Jambekar<vishakha.jambekar@intel.com>

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [Intel-wired-lan] [PATCH intel-net 3/5] ixgbe: add correct exception tracing for XDP
@ 2021-05-21 11:39     ` Jambekar, Vishakha
  0 siblings, 0 replies; 20+ messages in thread
From: Jambekar, Vishakha @ 2021-05-21 11:39 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@osuosl.org> On Behalf Of
> Magnus Karlsson
> Sent: Friday, April 23, 2021 3:35 PM
> To: Karlsson, Magnus <magnus.karlsson@intel.com>; intel-wired-
> lan at lists.osuosl.org; Nguyen, Anthony L <anthony.l.nguyen@intel.com>;
> Fijalkowski, Maciej <maciej.fijalkowski@intel.com>
> Cc: netdev at vger.kernel.org; brouer at redhat.com
> Subject: [Intel-wired-lan] [PATCH intel-net 3/5] ixgbe: add correct exception
> tracing for XDP
> 
> From: Magnus Karlsson <magnus.karlsson@intel.com>
> 
> Add missing exception tracing to XDP when a number of different errors can
> occur. The support was only partial. Several errors where not logged which
> would confuse the user quite a lot not knowing where and why the packets
> disappeared.
> 
> Fixes: 33fdc82f0883 ("ixgbe: add support for XDP_TX action")
> Fixes: d0bcacd0a130 ("ixgbe: add AF_XDP zero-copy Rx support")
> Reported-by: Jesper Dangaard Brouer <brouer@redhat.com>
> Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
> ---
>  drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 16 ++++++++--------
> drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c  | 13 ++++++++-----
>  2 files changed, 16 insertions(+), 13 deletions(-)
> 

Tested-by: Vishakha Jambekar<vishakha.jambekar@intel.com>

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2021-05-21 11:39 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-23 10:04 [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: add correct exception tracing for XDP Magnus Karlsson
2021-04-23 10:04 ` [Intel-wired-lan] " Magnus Karlsson
2021-04-23 10:04 ` [PATCH intel-net 1/5] i40e: " Magnus Karlsson
2021-04-23 10:04   ` [Intel-wired-lan] " Magnus Karlsson
2021-04-23 10:04 ` [PATCH intel-net 2/5] ice: " Magnus Karlsson
2021-04-23 10:04   ` [Intel-wired-lan] " Magnus Karlsson
2021-04-23 10:04 ` [PATCH intel-net 3/5] ixgbe: " Magnus Karlsson
2021-04-23 10:04   ` [Intel-wired-lan] " Magnus Karlsson
2021-05-21 11:39   ` Jambekar, Vishakha
2021-05-21 11:39     ` Jambekar, Vishakha
2021-04-23 10:04 ` [PATCH intel-net 4/5] igb " Magnus Karlsson
2021-04-23 10:04   ` [Intel-wired-lan] " Magnus Karlsson
2021-04-23 10:04 ` [PATCH intel-net 5/5] ixgbevf: " Magnus Karlsson
2021-04-23 10:04   ` [Intel-wired-lan] " Magnus Karlsson
2021-05-07 22:58 ` [PATCH intel-net 0/5] i40e: ice: ixgbe: ixgbevf: igb: " Nguyen, Anthony L
2021-05-07 22:58   ` [Intel-wired-lan] " Nguyen, Anthony L
2021-05-10  6:06   ` Magnus Karlsson
2021-05-10  6:06     ` [Intel-wired-lan] " Magnus Karlsson
2021-05-10  8:57     ` Jesper Dangaard Brouer
2021-05-10  8:57       ` [Intel-wired-lan] " Jesper Dangaard Brouer

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.