aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Bowling <kbowling@FreeBSD.org>2026-08-10 15:09:56 +0000
committerKevin Bowling <kbowling@FreeBSD.org>2026-08-10 16:33:12 +0000
commitc410551b9feadf9b65f920fd25714fcda8299a56 (patch)
tree6cffaca8ca9e751f1b521e85ec6a563780e1cb66
parentbe3e1068ea8699fb719691453899ca20a601fe1d (diff)
ixgbe: Compare flow control against requested mode
The flow-control sysctl represents the configured policy, while current_mode is the mode negotiated with the link partner. Comparing a new request with current_mode can needlessly reprogram an unchanged policy or skip a requested policy change that happens to match the current negotiation result. Compare with requested_mode before deciding that no update is needed. MFC after: 2 weeks
-rw-r--r--sys/dev/ixgbe/if_ix.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c
index 9a998b03dbd7..49b383518df4 100644
--- a/sys/dev/ixgbe/if_ix.c
+++ b/sys/dev/ixgbe/if_ix.c
@@ -5264,7 +5264,7 @@ ixgbe_sysctl_flowcntl(SYSCTL_HANDLER_ARGS)
/* Serialize the live register update with the administrative task. */
ctx_lock = iflib_ctx_lock_get(sc->ctx);
sx_xlock(ctx_lock);
- if (fc == sc->hw.fc.current_mode)
+ if (fc == sc->hw.fc.requested_mode)
error = 0;
else
error = ixgbe_set_flowcntl(sc, fc);