fix(health): give the LLDP phase a valid slot in the phase arrays

In HEALTH=1 builds health_phase(HEALTH_LLDP) used id 7 while ph_max[] and
ph_slow[] had HEALTH_PHASES = 6 entries. The LLDP checkpoint therefore
wrote one byte past ph_max (into the high byte of ph_slow[0]) and, when
the phase took two ticks or more, incremented two bytes past ph_slow
(dhcp_state.state and transaction_id on KP_9000_6XHML_X2).

Rename it HEALTH_PH_LLDP = 6, derive HEALTH_PHASES from it so the arrays
always cover the last phase, print an lldp line in "health" and document
it.

Fixes #658
This commit is contained in:
Andre Brait committed 2026-10-22 11:32:05 +02:00
1 parent c9e8403c6e
commit 7d7585fa6d
5 files changed
+9 -4

No files matched your search

+1 -1
View File
@@ -1203,7 +1203,7 @@ static void handle_tick(void)
lacp_timers();
health_phase(HEALTH_PH_STP);
lldp_tick();
health_phase(HEALTH_LLDP);
health_phase(HEALTH_PH_LLDP);
cabletest_tick();
}