net/sched: act_vlan: No dump for unset priority
authorBoris Sukholitko <boris.sukholitko@broadcom.com>
Tue, 1 Jun 2021 12:30:51 +0000 (15:30 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 1 Jun 2021 23:54:42 +0000 (16:54 -0700)
Dump vlan priority only if it has been previously set.

Fix the tests accordingly.

Signed-off-by: Boris Sukholitko <boris.sukholitko@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/act_vlan.c
tools/testing/selftests/tc-testing/tc-tests/actions/vlan.json

index a108469..71f2015 100644 (file)
@@ -307,8 +307,8 @@ static int tcf_vlan_dump(struct sk_buff *skb, struct tc_action *a,
            (nla_put_u16(skb, TCA_VLAN_PUSH_VLAN_ID, p->tcfv_push_vid) ||
             nla_put_be16(skb, TCA_VLAN_PUSH_VLAN_PROTOCOL,
                          p->tcfv_push_proto) ||
-            (nla_put_u8(skb, TCA_VLAN_PUSH_VLAN_PRIORITY,
-                                             p->tcfv_push_prio))))
+            (p->tcfv_push_prio_exists &&
+             nla_put_u8(skb, TCA_VLAN_PUSH_VLAN_PRIORITY, p->tcfv_push_prio))))
                goto nla_put_failure;
 
        if (p->tcfv_action == TCA_VLAN_ACT_PUSH_ETH) {
index 41d7832..eccbf0d 100644 (file)
         "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1Q id 5 index 100",
         "expExitCode": "0",
         "verifyCmd": "$TC actions get action vlan index 100",
-        "matchPattern": "action order [0-9]+: vlan.*modify id 100 protocol 802.1Q priority 0 pipe.*index 100 ref",
+        "matchPattern": "action order [0-9]+: vlan.*modify id 100 protocol 802.1Q pipe.*index 100 ref",
         "matchCount": "0",
         "teardown": [
             "$TC actions flush action vlan"
         "cmdUnderTest": "$TC actions add action vlan modify protocol 802.1ad id 500 reclassify index 12",
         "expExitCode": "0",
         "verifyCmd": "$TC actions get action vlan index 12",
-        "matchPattern": "action order [0-9]+: vlan.*modify id 500 protocol 802.1ad priority 0 reclassify.*index 12 ref",
+        "matchPattern": "action order [0-9]+: vlan.*modify id 500 protocol 802.1ad reclassify.*index 12 ref",
         "matchCount": "1",
         "teardown": [
             "$TC actions flush action vlan"