Skip to content

pier: initialize drivers after double boot protection#847

Merged
pkova merged 3 commits intodevelopfrom
pkova/double-boot-lifecycle
Jul 14, 2025
Merged

pier: initialize drivers after double boot protection#847
pkova merged 3 commits intodevelopfrom
pkova/double-boot-lifecycle

Conversation

@pkova
Copy link
Copy Markdown
Collaborator

@pkova pkova commented Jul 11, 2025

The original double boot protection code was written such that it assumed to be executing synchronously before any events get processed. This assumption proved to be incorrect since we were initializing the drivers before executing the ames /boot scry.

It is somewhat unclear whether this mattered in practice. We discovered this by investigating a ship that was peculiarly slow to to boot, but the root cause for the slowness was the sponsoring galaxy having trouble.

We were also previously running the double boot protection check when doing the -X scry which is certainly unnecessary.

The original double boot protection code was written such that it assumed to be
executing synchronously before any events get processed. This assumption proved
to be incorrect since we were initializing the drivers before executing the ames
/boot scry.

It is somewhat unclear whether this mattered in practice. We discovered this by
investigating a ship that was peculiarly slow to to boot, but the root cause for
the slowness was the sponsoring galaxy having trouble.

We were also previously running the double boot protection check when doing the -X scry
which is certainly unnecessary.
@pkova pkova requested a review from a team as a code owner July 11, 2025 14:04
pkova added 2 commits July 14, 2025 16:12
See the parent commit for context. While the solution implemented in the parent
commit works, it is nasty and fragile because it relies on a halfway initialized
u3_pier. This refactors the solution to use the same mechanisms as the %wyrd
version negotiation, happening before _pier_work_init instead of in the middle
of it.
@pkova pkova merged commit 4713e0a into develop Jul 14, 2025
2 checks passed
@pkova pkova deleted the pkova/double-boot-lifecycle branch July 14, 2025 15:57
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