Vladimir Oltean
2021-Jan-18 19:46 UTC
[Bridge] [PATCH net] net: mrp: use stp state as substitute for unimplemented mrp state
On Mon, Jan 18, 2021 at 07:56:18PM +0100, Horatiu Vultur wrote:> The reason was to stay away from STP, because you can't run these two > protocols at the same time. Even though in SW, we reuse port's state. > In our driver(which is not upstreamed), we currently implement > SWITCHDEV_ATTR_ID_MRP_PORT_STATE and just call the > SWITCHDEV_ATTR_ID_PORT_STP_STATE.And isn't Rasmus's approach reasonable, in that it allows unmodified switchdev drivers to offload MRP port states without creating unnecessary code churn? Also, if it has no in-kernel users, why does it even exist as a switchdev attribute?
Horatiu Vultur
2021-Jan-18 20:20 UTC
[Bridge] [PATCH net] net: mrp: use stp state as substitute for unimplemented mrp state
The 01/18/2021 19:46, Vladimir Oltean wrote:> > On Mon, Jan 18, 2021 at 07:56:18PM +0100, Horatiu Vultur wrote: > > The reason was to stay away from STP, because you can't run these two > > protocols at the same time. Even though in SW, we reuse port's state. > > In our driver(which is not upstreamed), we currently implement > > SWITCHDEV_ATTR_ID_MRP_PORT_STATE and just call the > > SWITCHDEV_ATTR_ID_PORT_STP_STATE. > > And isn't Rasmus's approach reasonable, in that it allows unmodified > switchdev drivers to offload MRP port states without creating > unnecessary code churn?I am sorry but I don't see this as the correct solution. In my opinion, I would prefer to have 3 extra lines in the driver and have a better view of what is happening. Than having 2 calls in the driver for different protocols. If it is not a problem to have STP calls when you configure the MRP, then why not just remove SWITCHDEV_ATTR_ID_MRP_PORT_STATE?> > Also, if it has no in-kernel users, why does it even exist as a > switchdev attribute?-- /Horatiu