We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent ff1d6db commit 3ba401eCopy full SHA for 3ba401e
3 files changed
src/hyperlight_host/src/hypervisor/hyperlight_vm.rs
@@ -623,6 +623,10 @@ impl HyperlightVm {
623
idtr: sregs.idt,
624
tr: sregs.tr,
625
cs: sregs.cs,
626
+ ds: sregs.ds,
627
+ es: sregs.es,
628
+ fs: sregs.fs,
629
+ gs: sregs.gs,
630
ss: sregs.ss,
631
})
632
}
@@ -948,6 +952,10 @@ impl HyperlightVm {
948
952
sregs.idt = _segment_state.idtr;
949
953
sregs.tr = _segment_state.tr;
950
954
sregs.cs = _segment_state.cs;
955
+ sregs.ds = _segment_state.ds;
956
+ sregs.es = _segment_state.es;
957
+ sregs.fs = _segment_state.fs;
958
+ sregs.gs = _segment_state.gs;
951
959
sregs.ss = _segment_state.ss;
960
self.vm.set_sregs(&sregs)?;
961
@@ -1673,6 +1681,10 @@ mod tests {
1673
1681
idtr: CommonTableRegister::default(),
1674
1682
tr: CommonSegmentRegister::default(),
1675
1683
cs: CommonSegmentRegister::default(),
1684
+ ds: CommonSegmentRegister::default(),
1685
+ es: CommonSegmentRegister::default(),
1686
+ fs: CommonSegmentRegister::default(),
1687
+ gs: CommonSegmentRegister::default(),
1676
1688
ss: CommonSegmentRegister::default(),
1677
1689
1678
1690
src/hyperlight_host/src/sandbox/snapshot.rs
@@ -41,6 +41,10 @@ pub(crate) struct GuestSegmentState {
41
pub(crate) idtr: CommonTableRegister,
42
pub(crate) tr: CommonSegmentRegister,
43
pub(crate) cs: CommonSegmentRegister,
44
+ pub(crate) ds: CommonSegmentRegister,
45
+ pub(crate) es: CommonSegmentRegister,
46
+ pub(crate) fs: CommonSegmentRegister,
47
+ pub(crate) gs: CommonSegmentRegister,
48
pub(crate) ss: CommonSegmentRegister,
49
50
@@ -601,6 +605,10 @@ mod tests {
601
605
602
606
603
607
608
609
610
611
604
612
613
614
src/hyperlight_host/tests/integration_test.rs
@@ -234,7 +234,7 @@ fn interrupt_same_thread_no_barrier() {
234
// Only allow successful calls or interrupted.
235
// The call can be successful in case the call is finished before kill() is called.
236
Ok(_) | Err(HyperlightError::ExecutionCanceledByHost()) => {}
237
- _ => panic!("Unexpected return"),
+ other => panic!("Unexpected return: {:?}", other),
238
};
239
if sbox2.poisoned() {
240
sbox2.restore(snapshot2.clone()).unwrap();
0 commit comments