Skip to content

ps2client: add host-only reset recovery observation - #35

Merged
fjtrujy merged 1 commit into
masterfrom
feat/verified-reset-host-only
Nov 3, 2026
Merged

fjtrujy merged 1 commit into
masterfrom
feat/verified-reset-host-only

Conversation

@fjtrujy

@fjtrujy fjtrujy commented Nov 3, 2026

Copy link
Copy Markdown
Member

Summary

  • Add an opt-in host-only resetcheck command without changing the existing reset command or PS2Link wire protocol.
  • Require a successful EE/IOP host: round trip before sending a single UDP reset; fail closed when the EE is unreachable.
  • Observe an offline/online round-trip transition within a bounded timeout (default 10 seconds), without claiming this proves a reset.
  • Run each probe in a separate host client process to avoid changing existing socket and thread lifecycles.

Why

Legacy ps2client reset exits successfully as soon as the UDP send succeeds. During EE level-2 exception hangs, the IOP cannot get the EE command thread to execute the reset, yet the host still reports success.

Validation

  • Clean native build with -Wall -Wextra -Werror.
  • make check: simulated outage/recovery, no outage, permanent outage, unreachable EE with zero reset packets, and invalid syntax.
  • Windows smoke tests and Makefile integration included; CI validates native Windows builds.

Compatibility and limitations

  • No PS2Link ELF or IRX update is required; uses existing protocol.
  • A fast reset can evade outage sampling. Unrelated network loss/recovery can resemble reboot. The command reports only the observed round-trip state, not a verified EE reset.
  • This does not provide out-of-band recovery for a stuck EE.
  • Hardware reset is never performed by automated tests.

@fjtrujy
fjtrujy force-pushed the feat/verified-reset-host-only branch from b79a913 to 23e56d0 Compare November 3, 2026 15:56
@fjtrujy
fjtrujy merged commit e6aad40 into master Nov 3, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant