Skip to content

Commit 5ebe998

Browse files
committed
Reset more vcpu state on snapshot restore
Signed-off-by: Ludvig Liljenberg <4257730+ludfjig@users.noreply.github.com>
1 parent 7ca0a78 commit 5ebe998

File tree

13 files changed

+1413
-33
lines changed

13 files changed

+1413
-33
lines changed

.github/workflows/ValidatePullRequest.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ jobs:
6767
- docs-pr
6868
- build-guests
6969
strategy:
70-
fail-fast: true
70+
fail-fast: false
7171
matrix:
7272
hypervisor: [hyperv, 'hyperv-ws2025', mshv3, kvm]
7373
cpu: [amd, intel]

Cargo.lock

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/hyperlight_host/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ mshv-ioctls = { version = "0.6", optional = true}
8484
uuid = { version = "1.20.0", features = ["v4"] }
8585
signal-hook-registry = "1.4.8"
8686
serde = "1.0"
87+
iced-x86 = { version = "1.21", default-features = false, features = ["std", "code_asm"] }
8788
proptest = "1.9.0"
8889
tempfile = "3.24.0"
8990
crossbeam-queue = "0.3.12"

src/hyperlight_host/src/error.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,11 @@ impl HyperlightError {
326326
| HyperlightError::StackOverflow()
327327
| HyperlightError::MemoryAccessViolation(_, _, _)
328328
| HyperlightError::SnapshotSizeMismatch(_, _)
329-
| HyperlightError::MemoryRegionSizeMismatch(_, _, _) => true,
329+
| HyperlightError::MemoryRegionSizeMismatch(_, _, _)
330+
// HyperlightVmError::Restore doesn't technically need to poison the sandbox,
331+
// because if MultiUseSandbox::restore() fails, the sandbox is still in the same
332+
// poisoned state as before.
333+
| HyperlightError::HyperlightVmError(HyperlightVmError::Restore(_)) => true,
330334

331335
// HyperlightVmError::DispatchGuestCall may poison the sandbox
332336
HyperlightError::HyperlightVmError(HyperlightVmError::DispatchGuestCall(e)) => {

0 commit comments

Comments
 (0)