From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51815) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bsWC4-0002Ez-5p for qemu-devel@nongnu.org; Fri, 07 Oct 2016 10:32:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bsWBz-0006b6-5D for qemu-devel@nongnu.org; Fri, 07 Oct 2016 10:32:11 -0400 References: <1475519097-27611-1-git-send-email-duanj@linux.vnet.ibm.com> <1475519097-27611-5-git-send-email-duanj@linux.vnet.ibm.com> <20161005165638.GC11921@work-vm> <20161006190156.GE3087@work-vm> From: Paolo Bonzini Message-ID: <6420ae77-c205-6e24-d06e-2bbb28447b23@redhat.com> Date: Fri, 7 Oct 2016 16:31:55 +0200 MIME-Version: 1.0 In-Reply-To: <20161006190156.GE3087@work-vm> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [QEMU PATCH v5 4/6] migration: migrate QTAILQ List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Dr. David Alan Gilbert" , Jianjun Duan Cc: qemu-devel@nongnu.org, qemu-ppc@nongnu.org, dmitry@daynix.com, peter.maydell@linaro.org, kraxel@redhat.com, mst@redhat.com, david@gibson.dropbear.id.au, veroniabahaa@gmail.com, quintela@redhat.com, amit.shah@redhat.com, mreitz@redhat.com, kwolf@redhat.com, rth@twiddle.net, aurelien@aurel32.net, leon.alrae@imgtec.com, blauwirbel@gmail.com, mark.cave-ayland@ilande.co.uk, mdroth@linux.vnet.ibm.com On 06/10/2016 21:01, Dr. David Alan Gilbert wrote: >> >> + } else if (field->flags & VMS_LINKED) { >> >> + ret = field->info->get(f, addr, size, field); >> >> } else { >> >> ret = field->info->get(f, addr, size, NULL); >> >> >> >> @@ -193,6 +197,8 @@ static const char *vmfield_get_type_name(VMStateField *field) >> >> >> >> if (field->flags & VMS_STRUCT) { >> >> type = "struct"; >> >> + } else if (field->flags & VMS_LINKED) { >> >> + type = "linked"; >> >> } else if (field->info->name) { >> >> type = field->info->name; >> >> } >> >> @@ -327,6 +333,8 @@ void vmstate_save_state(QEMUFile *f, const VMStateDescription *vmsd, >> >> } >> >> if (field->flags & VMS_STRUCT) { >> >> vmstate_save_state(f, field->vmsd, addr, vmdesc_loop); >> >> + } else if (field->flags & VMS_LINKED) { >> >> + field->info->put(f, addr, size, field, vmdesc_loop); >> >> } else { >> >> field->info->put(f, addr, size, NULL, NULL); >> >> } Is VMS_LINKED needed at all, since the fields are unused for every VMStateInfo except qtailq? Paolo