summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorSteen Hegelund <steen.hegelund@microchip.com>2022-11-18 00:31:07 +0300
committerDavid S. Miller <davem@davemloft.net>2022-11-21 14:33:02 +0300
commitbcddc196d48182fbbe4b0add157baf50ae0e3d52 (patch)
tree7647b4c16d644c800af7df29eaaaa24d5b1ffd82 /drivers
parent418e0721d408e90564b22d4c74342557b7911d77 (diff)
downloadlinux-bcddc196d48182fbbe4b0add157baf50ae0e3d52.tar.xz
net: microchip: sparx5: Ensure L3 protocol has a default value
This ensures that the l3_proto always have a valid value and that any dissector parsing errors causes the flower rule to be discarded. Signed-off-by: Steen Hegelund <steen.hegelund@microchip.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/ethernet/microchip/sparx5/sparx5_tc_flower.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/ethernet/microchip/sparx5/sparx5_tc_flower.c b/drivers/net/ethernet/microchip/sparx5/sparx5_tc_flower.c
index a48baeacc1d2..04fc2f3b1979 100644
--- a/drivers/net/ethernet/microchip/sparx5/sparx5_tc_flower.c
+++ b/drivers/net/ethernet/microchip/sparx5/sparx5_tc_flower.c
@@ -648,7 +648,11 @@ static int sparx5_tc_flower_replace(struct net_device *ndev,
return PTR_ERR(vrule);
vrule->cookie = fco->cookie;
- sparx5_tc_use_dissectors(fco, admin, vrule, &l3_proto);
+
+ l3_proto = ETH_P_ALL;
+ err = sparx5_tc_use_dissectors(fco, admin, vrule, &l3_proto);
+ if (err)
+ goto out;
err = sparx5_tc_add_rule_counter(admin, vrule);
if (err)