applied On Tue, Mar 13, 2018 at 08:21:59AM +0100, Thomas Lamprecht wrote: > We introduced our QMP socket with commit > c971c4f2213524f27125f558978a428b53628f34 (29.05.2012) > > Already tried to remove this with commit > 7b7c6d1b5dcee25e1194d4b8a0219bd5c31a5639 (13.07.2012) > > But reverted that to allow migration of VMs still using the old > montior to ones which already switched over to the new QMP one, > in commit dab36e1ee924be0efab3f85937c23910b456f4b9 (17.08.2012) > see bug #242 for reference > > This was all done and released in PVE 2.2, as no migration through > nodes differing more than one major version is possible we can > finally remove this code for good. > > Signed-off-by: Thomas Lamprecht <t.lampre...@proxmox.com> > --- > PVE/QemuServer.pm | 79 > ------------------------------------------------------- > 1 file changed, 79 deletions(-) > > diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm > index a26b2ab..5462d07 100644 > --- a/PVE/QemuServer.pm > +++ b/PVE/QemuServer.pm > @@ -4169,81 +4169,6 @@ sub __read_avail { > return $res; > } > > -# old code, only used to shutdown old VM after update > -sub vm_monitor_command { > - my ($vmid, $cmdstr, $nocheck) = @_; > - > - my $res; > - > - eval { > - die "VM $vmid not running\n" if !check_running($vmid, $nocheck); > - > - my $sname = "${var_run_tmpdir}/$vmid.mon"; > - > - my $sock = IO::Socket::UNIX->new( Peer => $sname ) || > - die "unable to connect to VM $vmid socket - $!\n"; > - > - my $timeout = 3; > - > - # hack: migrate sometime blocks the monitor (when migrate_downtime > - # is set) > - if ($cmdstr =~ m/^(info\s+migrate|migrate\s)/) { > - $timeout = 60*60; # 1 hour > - } > - > - # read banner; > - my $data = __read_avail($sock, $timeout); > - > - if ($data !~ m/^QEMU\s+(\S+)\s+monitor\s/) { > - die "got unexpected qemu monitor banner\n"; > - } > - > - my $sel = new IO::Select; > - $sel->add($sock); > - > - if (!scalar(my @ready = $sel->can_write($timeout))) { > - die "monitor write error - timeout"; > - } > - > - my $fullcmd = "$cmdstr\r"; > - > - # syslog('info', "VM $vmid monitor command: $cmdstr"); > - > - my $b; > - if (!($b = $sock->syswrite($fullcmd)) || ($b != length($fullcmd))) { > - die "monitor write error - $!"; > - } > - > - return if ($cmdstr eq 'q') || ($cmdstr eq 'quit'); > - > - $timeout = 20; > - > - if ($cmdstr =~ m/^(info\s+migrate|migrate\s)/) { > - $timeout = 60*60; # 1 hour > - } elsif ($cmdstr =~ m/^(eject|change)/) { > - $timeout = 60; # note: cdrom mount command is slow > - } > - if ($res = __read_avail($sock, $timeout)) { > - > - my @lines = split("\r?\n", $res); > - > - shift @lines if $lines[0] !~ m/^unknown command/; # skip echo > - > - $res = join("\n", @lines); > - $res .= "\n"; > - } > - }; > - > - my $err = $@; > - > - if ($err) { > - syslog("err", "VM $vmid monitor command failed - $err"); > - die $err; > - } > - > - return $res; > -} > - > sub qemu_block_resize { > my ($vmid, $deviceid, $storecfg, $volid, $size) = @_; > > @@ -5049,10 +4974,6 @@ sub vm_qmp_command { > my $qmpclient = PVE::QMPClient->new(); > > $res = $qmpclient->cmd($vmid, $cmd, $timeout); > - } elsif (-e "${var_run_tmpdir}/$vmid.mon") { > - die "can't execute complex command on old monitor - stop/start your > vm to fix the problem\n" > - if scalar(%{$cmd->{arguments}}); > - vm_monitor_command($vmid, $cmd->{execute}, $nocheck); > } else { > die "unable to open monitor socket\n"; > } > -- > 2.14.2
_______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel