Message ID | 20230711210103.597831-5-pctammela@mojatatu.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 137f6219da59903f480a9032b01225e9062f7ae0 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | net/sched: fixes for sch_qfq | expand |
On Tue, Jul 11, 2023 at 06:01:03PM -0300, Pedro Tammela wrote: > A packet with stab overhead greater than QFQ_MAX_LMAX should be dropped > by the QFQ qdisc as it can't handle such lengths. > > Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com> > Signed-off-by: Pedro Tammela <pctammela@mojatatu.com> Reviewed-by: Simon Horman <simon.horman@corigine.com>
On 2023/7/12 5:01, Pedro Tammela wrote: > A packet with stab overhead greater than QFQ_MAX_LMAX should be dropped > by the QFQ qdisc as it can't handle such lengths. > > Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com> > Signed-off-by: Pedro Tammela <pctammela@mojatatu.com> > --- > .../tc-testing/tc-tests/qdiscs/qfq.json | 38 +++++++++++++++++++ > 1 file changed, 38 insertions(+) > > diff --git a/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json b/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json > index 965da7622dac..976dffda4654 100644 > --- a/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json > +++ b/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json > @@ -261,5 +261,43 @@ > "teardown": [ > "$IP link del dev $DUMMY type dummy" > ] > + }, > + { > + "id": "5993", > + "name": "QFQ with stab overhead greater than max packet len", > + "category": [ > + "qdisc", > + "qfq", > + "scapy" > + ], > + "plugins": { > + "requires": [ > + "nsPlugin", > + "scapyPlugin" > + ] > + }, > + "setup": [ > + "$IP link add dev $DUMMY type dummy || /bin/true", > + "$IP link set dev $DUMMY up || /bin/true", > + "$TC qdisc add dev $DUMMY handle 1: stab mtu 2048 tsize 512 mpu 0 overhead 999999999 linklayer ethernet root qfq", > + "$TC class add dev $DUMMY parent 1: classid 1:1 qfq weight 100", > + "$TC qdisc add dev $DEV1 clsact", > + "$TC filter add dev $DEV1 ingress protocol ip flower dst_ip 1.3.3.7/32 action mirred egress mirror dev $DUMMY" > + ], > + "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: matchall classid 1:1", > + "scapy": [ > + { > + "iface": "$DEV0", > + "count": 22, > + "packet": "Ether(type=0x800)/IP(src='10.0.0.10',dst='1.3.3.7')/TCP(sport=5000,dport=10)" > + } > + ], > + "expExitCode": "0", > + "verifyCmd": "$TC -s qdisc ls dev $DUMMY", > + "matchPattern": "dropped 22", > + "matchCount": "1", > + "teardown": [ > + "$TC qdisc del dev $DUMMY handle 1: root qfq" > + ] > } > ] Hi Pedro: I'm confused about whether the following output is necessary during the test. Sent 1 packets. . Sent 1 packets. . ... Otherwise, it looks good to me. Tested-by: Zhengchao Shao <shaozhengchao@huawei.com>
diff --git a/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json b/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json index 965da7622dac..976dffda4654 100644 --- a/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json +++ b/tools/testing/selftests/tc-testing/tc-tests/qdiscs/qfq.json @@ -261,5 +261,43 @@ "teardown": [ "$IP link del dev $DUMMY type dummy" ] + }, + { + "id": "5993", + "name": "QFQ with stab overhead greater than max packet len", + "category": [ + "qdisc", + "qfq", + "scapy" + ], + "plugins": { + "requires": [ + "nsPlugin", + "scapyPlugin" + ] + }, + "setup": [ + "$IP link add dev $DUMMY type dummy || /bin/true", + "$IP link set dev $DUMMY up || /bin/true", + "$TC qdisc add dev $DUMMY handle 1: stab mtu 2048 tsize 512 mpu 0 overhead 999999999 linklayer ethernet root qfq", + "$TC class add dev $DUMMY parent 1: classid 1:1 qfq weight 100", + "$TC qdisc add dev $DEV1 clsact", + "$TC filter add dev $DEV1 ingress protocol ip flower dst_ip 1.3.3.7/32 action mirred egress mirror dev $DUMMY" + ], + "cmdUnderTest": "$TC filter add dev $DUMMY parent 1: matchall classid 1:1", + "scapy": [ + { + "iface": "$DEV0", + "count": 22, + "packet": "Ether(type=0x800)/IP(src='10.0.0.10',dst='1.3.3.7')/TCP(sport=5000,dport=10)" + } + ], + "expExitCode": "0", + "verifyCmd": "$TC -s qdisc ls dev $DUMMY", + "matchPattern": "dropped 22", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root qfq" + ] } ]