Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide a boot parameter to delay startup by some seconds #1468

Closed
hannesm opened this issue Sep 19, 2023 · 3 comments · Fixed by ocaml/opam-repository#24815
Closed

Provide a boot parameter to delay startup by some seconds #1468

hannesm opened this issue Sep 19, 2023 · 3 comments · Fixed by ocaml/opam-repository#24815

Comments

@hannesm
Copy link
Member

hannesm commented Sep 19, 2023

Tunrs out, some backends (e.g. muen) need some more time to setup the virtual network card. A configurable delay as boot parameter would be excellent in such a use case.

@palainp
Copy link
Member

palainp commented Sep 21, 2023

Thanks for the PR, but I wonder, as muen uses solo5 as tender (but maybe at some point this PR will be used for other targets, and my comment will be irrelevant :) ), wouldn't it be possible (hmm maybe it's harder or adds to much complexity :( ) to tackle this issue inside solo5 (e.g. solo5/bindings/muen/start.c)?

@hannesm
Copy link
Member Author

hannesm commented Sep 22, 2023

The question is: what do we want to achieve? Of course, we can implement a lot in a specific target. But this makes the whole system differently behaving depending on the target.

In addition, implementing this in solo5 would mean that the boot arguments need to be passed to solo5 and decoded there.

So, I'm in favour of target-independent solutions -- and while there already happens a lot of stuff before the delay is conducted (such as memory setup, OCaml runtime startup, ...) -- the underlying issue (waiting for the network device to be ready) is handled by the PR provided. :)

@palainp
Copy link
Member

palainp commented Sep 22, 2023

That is perfectly fine for me, thank you!

@hannesm hannesm closed this as completed Sep 22, 2023
hannesm added a commit to hannesm/opam-repository that referenced this issue Nov 20, 2023
… (4.4.1)

CHANGES:

- Document exit codes in `--help` (mirage/mirage#1485 @hannesm)
- Avoid dependency on environment variable (removing MIRAGE_LOGS mirage/mirage#1484 @hannesm)
- BUGFIX: dune.config mark "dist" as data-only-dir to allow config.ml being
  compiled (mirage/mirage#1475 @memst)
- Allow git 3.14 (mirage/mirage#1474 @hannesm)
- Default to best-fit allocation (mirage/mirage#1473 @hannesm)
- FEATURE: Add a key "--delay" to all unikernels (mirage/mirage#1472 @hannesm, fixes mirage/mirage#1468)
- Fix Unix target dune rule (add a deps) (mirage/mirage#1469 @hannesm)
- Optionally pass tcp in direct_stackv4v6, static_ipv4v6, generic_stackv4v6
  (mirage/mirage#1467 @hannesm)
- FEATURE: Support mirage version indication in first line of config.ml:
  (* mirage >= 2.3.4 & < 5.0.0 *) (mirage/mirage#1466 @hannesm, fixes mirage/mirage#1381)
- Use \033 instead of \e in generated Makefile (fixes the output on non-Linux
  systems mirage/mirage#1464 @hannesm)
- Adapt to mirage-logs 2.0.0 (mirage/mirage#1460 @hannesm)
- Allow version 0.8.0 of solo5 (mirage/mirage#1432 mirage/mirage#1490 @hannesm @palainp)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants