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

Add stepping ability #2483

Closed
3 tasks done
LegNeato opened this issue Mar 5, 2021 · 2 comments
Closed
3 tasks done

Add stepping ability #2483

LegNeato opened this issue Mar 5, 2021 · 2 comments

Comments

@LegNeato
Copy link

LegNeato commented Mar 5, 2021

Feature Request

Often you'll want to pause a VM and then run it for a set amount of wall clock time, cpu time, or cpu instructions and then pause it again.

Describe the desired solution

New api, which allows a stopped / paused vm to run for a set number of cycles or time and then stop / pause automatically. Perhaps an optional callback should be used so a supervisor process doesn't have to poll the vm state to see when it is done stepping.

Describe possible alternatives

  • One can call pause, resume, and then pause quickly to approximate stepping. But it would not be deterministic.

Additional info

I'm willing to put up a PR if someone will mentor me.

Checks

  • Have you searched the Firecracker Issues database for similar requests?
  • Have you read all the existing relevant Firecracker documentation?
  • Have you read and understood Firecracker's core tenets?
@gbionescu
Copy link

Hi @LegNeato, thanks for your interest in Firecracker!

Could you describe a use case where this feature would be applicable?

While running for a set amount of time aka wall clock is possible even with the current implementation, the other options may not be easy to implement and we'd like to understand how this would fit in a real-life scenario.

Currently, there is an open PR on implementing GDB server in Firecracker, which allows you to step instruction by instruction.

@LegNeato
Copy link
Author

LegNeato commented Mar 5, 2021

Ah, gdb server is what I need! Thank you for the quick response.

@LegNeato LegNeato closed this as completed Mar 5, 2021
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

No branches or pull requests

2 participants