From 2b46fea4000c064e2b13dc100c20b03a5a94f7b3 Mon Sep 17 00:00:00 2001 From: muthuku Date: Tue, 7 Apr 2026 06:28:14 +0000 Subject: [PATCH 1/4] added version c heck for CSCwd37387 --- aci-preupgrade-validation-script.py | 6 ++-- .../test_llfc_susceptibility_check.py | 28 ++++++++++++++----- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/aci-preupgrade-validation-script.py b/aci-preupgrade-validation-script.py index f29c66b..c7b6823 100644 --- a/aci-preupgrade-validation-script.py +++ b/aci-preupgrade-validation-script.py @@ -3889,9 +3889,6 @@ def llfc_susceptibility_check(cversion, tversion, vpc_node_ids, **kwargs): recommended_action = 'Manually change Peer devices Transmit(send) Flow Control to off prior to switch Upgrade' doc_url = 'https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvo27498' - if not tversion: - return Result(result=MANUAL, msg=TVER_MISSING) - if not vpc_node_ids: return Result(result=PASS, msg="No VPC Nodes found. Not susceptible.") @@ -3900,7 +3897,8 @@ def llfc_susceptibility_check(cversion, tversion, vpc_node_ids, **kwargs): sx_affected = True # Check for Copper 1000base-T, CSCvj67507 fixed by CSCwd37387 - if cversion.older_than("4.1(1i)") and tversion.newer_than("4.1(1h)") and tversion.older_than("5.2(7f)"): + if ((cversion.older_than("4.1(1i)") or cversion.same_as("4.1(1i)")) and tversion.older_than("5.2(7f)") and tversion.newer_than("4.0(1h")) or (cversion.older_than("5.2(7f)") and tversion.newer_than("5.2(7f)") + or (tversion.older_than("5.2(7f)") and cversion.same_as(tversion))): t_affected = True if sx_affected or t_affected: diff --git a/tests/checks/llfc_susceptibility_check/test_llfc_susceptibility_check.py b/tests/checks/llfc_susceptibility_check/test_llfc_susceptibility_check.py index eb90593..d7f77b9 100644 --- a/tests/checks/llfc_susceptibility_check/test_llfc_susceptibility_check.py +++ b/tests/checks/llfc_susceptibility_check/test_llfc_susceptibility_check.py @@ -18,6 +18,27 @@ @pytest.mark.parametrize( "icurl_outputs, cversion, tversion, vpc_node_ids, expected_result", [ + ( + {ethpmFcots: read_data(dir, "ethpmFcot.json")}, + "5.2(5c)", + "6.1(5e)", + ["101", "103", "204", "206"], + script.MANUAL, + ), + ( + {ethpmFcots: read_data(dir, "ethpmFcot.json")}, + "4.1(1i)", + "5.2(2a)", + ["101", "103", "204", "206"], + script.MANUAL, + ), + ( + {ethpmFcots: read_data(dir, "ethpmFcot.json")}, + "5.2(7f)", + "6.1(5c)", + ["101", "103", "204", "206"], + script.PASS, + ), ( {ethpmFcots: read_data(dir, "ethpmFcot.json")}, "4.2(1b)", @@ -53,13 +74,6 @@ ["101", "103", "204", "206"], script.PASS, ), - ( - {ethpmFcots: read_data(dir, "ethpmFcot.json")}, - "5.2(1a)", - None, - ["101", "103", "204", "206"], - script.MANUAL, - ), ( {ethpmFcots: read_data(dir, "ethpmFcot.json")}, "4.1(1a)", From 3174b1fd07ebd76bd684d486b327afa78b2d1cbd Mon Sep 17 00:00:00 2001 From: muthuku Date: Fri, 10 Apr 2026 05:13:39 +0000 Subject: [PATCH 2/4] updated document link --- aci-preupgrade-validation-script.py | 2 +- docs/docs/validations.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/aci-preupgrade-validation-script.py b/aci-preupgrade-validation-script.py index a5fbdac..70558ad 100644 --- a/aci-preupgrade-validation-script.py +++ b/aci-preupgrade-validation-script.py @@ -3915,7 +3915,7 @@ def llfc_susceptibility_check(cversion, tversion, vpc_node_ids, **kwargs): data = [] sx_affected = t_affected = False recommended_action = 'Manually change Peer devices Transmit(send) Flow Control to off prior to switch Upgrade' - doc_url = 'https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvo27498' + doc_url = 'https://datacenter.github.io/ACI-Pre-Upgrade-Validation-Script/validations/#link-level-flow-control' if not vpc_node_ids: return Result(result=PASS, msg="No VPC Nodes found. Not susceptible.") diff --git a/docs/docs/validations.md b/docs/docs/validations.md index 49fe535..ce26d4b 100644 --- a/docs/docs/validations.md +++ b/docs/docs/validations.md @@ -2389,11 +2389,11 @@ To avoid this issue, change the `collectorLocation` type to `none` through the A ### Link Level Flow Control -Due to the defect CSCvo27498, after upgrade of first ACI leaf switch in a VPC pair to newer 15.x version from older 13.x version, downstream VPC might be down due to `vpc port channel mis-config due to vpc links in the 2 switches connected to different partners` even though they are connected to same device. +Due to the defect CSCvo27498, after upgrade of first ACI leaf switch in a VPC pair to newer 15.2.7f version from older 14.x version, downstream VPC might be down due to `vpc port channel mis-config due to vpc links in the 2 switches connected to different partners` even though they are connected to same device. By default Link level Flow control is off in ACI but in older code, the ACI software was incorrectly signalling far end device to enable transmit flow control. if far end device transmit(send) flow control in auto or desirable mode, it will enable transmit flow control. -After the first switch in VPC pair is upgraded to newer 15.x code, the incorrect flow control signalling is fixed. But due to mismatched software versions in ACI during upgrade, the far end device port-channel member interfaces will end up with mismatched send flow control. When this happens. they could send a different LACP operational key causing the ACI leaf to interpret that it is connected to different partners. +After the first switch in VPC pair is upgraded to 15.2.7f or higher code, the incorrect flow control signalling is fixed. But due to mismatched software versions in ACI during upgrade, the far end device port-channel member interfaces will end up with mismatched send flow control. When this happens. they could send a different LACP operational key causing the ACI leaf to interpret that it is connected to different partners. The script checks if the version is susceptible to the default along with the specific 1G SFPs that are affected by the defect. From fea3517db11644960e4c161ee8c55ec426264f94 Mon Sep 17 00:00:00 2001 From: muthuku Date: Fri, 10 Apr 2026 05:35:38 +0000 Subject: [PATCH 3/4] updated validation.md --- docs/docs/validations.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/docs/validations.md b/docs/docs/validations.md index ce26d4b..0bcede0 100644 --- a/docs/docs/validations.md +++ b/docs/docs/validations.md @@ -2389,7 +2389,7 @@ To avoid this issue, change the `collectorLocation` type to `none` through the A ### Link Level Flow Control -Due to the defect CSCvo27498, after upgrade of first ACI leaf switch in a VPC pair to newer 15.2.7f version from older 14.x version, downstream VPC might be down due to `vpc port channel mis-config due to vpc links in the 2 switches connected to different partners` even though they are connected to same device. +Due to the defect CSCvo27498[67], after upgrade of first ACI leaf switch in a VPC pair to newer 15.2.7f version from older 14.x version, downstream VPC might be down due to `vpc port channel mis-config due to vpc links in the 2 switches connected to different partners` even though they are connected to same device. By default Link level Flow control is off in ACI but in older code, the ACI software was incorrectly signalling far end device to enable transmit flow control. if far end device transmit(send) flow control in auto or desirable mode, it will enable transmit flow control. @@ -2820,3 +2820,4 @@ To avoid this issue, change the target version to another version. Or verify tha [64]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCwp64296 [65]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCws82819 [66]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCwr66848 +[67]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvo27498 From bd01f569749e8928d9f886c5b4aea49048b974b1 Mon Sep 17 00:00:00 2001 From: muthuku Date: Fri, 10 Apr 2026 10:32:11 +0000 Subject: [PATCH 4/4] updated validation.md document --- docs/docs/validations.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/docs/validations.md b/docs/docs/validations.md index 0bcede0..6d2b55d 100644 --- a/docs/docs/validations.md +++ b/docs/docs/validations.md @@ -2389,11 +2389,9 @@ To avoid this issue, change the `collectorLocation` type to `none` through the A ### Link Level Flow Control -Due to the defect CSCvo27498[67], after upgrade of first ACI leaf switch in a VPC pair to newer 15.2.7f version from older 14.x version, downstream VPC might be down due to `vpc port channel mis-config due to vpc links in the 2 switches connected to different partners` even though they are connected to same device. +Due to the defect CSCvo27498[67], after upgrade of first ACI leaf switch in a VPC pair to newer 15.2(7f) version, some of vpc member port on upgrading device may go down. By default Link level Flow control is off in ACI but in older code, the ACI software was incorrectly signalling far end device to enable transmit flow control. If far end device transmit(send) flow control in auto or desirable mode, it will enable transmit flow control. -By default Link level Flow control is off in ACI but in older code, the ACI software was incorrectly signalling far end device to enable transmit flow control. if far end device transmit(send) flow control in auto or desirable mode, it will enable transmit flow control. - -After the first switch in VPC pair is upgraded to 15.2.7f or higher code, the incorrect flow control signalling is fixed. But due to mismatched software versions in ACI during upgrade, the far end device port-channel member interfaces will end up with mismatched send flow control. When this happens. they could send a different LACP operational key causing the ACI leaf to interpret that it is connected to different partners. +After the first switch in VPC pair is upgraded to 15.2(7f) the incorrect flow control signalling is fixed. But due to mismatched software versions in ACI during upgrade, the far end device port-channel member interfaces will end up with mismatched send flow control. When this happens. they could send a different LACP operational key causing the ACI leaf to interpret that it is connected to different partners. The script checks if the version is susceptible to the default along with the specific 1G SFPs that are affected by the defect. @@ -2820,4 +2818,4 @@ To avoid this issue, change the target version to another version. Or verify tha [64]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCwp64296 [65]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCws82819 [66]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCwr66848 -[67]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvo27498 +[67]: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCvo27498 \ No newline at end of file