oxidecomputer / oxidecomputer/propolis

propolis-standalone should be able to start without a serial console consumer

Open
#562 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
270
Forks
42
Avg merge
4d 5h
Merged PRs (30d)
6

Description

At present when you start propolis-standalone, the VM will not begin executing until a process has connected to the ttya socket that is created in the current directory.

Waiting before booting is often critical when you want to catch the boot loader or do some early boot debugging. At other times, though, such as while running automated tests, it would be good to be able to skip the wait and just begin booting.

Things that it might be nice to be able to configure in the file related to this:

  • the path to the socket, which appears hard-coded to ttya in the current directory today
  • whether or not to hold boot waiting for a consumer on the socket
  • if not waiting, what should we do with data that arrives while no consumer is connected? buffer and pause, drop, etc?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the propolis-standalone startup path and configuration handling, then trace where creation of the ttya socket blocks VM execution. Clarify the socket path, wait behavior, and handling of output without a consumer with maintainers; done means these behaviors are configurable and verified by appropriate tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.