-
Notifications
You must be signed in to change notification settings - Fork 134
Bring back panic info to abort #489
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
Conversation
0dc0bbf
to
f96c34f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks reasonable but have some questions. Also I'm not sure thread_local is right for this. What happens when two vms are running on the same thread (not currenly possible but will be very soon)?
8729e15
to
6dec279
Compare
Removed thread_local buffer and moved buffer to |
ce71264
to
88df03a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, but old file is added back
No. &[0, 0xFF] is a single exit. Adding this beforehand, will cause the guest to exit earlier and not get back to do the other outb. |
88df03a
to
6f4124a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't take a super detailed look at this yet, but I'm somewhat confused by the approach.
HostFunctionDefinitions and GuestErrorData were unused. Signed-off-by: danbugs <[email protected]>
…details git2 uses deep C bindings to libgit2 that might not be available on every target, we should allow disabling logging build details. Signed-off-by: danbugs <[email protected]>
6f4124a
to
893108d
Compare
…panic info to abort In hyperlight-dev#474, I removed the guest panic context region. With that, aborting was split into two steps: (1) printing panic info w/ debug_print, and (2) exiting w/ abort and codes. This PR addresses feedback I got in hyperlight-dev#474 to join the operations by buffering string output when aborting. This PR also cleans up our manual chunking logic w/ outb and leverages out32 w/ length prefixing to minimize VM exits. Abort detects it should finishing buffering by a terminator code (0xFF). Edited tests to check for panic message in aborts as they were prior to hyperlight-dev#474 merged. Signed-off-by: danbugs <[email protected]>
893108d
to
23dcf47
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree this can be improved, but its on the unhappy path, lets add an issue for the improvements that Lucy suggested and get this done after you make the other changes, lets make sure if gets in v0.5.0 and mark the issue as such
In #474, I removed the guest panic context region. With that, aborting was split into two steps:
(1) printing panic info w/ debug_print, and
(2) exiting w/ abort and codes.
This PR addresses feedback I got in #474 to join the operations by buffering string output when aborting.
This PR also cleans up our manual chunking logic w/ outb and leverages out8, out16, and out32 to minimize VM exits. Abort detects it should finishing buffering by a terminator code (0xFF).
Edited tests to check for panic message in aborts as they were prior to #474 merged.
This PR can be reviewed commit by commit. I also made some other minor changes like: