On 9/29/21 4:28 PM, Eric Dumazet wrote:
Actually the bug seems to be in pktgen, vs NET_XMIT_CN
You probably would hit the same issues with other qdisc also using NET_XMIT_CN
I would try the following patch :
diff --git a/net/core/pktgen.c b/net/core/pktgen.c
index a3d74e2704c42e3bec1aa502b911c1b952a56cf1..0a2d9534f8d08d1da5dfc68c631f3a07f95c6f77 100644
--- a/net/core/pktgen.c
+++ b/net/core/pktgen.c
@@ -3567,6 +3567,7 @@ static void pktgen_xmit(struct pktgen_dev *pkt_dev)
case NET_XMIT_DROP:
case NET_XMIT_CN:
/* skb has been consumed */
+ pkt_dev->last_ok = 1;
pkt_dev->errors++;
break;
default: /* Drivers are not supposed to return other values! */