mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
Merge branch 'net_sched-prevent-creation-of-classes-with-tc_h_root'
Cong Wang says: ==================== net_sched: Prevent creation of classes with TC_H_ROOT This patchset contains a bug fix and its TDC test case. ==================== Link: https://patch.msgid.link/20250306232355.93864-1-xiyou.wangcong@gmail.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -2254,6 +2254,12 @@ static int tc_ctl_tclass(struct sk_buff *skb, struct nlmsghdr *n,
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
/* Prevent creation of traffic classes with classid TC_H_ROOT */
|
||||
if (clid == TC_H_ROOT) {
|
||||
NL_SET_ERR_MSG(extack, "Cannot create traffic class with classid TC_H_ROOT");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
new_cl = cl;
|
||||
err = -EOPNOTSUPP;
|
||||
if (cops->change)
|
||||
|
||||
@@ -61,5 +61,30 @@
|
||||
"teardown": [
|
||||
"$TC qdisc del dev $DUMMY handle 1: root"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "4009",
|
||||
"name": "Reject creation of DRR class with classid TC_H_ROOT",
|
||||
"category": [
|
||||
"qdisc",
|
||||
"drr"
|
||||
],
|
||||
"plugins": {
|
||||
"requires": "nsPlugin"
|
||||
},
|
||||
"setup": [
|
||||
"$TC qdisc add dev $DUMMY root handle ffff: drr",
|
||||
"$TC filter add dev $DUMMY parent ffff: basic classid ffff:1",
|
||||
"$TC class add dev $DUMMY parent ffff: classid ffff:1 drr",
|
||||
"$TC filter add dev $DUMMY parent ffff: prio 1 u32 match u16 0x0000 0xfe00 at 2 flowid ffff:ffff"
|
||||
],
|
||||
"cmdUnderTest": "$TC class add dev $DUMMY parent ffff: classid ffff:ffff drr",
|
||||
"expExitCode": "2",
|
||||
"verifyCmd": "$TC class show dev $DUMMY",
|
||||
"matchPattern": "class drr ffff:ffff",
|
||||
"matchCount": "0",
|
||||
"teardown": [
|
||||
"$TC qdisc del dev $DUMMY root"
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user