mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-23 01:31:30 +03:00
nvethernet: Handle error conditions in macsec
1. Track MAC state and return error if MAC is down 2. Protect ref_count read with mutex to avoid race condition 3. free macsec priv memory on rmmod Bug 3309824 Change-Id: Ia6f1cee0399c294b603b10a3ce8a3407060578d3 Signed-off-by: Mahesh Patil <maheshp@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2548464 Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com> Reviewed-by: Bhadram Varka <vbhadram@nvidia.com> Reviewed-by: Srinivas Ramachandran <srinivasra@nvidia.com> Reviewed-by: Ashutosh Jha <ajha@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit
This commit is contained in:
committed by
Revanth Kumar Uppala
parent
2811efc501
commit
c1cd386acd
@@ -2512,17 +2512,6 @@ static int ether_open(struct net_device *dev)
|
||||
/* Enable napi before requesting irq to be ready to handle it */
|
||||
ether_napi_enable(pdata);
|
||||
|
||||
#ifdef MACSEC_SUPPORT
|
||||
#ifdef DEBUG_MACSEC
|
||||
ret = macsec_open(pdata->macsec_pdata);
|
||||
if (ret < 0) {
|
||||
dev_err(&dev->dev, "%s: failed to open macsec with reason %d\n",
|
||||
__func__, ret);
|
||||
goto err_macsec_open;
|
||||
}
|
||||
#endif
|
||||
#endif /* MACSEC_SUPPORT */
|
||||
|
||||
/* request tx/rx/common irq */
|
||||
ret = ether_request_irqs(pdata);
|
||||
if (ret < 0) {
|
||||
@@ -2555,11 +2544,6 @@ static int ether_open(struct net_device *dev)
|
||||
|
||||
return ret;
|
||||
|
||||
#ifdef MACSEC_SUPPORT
|
||||
#ifdef DEBUG_MACSEC
|
||||
err_macsec_open:
|
||||
#endif
|
||||
#endif /* MACSEC_SUPPORT */
|
||||
err_r_irq:
|
||||
ether_napi_disable(pdata);
|
||||
ether_ptp_remove(pdata);
|
||||
|
||||
Reference in New Issue
Block a user