mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-29 22:02:02 +00:00
net: ethernet: ti: am65-cpsw: fix error handling in am65_cpsw_nuss_probe()
[ Upstream commit46fb651253
] The am65_cpsw_nuss_cleanup_ndev() function calls unregister_netdev() even if register_netdev() fails, which triggers WARN_ON(1) in unregister_netdevice_many(). To fix it, make sure that unregister_netdev() is called only on registered netdev. Compile tested only. Fixes:84b4aa4932
("net: ethernet: ti: am65-cpsw: add multi port support in mac-only mode") Signed-off-by: Zhang Changzhong <zhangchangzhong@huawei.com> Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
eaa5722549
commit
e4ae978654
1 changed files with 1 additions and 1 deletions
|
@ -2061,7 +2061,7 @@ static void am65_cpsw_nuss_cleanup_ndev(struct am65_cpsw_common *common)
|
|||
|
||||
for (i = 0; i < common->port_num; i++) {
|
||||
port = &common->ports[i];
|
||||
if (port->ndev)
|
||||
if (port->ndev && port->ndev->reg_state == NETREG_REGISTERED)
|
||||
unregister_netdev(port->ndev);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue