}
}
- push @$cpuFlags , '+lahf_lm' if $cpu eq 'kvm64';
+ push @$cpuFlags , '+lahf_lm' if $cpu eq 'kvm64' && $arch eq 'x86_64';
push @$cpuFlags , '-x2apic'
if $conf->{ostype} && $conf->{ostype} eq 'solaris';
push @$cpuFlags, '-rdtscp' if $cpu =~ m/^Opteron/;
- if (qemu_machine_feature_enabled ($machine_type, $kvmver, 2, 3)) {
+ if (qemu_machine_feature_enabled ($machine_type, $kvmver, 2, 3) && $arch eq 'x86_64') {
push @$cpuFlags , '+kvm_pv_unhalt' if $kvm;
push @$cpuFlags , '+kvm_pv_eoi' if $kvm;
add_hyperv_enlightenments($cpuFlags, $winversion, $machine_type, $kvmver, $conf->{bios}, $gpu_passthrough) if $kvm;
- push @$cpuFlags, 'enforce' if $cpu ne 'host' && $kvm;
+ push @$cpuFlags, 'enforce' if $cpu ne 'host' && $kvm && $arch eq 'x86_64';
push @$cpuFlags, 'kvm=off' if $kvm_off;
push @$cmd, '-mon', "chardev=qmp,mode=control";
if (qemu_machine_feature_enabled($machine_type, $kvmver, 2, 12)) {
- my $eventsocket = qmp_socket($vmid, 0, 'event');
- push @$cmd, '-chardev', "socket,id=qmp-event,path=$eventsocket,server,nowait";
+ push @$cmd, '-chardev', "socket,id=qmp-event,path=/var/run/qmeventd.sock,reconnect=5";
push @$cmd, '-mon', "chardev=qmp-event,mode=control";
}
$vga->{type} = 'qxl' if $qxlnum;
if (!$vga->{type}) {
- if (qemu_machine_feature_enabled($machine_type, $kvmver, 2, 9)) {
+ if ($arch eq 'aarch64') {
+ $vga->{type} = 'virtio';
+ } elsif (qemu_machine_feature_enabled($machine_type, $kvmver, 2, 9)) {
$vga->{type} = (!$winversion || $winversion >= 6) ? 'std' : 'cirrus';
} else {
$vga->{type} = ($winversion >= 6) ? 'std' : 'cirrus';