Message ID | 20240322100447.27615-1-r-gunasekaran@ti.com (mailing list archive) |
---|---|
State | Accepted |
Commit | b11c81731c810efe592e510bb0110e0db6877419 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] net: hsr: hsr_slave: Fix the promiscuous mode in offload mode | expand |
Fri, Mar 22, 2024 at 11:04:47AM CET, r-gunasekaran@ti.com wrote: >commit e748d0fd66ab ("net: hsr: Disable promiscuous mode in >offload mode") disables promiscuous mode of slave devices >while creating an HSR interface. But while deleting the >HSR interface, it does not take care of it. It decreases the >promiscuous mode count, which eventually enables promiscuous >mode on the slave devices when creating HSR interface again. > >Fix this by not decrementing the promiscuous mode count while >deleting the HSR interface when offload is enabled. > >Fixes: e748d0fd66ab ("net: hsr: Disable promiscuous mode in offload mode") >Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Hello: This patch was applied to netdev/net.git (main) by Jakub Kicinski <kuba@kernel.org>: On Fri, 22 Mar 2024 15:34:47 +0530 you wrote: > commit e748d0fd66ab ("net: hsr: Disable promiscuous mode in > offload mode") disables promiscuous mode of slave devices > while creating an HSR interface. But while deleting the > HSR interface, it does not take care of it. It decreases the > promiscuous mode count, which eventually enables promiscuous > mode on the slave devices when creating HSR interface again. > > [...] Here is the summary with links: - [net] net: hsr: hsr_slave: Fix the promiscuous mode in offload mode https://git.kernel.org/netdev/net/c/b11c81731c81 You are awesome, thank you!
diff --git a/net/hsr/hsr_slave.c b/net/hsr/hsr_slave.c index e5742f2a2d52..1b6457f357bd 100644 --- a/net/hsr/hsr_slave.c +++ b/net/hsr/hsr_slave.c @@ -220,7 +220,8 @@ void hsr_del_port(struct hsr_port *port) netdev_update_features(master->dev); dev_set_mtu(master->dev, hsr_get_max_mtu(hsr)); netdev_rx_handler_unregister(port->dev); - dev_set_promiscuity(port->dev, -1); + if (!port->hsr->fwd_offloaded) + dev_set_promiscuity(port->dev, -1); netdev_upper_dev_unlink(port->dev, master->dev); }
commit e748d0fd66ab ("net: hsr: Disable promiscuous mode in offload mode") disables promiscuous mode of slave devices while creating an HSR interface. But while deleting the HSR interface, it does not take care of it. It decreases the promiscuous mode count, which eventually enables promiscuous mode on the slave devices when creating HSR interface again. Fix this by not decrementing the promiscuous mode count while deleting the HSR interface when offload is enabled. Fixes: e748d0fd66ab ("net: hsr: Disable promiscuous mode in offload mode") Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com> --- net/hsr/hsr_slave.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)