diff options
author | Samuel Mendoza-Jonas <sam@mendozajonas.com> | 2017-10-11 16:54:27 +1100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-10-11 20:10:37 -0700 |
commit | 6e9c0075409d4ec1bc63558ee5a93916a6d7d16f (patch) | |
tree | 581473860a778dc30a19cbf9a9026bc639af517a /net/ncsi/internal.h | |
parent | bde135a672bfd1cc41d91c2bbbbd36eb25409b74 (diff) |
net/ncsi: Don't limit vids based on hot_channel
Currently we drop any new VLAN ids if there are more than the current
(or last used) channel can support. Most importantly this is a problem
if no channel has been selected yet, resulting in a segfault.
Secondly this does not necessarily reflect the capabilities of any other
channels. Instead only drop a new VLAN id if we are already tracking the
maximum allowed by the NCSI specification. Per-channel limits are
already handled by ncsi_add_filter(), but add a message to set_one_vid()
to make it obvious that the channel can not support any more VLAN ids.
Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ncsi/internal.h')
-rw-r--r-- | net/ncsi/internal.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ncsi/internal.h b/net/ncsi/internal.h index af3d636534ef..d30f7bd741d0 100644 --- a/net/ncsi/internal.h +++ b/net/ncsi/internal.h @@ -286,6 +286,7 @@ struct ncsi_dev_priv { struct work_struct work; /* For channel management */ struct packet_type ptype; /* NCSI packet Rx handler */ struct list_head node; /* Form NCSI device list */ +#define NCSI_MAX_VLAN_VIDS 15 struct list_head vlan_vids; /* List of active VLAN IDs */ }; |