diff --git a/src/proc.sh b/src/proc.sh index 94cfb49..069fddf 100644 --- a/src/proc.sh +++ b/src/proc.sh @@ -35,16 +35,11 @@ if [[ "$KVM" != [Nn]* ]]; then CPU_FEATURES="kvm=on" KVM_OPTS=",accel=kvm -enable-kvm" - if [[ "${BOOT_MODE,,}" == "windows" ]]; then - - CPU_FEATURES="$CPU_FEATURES,+hypervisor,+invtsc,l3-cache=on,migratable=no,hv_passthrough" - - fi - else KVM_OPTS="" CPU_FEATURES="" + MACHINE="$MACHINE,virtualization=on" if [[ "${CPU_MODEL,,}" == "host"* ]]; then @@ -57,10 +52,25 @@ else fi fi +if [[ "${BOOT_MODE,,}" == "windows" ]]; then + + [ -n "$CPU_FEATURES" ] && CPU_FEATURES="$CPU_FEATURES," + CPU_FEATURES="$CPU_FEATURES+hypervisor,+invtsc,l3-cache=on,migratable=no,hv_passthrough" + +fi + if [ -z "$CPU_FLAGS" ]; then - CPU_FLAGS="$CPU_MODEL,$CPU_FEATURES" + if [ -z "$CPU_FEATURES" ]; then + CPU_FLAGS="$CPU_MODEL" + else + CPU_FLAGS="$CPU_MODEL,$CPU_FEATURES" + fi else - CPU_FLAGS="$CPU_MODEL,$CPU_FEATURES,$CPU_FLAGS" + if [ -z "$CPU_FEATURES" ]; then + CPU_FLAGS="$CPU_MODEL,$CPU_FLAGS" + else + CPU_FLAGS="$CPU_MODEL,$CPU_FEATURES,$CPU_FLAGS" + fi fi return 0