From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=33793 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OOsD5-0003E6-UZ for qemu-devel@nongnu.org; Wed, 16 Jun 2010 08:59:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OOsD4-0006fI-P6 for qemu-devel@nongnu.org; Wed, 16 Jun 2010 08:59:15 -0400 Received: from mail-wy0-f173.google.com ([74.125.82.173]:55695) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OOsD4-0006f8-KM for qemu-devel@nongnu.org; Wed, 16 Jun 2010 08:59:14 -0400 Received: by wyb36 with SMTP id 36so6186325wyb.4 for ; Wed, 16 Jun 2010 05:59:13 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <4C18C645.60200@redhat.com> References: <1276653214-15427-1-git-send-email-miguel.filho@gmail.com> <4C18C645.60200@redhat.com> Date: Wed, 16 Jun 2010 09:59:08 -0300 Message-ID: From: Miguel Di Ciurcio Filho Content-Type: text/plain; charset=ISO-8859-1 Subject: [Qemu-devel] Re: [PATCH] monitor: Really show snapshot information about all devices List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf Cc: armbru@redhat.com, qemu-devel@nongnu.org, lcapitulino@redhat.com On Wed, Jun 16, 2010 at 9:40 AM, Kevin Wolf wrote: > > If the human monitor was exactly what its name says, I'd happily apply > this one (though I think it should be made clear from which image the VM > state would be loaded). However, it isn't and I'm not sure if this > wouldn't break libvirt. Dan, can you help? > I didn't mention in the commit, but I've looked at libvirt's source and it is not using 'info snapshots' AFAIK. At the present time, the VM state is always saved in the first block device that supports snapshots. I could update the patch to make it clear on the output somehow. From savevm.c:get_bs_snapshot(): static BlockDriverState *get_bs_snapshots(void) { BlockDriverState *bs; if (bs_snapshots) return bs_snapshots; /* FIXME what if bs_snapshots gets hot-unplugged? */ bs = NULL; while ((bs = bdrv_next(bs))) { if (bdrv_can_snapshot(bs)) { goto ok; } } return NULL; ok: bs_snapshots = bs; return bs; } Regards, Miguel