git: 610ff48406ef - stable/14 - cxgbe/t4_tom: Demote STALE L2 table entries to RESOLVING in uld_stop.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 21 Oct 2024 18:39:28 UTC
The branch stable/14 has been updated by np:
URL: https://cgit.FreeBSD.org/src/commit/?id=610ff48406ef779922298e3b9759fb0abb57e0eb
commit 610ff48406ef779922298e3b9759fb0abb57e0eb
Author: Navdeep Parhar <np@FreeBSD.org>
AuthorDate: 2024-09-11 07:11:13 +0000
Commit: Navdeep Parhar <np@FreeBSD.org>
CommitDate: 2024-10-21 17:09:52 +0000
cxgbe/t4_tom: Demote STALE L2 table entries to RESOLVING in uld_stop.
The STALE state means the L2T entry is valid in hardware but needs to be
refreshed (ARP/NDP) in software. But stop/suspend wipes the hardware
L2T and STALE entries need to be updated just like VALID entries to match
actual hardware state.
Fixes: c1c524852f62 cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM.
Sponsored by: Chelsio Communications
(cherry picked from commit 171e57967b3e53f0fb48116df5003ce17163295c)
---
sys/dev/cxgbe/tom/t4_tom.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c
index 9b1dcf304196..356ac7edc134 100644
--- a/sys/dev/cxgbe/tom/t4_tom.c
+++ b/sys/dev/cxgbe/tom/t4_tom.c
@@ -2115,7 +2115,7 @@ stop_tom_l2t(struct adapter *sc)
for (i = 0; i < d->l2t_size; i++) {
e = &d->l2tab[i];
mtx_lock(&e->lock);
- if (e->state == L2T_STATE_VALID)
+ if (e->state == L2T_STATE_VALID || e->state == L2T_STATE_STALE)
e->state = L2T_STATE_RESOLVING;
/*
* stop_atids is going to clean up _all_ atids in use, including