see http://forum.proxmox.com/threads/16206-Windows-Server-2012-R2-and-0x0000005D-Error
Signed-off-by: Alexandre Derumier <aderum...@odiso.com> --- PVE/QemuServer.pm | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index d9896c1..adcccd2 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -245,7 +245,7 @@ my $confdesc = { ostype => { optional => 1, type => 'string', - enum => [qw(other wxp w2k w2k3 w2k8 wvista win7 win8 l24 l26 solaris)], + enum => [qw(other wxp w2k w2k3 w2k8 wvista win7 win8 win81 l24 l26 solaris)], description => <<EODESC, Used to enable special optimization/features for specific operating systems: @@ -258,12 +258,13 @@ w2k8 => Microsoft Windows 2008 wvista => Microsoft Windows Vista win7 => Microsoft Windows 7 win8 => Microsoft Windows 8/2012 +win81 => Microsoft Windows 8.1/2012R2 l24 => Linux 2.4 Kernel l26 => Linux 2.6/3.X Kernel solaris => solaris/opensolaris/openindiania kernel other|l24|l26|solaris ... no special behaviour -wxp|w2k|w2k3|w2k8|wvista|win7|win8 ... use --localtime switch +wxp|w2k|w2k3|w2k8|wvista|win7|win8|win81 ... use --localtime switch EODESC }, boot => { @@ -337,7 +338,7 @@ EODESC vga => { optional => 1, type => 'string', - description => "Select VGA type. If you want to use high resolution modes (>= 1280x1024x16) then you should use option 'std' or 'vmware'. Default is 'std' for win8/win7/w2k8, and 'cirrur' for other OS types. Option 'qxl' enables the SPICE display sever. You can also run without any graphic card using a serial devive as terminal.", + description => "Select VGA type. If you want to use high resolution modes (>= 1280x1024x16) then you should use option 'std' or 'vmware'. Default is 'std' for win8.1/win8/win7/w2k8, and 'cirrur' for other OS types. Option 'qxl' enables the SPICE display sever. You can also run without any graphic card using a serial devive as terminal.", enum => [qw(std cirrus vmware qxl serial0 serial1 serial2 serial3 qxl2 qxl3 qxl4)], }, watchdog => { @@ -717,6 +718,7 @@ sub os_list_description { wvista => 'Windows Vista', win7 => 'Windows 7', win8 => 'Windows 8/2012', + win81 => 'Windows 8.1/2012R2', l24 => 'Linux 2.4', l26 => 'Linux 2.6', }; @@ -2298,7 +2300,8 @@ sub config_to_command { $vga = 'qxl' if $qxlnum; if (!$vga) { - if ($conf->{ostype} && ($conf->{ostype} eq 'win8' || + if ($conf->{ostype} && ($conf->{ostype} eq 'win81' || + $conf->{ostype} eq 'win8' || $conf->{ostype} eq 'win7' || $conf->{ostype} eq 'w2k8')) { $vga = 'std'; @@ -2404,7 +2407,7 @@ sub config_to_command { my $useLocaltime = $conf->{localtime}; if (my $ost = $conf->{ostype}) { - # other, wxp, w2k, w2k3, w2k8, wvista, win7, win8, l24, l26, solaris + # other, wxp, w2k, w2k3, w2k8, wvista, win7, win8,win81 l24, l26, solaris if ($ost =~ m/^w/) { # windows $useLocaltime = 1 if !defined($conf->{localtime}); @@ -2415,7 +2418,7 @@ sub config_to_command { } } - if ($ost eq 'win7' || $ost eq 'win8' || $ost eq 'w2k8' || + if ($ost eq 'win7' || $ost eq 'win8' || $ost eq 'win81' || $ost eq 'w2k8' || $ost eq 'wvista') { push @$globalFlags, 'kvm-pit.lost_tick_policy=discard'; push @$cmd, '-no-hpet'; @@ -2423,7 +2426,7 @@ sub config_to_command { push @$cpuFlags , 'hv_spinlocks=0xffff' if !$nokvm; } - if ($ost eq 'win7' || $ost eq 'win8') { + if ($ost eq 'win7' || $ost eq 'win8' || $ost eq 'win81') { push @$cpuFlags , 'hv_relaxed' if !$nokvm; } } @@ -2456,6 +2459,8 @@ sub config_to_command { push @$cpuFlags, '+sep' if $cpu eq 'kvm64' || $cpu eq 'kvm32'; + push @$cpuFlags , '+lahf_lm' if $conf->{ostype} eq 'win81'; + $cpu .= "," . join(',', @$cpuFlags) if scalar(@$cpuFlags); push @$cmd, '-cpu', $cpu; -- 1.7.10.4 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel