diff options
author | Vivien Didelot <vivien.didelot@gmail.com> | 2019-08-25 20:25:16 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-08-28 06:17:27 +0300 |
commit | cf360866b11901eca5317e8a5c26c3e15b7bf1f2 (patch) | |
tree | 9321d3d52b8f01ad89b9133cbb6a3ed9701f50cc /net/dsa/port.c | |
parent | e65d45cc351ac5f1c11e6bac5669e536df753664 (diff) | |
download | linux-cf360866b11901eca5317e8a5c26c3e15b7bf1f2.tar.xz |
net: dsa: do not skip -EOPNOTSUPP in dsa_port_vid_add
Currently dsa_port_vid_add returns 0 if the switch returns -EOPNOTSUPP.
This function is used in the tag_8021q.c code to offload the PVID of
ports, which would simply not work if .port_vlan_add is not supported
by the underlying switch.
Do not skip -EOPNOTSUPP in dsa_port_vid_add but only when necessary,
that is to say in dsa_slave_vlan_rx_add_vid.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa/port.c')
-rw-r--r-- | net/dsa/port.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/dsa/port.c b/net/dsa/port.c index f75301456430..ef28df7ecbde 100644 --- a/net/dsa/port.c +++ b/net/dsa/port.c @@ -382,8 +382,8 @@ int dsa_port_vid_add(struct dsa_port *dp, u16 vid, u16 flags) trans.ph_prepare = true; err = dsa_port_vlan_add(dp, &vlan, &trans); - if (err == -EOPNOTSUPP) - return 0; + if (err) + return err; trans.ph_prepare = false; return dsa_port_vlan_add(dp, &vlan, &trans); |