Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1737985

Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of unicast traffic

From Egil Hjelmeland <privat@egil-hjelmeland.no>
Newsgroups linux.kernel
Subject Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of unicast traffic
Date 2017-09-23 12:00 +0200
Message-ID <usPo6-1qg-9@gated-at.bofh.it> (permalink)
References <us6hk-7zm-17@gated-at.bofh.it> <us6hk-7zm-19@gated-at.bofh.it> <usaEh-297-1@gated-at.bofh.it> <usqg1-3bE-9@gated-at.bofh.it> <usCqV-21j-89@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Den 22. sep. 2017 22:08, skrev Andrew Lunn:
>>> I'm wondering how this is supposed to work. Please add a good comment
>>> here, since the hardware is forcing you to do something odd.
>>>
>>> Maybe it would be a good idea to save the STP state in chip.  And then
>>> when chip->is_bridged is set true, change the state in the hardware to
>>> the saved value?
>>>
>>> What happens when port 0 is added to the bridge, there is then a
>>> minute pause and then port 1 is added? I would expect that as soon as
>>> port 0 is added, the STP state machine for port 0 will start and move
>>> into listening and then forwarding. Due to hardware limitations it
>>> looks like you cannot do this. So what state is the hardware
>>> effectively in? Blocking? Forwarding?
>>>
>>> Then port 1 is added. You can then can respect the states. port 1 will
>>> do blocking->listening->forwarding, but what about port 0? The calls
>>> won't get repeated? How does it transition to forwarding?
>>>
>>>    Andrew
>>>
>>
>> I see your point with the "minute pause" argument. Although a bit
>> contrived use case, it is easy to fix by caching the STP state, as
>> you suggest. So I can do that.
> 
> I don't think it is contrived. I've done bridge configuration by hand
> for testing purposes. I've also set the forwarding delay to very small
> values, so there is a clear race condition here.
> 
>> How does other DSA HW chips handle port separation? Knowing that
>> could perhaps help me know what to look for.
> 
> They have better hardware :-)
> 
> Generally each port is totally independent. You can change the STP
> state per port without restrictions.
> 
We can indeed change the STP state per lan9303 port "without
restrictions".

The point is: Once both external ports are in "forwarding", I see no way
to prevent traffic flowing directly between the external ports.


>        Andrew
> 

Egil

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of unicast traffic Egil Hjelmeland <privat@egil-hjelmeland.no> - 2017-09-21 11:50 +0200
  Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of  unicast traffic Andrew Lunn <andrew@lunn.ch> - 2017-09-21 16:30 +0200
    Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of  unicast traffic Egil Hjelmeland <privat@egil-hjelmeland.no> - 2017-09-22 09:10 +0200
      Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of  unicast traffic Andrew Lunn <andrew@lunn.ch> - 2017-09-22 22:10 +0200
        Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of  unicast traffic Egil Hjelmeland <privat@egil-hjelmeland.no> - 2017-09-23 12:00 +0200
          Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of  unicast traffic Andrew Lunn <andrew@lunn.ch> - 2017-09-23 16:40 +0200
            Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of  unicast traffic Egil Hjelmeland <privat@egil-hjelmeland.no> - 2017-09-25 00:10 +0200
  Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of unicast traffic Vivien Didelot <vivien.didelot@savoirfairelinux.com> - 2017-09-21 16:40 +0200
    Re: [PATCH net-next 2/2] net: dsa: lan9303: Add basic offloading of  unicast traffic Egil Hjelmeland <privat@egil-hjelmeland.no> - 2017-09-22 09:30 +0200

csiph-web