[Bridge] [PATCH v9 net-next 05/12] bridge: Add the ability to configure pvid

Michał Mirosław mirqus at gmail.com
Sat Feb 2 01:15:54 UTC 2013


2013/2/2 Michał Mirosław <mirqus at gmail.com>:
> 2013/2/1 Vlad Yasevich <vyasevic at redhat.com>:
>> A user may designate a certain vlan as PVID.  This means that
>> any ingress frame that does not contain a vlan tag is assigned to
>> this vlan and any forwarding decisions are made with this vlan in mind.
> [...]
>>  struct net_port_vlans {
>>         u16                             port_idx;
>> +       u16                             pvid;
>
> I'm confused about the implementation. I would expect pvid field in
> net_bridge_port and adding a tag if it isn't there on ingress path.
> The rest would be just like without PVIDs. But here you pvid field to
> net_port_vlans, and don't do anything with it in receive nor transmit
> path. Does it work? What am I missing?

Found the answer in next patch (you should merge #5 and #6). Still,
the implementation looks overly complicated. If you force the packet
to canonical form on ingress (keeping outer tag in skb->vlan_tci, and
setting skb->vlan_tci = pvid if there is no tag) the code should get
simpler.

Best Regards,
Michał Mirosław


More information about the Bridge mailing list