The branch stable/14 has been updated by np:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=610ff48406ef779922298e3b9759fb0abb57e0eb

commit 610ff48406ef779922298e3b9759fb0abb57e0eb
Author:     Navdeep Parhar <n...@freebsd.org>
AuthorDate: 2024-09-11 07:11:13 +0000
Commit:     Navdeep Parhar <n...@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

Reply via email to