From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52643) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XLrbe-0003tl-Ss for qemu-devel@nongnu.org; Mon, 25 Aug 2014 06:34:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XLrbW-0007yH-Oh for qemu-devel@nongnu.org; Mon, 25 Aug 2014 06:34:34 -0400 Received: from mx1.redhat.com ([209.132.183.28]:59548) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XLrbW-0007yB-Fx for qemu-devel@nongnu.org; Mon, 25 Aug 2014 06:34:26 -0400 Message-ID: <53FB1108.6050400@redhat.com> Date: Mon, 25 Aug 2014 12:33:44 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <1408789147-18675-1-git-send-email-lersek@redhat.com> In-Reply-To: <1408789147-18675-1-git-send-email-lersek@redhat.com> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 0/2] pflash (UEFI varstore) migration shortcut for libvirt List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Laszlo Ersek , Michal Privoznik , Eric Blake , "Daniel P. Berrange" , Kevin Wolf , Stefan Hajnoczi , Juan Quintela , David Gilbert , qemu devel list , David Gibson , Alexey Kardashevskiy Il 23/08/2014 12:19, Laszlo Ersek ha scritto: > Libvirt is growing support for x86_64 OVMF guests: > > http://www.redhat.com/archives/libvir-list/2014-August/msg01045.html > > An important feature of such guests is the persistent store for > non-volatile UEFI variables. This is implemented with if=pflash drives. > The referenced libvirt patchset sets up the varstore files for > single-host use. > > Wrt. migration, two choices have been considered: > (a) full-blown live storage migration for the drives backing pflash > devices, > (b) vs. a shortcut that exploits the special nature of pflash drives > (namely, their minuscule size, and a RAMBlock that keeps the full > contents of each pflash drive visible to the guest, and is > up-to-date, at all times.) > > Patch 1/2 is a trivial cleanup (some DPRINTF() calls in pflash_cfi01 > have bit-rotted). Patch 2/2 seeks to implement choice (b), which is what > the libvirt patchset relies on for migration. > > Thanks, > Laszlo > > Laszlo Ersek (2): > pflash_cfi01: fixup stale DPRINTF() calls > pflash_cfi01: write flash contents to bdrv on incoming migration > > hw/block/pflash_cfi01.c | 18 ++++++++++++++++-- > 1 file changed, 16 insertions(+), 2 deletions(-) > Reviewed-by: Paolo Bonzini Alexey/David, I think hw/nvram/spapr_nvram.c should do the same. It doesn't have a vmstate, but you can probably use qemu_add_vm_change_state_handler to the same effect. Paolo