Message ID | 20230426062528.20575-6-gakula@marvell.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 699af748c61574125d269db260dabbe20436d74e |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | Macsec fixes for CN10KB | expand |
Context | Check | Description |
---|---|---|
netdev/series_format | success | Posting correctly formatted |
netdev/tree_selection | success | Clearly marked for net |
netdev/fixes_present | success | Fixes tag present in non-next series |
netdev/header_inline | success | No static functions without inline keyword in header files |
netdev/build_32bit | success | Errors and warnings before: 18 this patch: 18 |
netdev/cc_maintainers | success | CCed 9 of 9 maintainers |
netdev/build_clang | success | Errors and warnings before: 18 this patch: 18 |
netdev/verify_signedoff | success | Signed-off-by tag matches author and committer |
netdev/deprecated_api | success | None detected |
netdev/check_selftest | success | No net selftest shell script |
netdev/verify_fixes | success | Fixes tag looks correct |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 22 this patch: 22 |
netdev/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 15 lines checked |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/source_inline | success | Was 0 now: 0 |
On Wed, Apr 26, 2023 at 11:55:24AM +0530, Geetha sowjanya wrote: > From: Subbaraya Sundeep <sbhatta@marvell.com> > > When system is rebooted after creating macsec interface > below NULL pointer dereference crashes occurred. This > patch fixes those crashes by using correct order of teardown > > [ 3324.406942] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 > [ 3324.415726] Mem abort info: > [ 3324.418510] ESR = 0x96000006 > [ 3324.421557] EC = 0x25: DABT (current EL), IL = 32 bits > [ 3324.426865] SET = 0, FnV = 0 > [ 3324.429913] EA = 0, S1PTW = 0 > [ 3324.433047] Data abort info: > [ 3324.435921] ISV = 0, ISS = 0x00000006 > [ 3324.439748] CM = 0, WnR = 0 > .... > [ 3324.575915] Call trace: > [ 3324.578353] cn10k_mdo_del_secy+0x24/0x180 > [ 3324.582440] macsec_common_dellink+0xec/0x120 > [ 3324.586788] macsec_notify+0x17c/0x1c0 > [ 3324.590529] raw_notifier_call_chain+0x50/0x70 > [ 3324.594965] call_netdevice_notifiers_info+0x34/0x7c > [ 3324.599921] rollback_registered_many+0x354/0x5bc > [ 3324.604616] unregister_netdevice_queue+0x88/0x10c > [ 3324.609399] unregister_netdev+0x20/0x30 > [ 3324.613313] otx2_remove+0x8c/0x310 > [ 3324.616794] pci_device_shutdown+0x30/0x70 > [ 3324.620882] device_shutdown+0x11c/0x204 > > [ 966.664930] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 > [ 966.673712] Mem abort info: > [ 966.676497] ESR = 0x96000006 > [ 966.679543] EC = 0x25: DABT (current EL), IL = 32 bits > [ 966.684848] SET = 0, FnV = 0 > [ 966.687895] EA = 0, S1PTW = 0 > [ 966.691028] Data abort info: > [ 966.693900] ISV = 0, ISS = 0x00000006 > [ 966.697729] CM = 0, WnR = 0 > [ 966.833467] Call trace: > [ 966.835904] cn10k_mdo_stop+0x20/0xa0 > [ 966.839557] macsec_dev_stop+0xe8/0x11c > [ 966.843384] __dev_close_many+0xbc/0x140 > [ 966.847298] dev_close_many+0x84/0x120 > [ 966.851039] rollback_registered_many+0x114/0x5bc > [ 966.855735] unregister_netdevice_many.part.0+0x14/0xa0 > [ 966.860952] unregister_netdevice_many+0x18/0x24 > [ 966.865560] macsec_notify+0x1ac/0x1c0 > [ 966.869303] raw_notifier_call_chain+0x50/0x70 > [ 966.873738] call_netdevice_notifiers_info+0x34/0x7c > [ 966.878694] rollback_registered_many+0x354/0x5bc > [ 966.883390] unregister_netdevice_queue+0x88/0x10c > [ 966.888173] unregister_netdev+0x20/0x30 > [ 966.892090] otx2_remove+0x8c/0x310 > [ 966.895571] pci_device_shutdown+0x30/0x70 > [ 966.899660] device_shutdown+0x11c/0x204 > [ 966.903574] __do_sys_reboot+0x208/0x290 > [ 966.907487] __arm64_sys_reboot+0x20/0x30 > [ 966.911489] el0_svc_handler+0x80/0x1c0 > [ 966.915316] el0_svc+0x8/0x180 > [ 966.918362] Code: f9400000 f9400a64 91220014 f94b3403 (f9400060) > [ 966.924448] ---[ end trace 341778e799c3d8d7 ]--- > > Fixes: c54ffc73601c ("octeontx2-pf: mcs: Introduce MACSEC hardware offloading") > Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com> > Signed-off-by: Sunil Goutham <sgoutham@marvell.com> > Signed-off-by: Geetha sowjanya <gakula@marvell.com> > --- > drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > Thanks, Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c index 179433d0a54a..a75c944cc739 100644 --- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c +++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c @@ -3073,8 +3073,6 @@ static void otx2_remove(struct pci_dev *pdev) otx2_config_pause_frm(pf); } - cn10k_mcs_free(pf); - #ifdef CONFIG_DCB /* Disable PFC config */ if (pf->pfc_en) { @@ -3088,6 +3086,7 @@ static void otx2_remove(struct pci_dev *pdev) otx2_unregister_dl(pf); unregister_netdev(netdev); + cn10k_mcs_free(pf); otx2_sriov_disable(pf->pdev); otx2_sriov_vfcfg_cleanup(pf); if (pf->otx2_wq)