Skip to content

Commit c3dace8

Browse files
committed
QEMU: Enable xsaveopt cpu feature
1 parent 69df679 commit c3dace8

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

.github/workflows/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ jobs:
5757
- name: Test dev profile
5858
run: |
5959
qemu-system-x86_64 -display none -smp 1 -m 128M -serial stdio \
60-
-cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr,rdrand \
60+
-cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr,rdrand \
6161
-kernel loader/target/x86_64-unknown-hermit-loader/release/rusty-loader \
6262
-initrd target/x86_64-unknown-hermit/debug/rusty_demo
6363
- name: Build release profile
@@ -66,7 +66,7 @@ jobs:
6666
- name: Test release profile
6767
run: |
6868
qemu-system-x86_64 -display none -smp 1 -m 128M -serial stdio \
69-
-cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr,rdrand \
69+
-cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr,rdrand \
7070
-kernel loader/target/x86_64-unknown-hermit-loader/release/rusty-loader \
7171
-initrd target/x86_64-unknown-hermit/release/rusty_demo
7272
- name: Build httpd with DHCP support

.gitlab-ci.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,10 @@ test:qemu:
8787
script:
8888
- lscpu
8989
- kvm-ok
90-
- qemu-system-x86_64 -display none -smp 1 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/debug/rusty-loader -initrd target/x86_64-unknown-hermit/debug/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr,rdrand -enable-kvm
91-
- qemu-system-x86_64 -display none -smp 2 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/debug/rusty-loader -initrd target/x86_64-unknown-hermit/debug/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr,rdrand -enable-kvm
92-
- qemu-system-x86_64 -display none -smp 1 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/release/rusty-loader -initrd target/x86_64-unknown-hermit/release/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr,rdrand -enable-kvm
93-
- qemu-system-x86_64 -display none -smp 2 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/release/rusty-loader -initrd target/x86_64-unknown-hermit/release/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr,rdrand -enable-kvm
90+
- qemu-system-x86_64 -display none -smp 1 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/debug/rusty-loader -initrd target/x86_64-unknown-hermit/debug/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr,rdrand -enable-kvm
91+
- qemu-system-x86_64 -display none -smp 2 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/debug/rusty-loader -initrd target/x86_64-unknown-hermit/debug/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr,rdrand -enable-kvm
92+
- qemu-system-x86_64 -display none -smp 1 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/release/rusty-loader -initrd target/x86_64-unknown-hermit/release/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr,rdrand -enable-kvm
93+
- qemu-system-x86_64 -display none -smp 2 -m 64M -serial stdio -kernel loader/target/x86_64-unknown-hermit-loader/release/rusty-loader -initrd target/x86_64-unknown-hermit/release/rusty_demo -cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr,rdrand -enable-kvm
9494
tags:
9595
- privileged
9696

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ Afterwards, the loader is stored in `target/x86_64-unknown-hermit-loader/debug/`
137137
As final step, the unikernel application `app` can be booted with following command:
138138

139139
```bash
140-
qemu-system-x86_64 -display none -smp 1 -m 64M -serial stdio -kernel path_to_loader/rusty-loader -initrd path_to_app/app -cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr
140+
qemu-system-x86_64 -display none -smp 1 -m 64M -serial stdio -kernel path_to_loader/rusty-loader -initrd path_to_app/app -cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr
141141
```
142142

143143
It is important to enable the processor features _fsgsbase_ and _rdtscp_ because it is a prerequisite to boot RustyHermit.
@@ -202,7 +202,7 @@ Currently, RustyHermit does only support network interfaces through [virtio](htt
202202
To use it, you have to start RustyHermit in Qemu with following command:
203203

204204
```bash
205-
$ qemu-system-x86_64 -cpu qemu64,apic,fsgsbase,rdtscp,xsave,fxsr \
205+
$ qemu-system-x86_64 -cpu qemu64,apic,fsgsbase,rdtscp,xsave,xsaveopt,fxsr \
206206
-enable-kvm -display none -smp 1 -m 1G -serial stdio \
207207
-kernel path_to_loader/rusty-loader \
208208
-initrd path_to_app/app \

0 commit comments

Comments
 (0)