[pve-devel] r6407 - in qemu-server/pve2: . PVE PVE/API2

svn-commits at proxmox.com svn-commits at proxmox.com
Thu Aug 4 07:27:27 CEST 2011


Author: dietmar
Date: 2011-08-04 07:27:27 +0200 (Thu, 04 Aug 2011)
New Revision: 6407

Modified:
   qemu-server/pve2/ChangeLog
   qemu-server/pve2/PVE/API2/Qemu.pm
   qemu-server/pve2/PVE/QemuServer.pm
Log:

	* PVE/QemuServer.pm (config_list): use PVE::Cluster::get_vmlist()
	to avoid fuse filesystem overhead.



Modified: qemu-server/pve2/ChangeLog
===================================================================
--- qemu-server/pve2/ChangeLog	2011-08-04 04:37:52 UTC (rev 6406)
+++ qemu-server/pve2/ChangeLog	2011-08-04 05:27:27 UTC (rev 6407)
@@ -1,3 +1,8 @@
+2011-08-04  Proxmox Support Team  <support at proxmox.com>
+
+	* PVE/QemuServer.pm (config_list): use PVE::Cluster::get_vmlist()
+	to avoid fuse filesystem overhead.
+
 2011-07-06  Proxmox Support Team  <support at proxmox.com>
 
 	* PVE/API2/Qemu.pm (update_vm): check to avoid '-$opt' and

Modified: qemu-server/pve2/PVE/API2/Qemu.pm
===================================================================
--- qemu-server/pve2/PVE/API2/Qemu.pm	2011-08-04 04:37:52 UTC (rev 6406)
+++ qemu-server/pve2/PVE/API2/Qemu.pm	2011-08-04 05:27:27 UTC (rev 6407)
@@ -55,7 +55,7 @@
     code => sub {
 	my ($param) = @_;
 
-	my $vmstatus =  PVE::QemuServer::vmstatus();
+	my $vmstatus = PVE::QemuServer::vmstatus();
 
 	return PVE::RESTHandler::hash_to_array($vmstatus, 'vmid');
 

Modified: qemu-server/pve2/PVE/QemuServer.pm
===================================================================
--- qemu-server/pve2/PVE/QemuServer.pm	2011-08-04 04:37:52 UTC (rev 6406)
+++ qemu-server/pve2/PVE/QemuServer.pm	2011-08-04 05:27:27 UTC (rev 6407)
@@ -1502,16 +1502,16 @@
 }
 
 sub config_list {
-
-    my $fd = IO::Dir->new($confdir);
+    my $vmlist = PVE::Cluster::get_vmlist();
     my $res = {};
+    return $res if !$vmlist || !$vmlist->{ids};
+    my $ids = $vmlist->{ids};
 
-    return $res if !$fd;
-
-    while (defined(my $de = $fd->read)) { 
-	if ($de =~ m/^(\d+)\.conf$/) {
-	    $res->{$1}->{exists} = 1;
-	}
+    my $nodename = PVE::INotify::nodename();
+    foreach my $vmid (keys %$ids) {
+	my $d = $ids->{$vmid};
+	next if !$d->{node} || $d->{node} ne $nodename;
+	$res->{$vmid}->{exists} = 1;
     }
     return $res;
 }
@@ -1657,7 +1657,7 @@
 
     my $storecfg = PVE::Storage::config(); 
 
-    my $list =  vzlist();
+    my $list = vzlist();
     my ($uptime) = PVE::ProcFSTools::read_proc_uptime();
 
     foreach my $vmid (keys %$list) {



More information about the pve-devel mailing list