From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:39346) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UQdbs-0004fS-83 for qemu-devel@nongnu.org; Fri, 12 Apr 2013 09:01:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UQdbo-0001Go-GP for qemu-devel@nongnu.org; Fri, 12 Apr 2013 09:01:44 -0400 Received: from e33.co.us.ibm.com ([32.97.110.151]:34891) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UQdbo-0001GR-9z for qemu-devel@nongnu.org; Fri, 12 Apr 2013 09:01:40 -0400 Received: from /spool/local by e33.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 12 Apr 2013 07:01:35 -0600 Received: from d03relay01.boulder.ibm.com (d03relay01.boulder.ibm.com [9.17.195.226]) by d03dlp01.boulder.ibm.com (Postfix) with ESMTP id E4E721FF0044 for ; Fri, 12 Apr 2013 06:56:26 -0600 (MDT) Received: from d03av01.boulder.ibm.com (d03av01.boulder.ibm.com [9.17.195.167]) by d03relay01.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r3CD1GF2075662 for ; Fri, 12 Apr 2013 07:01:17 -0600 Received: from d03av01.boulder.ibm.com (loopback [127.0.0.1]) by d03av01.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id r3CD16nK023104 for ; Fri, 12 Apr 2013 07:01:06 -0600 Message-ID: <5168058E.2070602@linux.vnet.ibm.com> Date: Fri, 12 Apr 2013 09:01:02 -0400 From: "Michael R. Hines" MIME-Version: 1.0 References: <1365745929-24871-3-git-send-email-mrhines@linux.vnet.ibm.com> <1365745929-24871-5-git-send-email-mrhines@linux.vnet.ibm.com> <5167EA64.9080201@redhat.com> In-Reply-To: <5167EA64.9080201@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 4/8] rdma: implement new QEMUFileOps hooks List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: aliguori@us.ibm.com, mst@redhat.com, qemu-devel@nongnu.org, owasserm@redhat.com, abali@us.ibm.com, mrhines@us.ibm.com, gokul@us.ibm.com On 04/12/2013 07:05 AM, Paolo Bonzini wrote: > Il 12/04/2013 07:52, mrhines@linux.vnet.ibm.com ha scritto: >> +void ram_control_load_hook(QEMUFile *f, uint32_t flags) >> +{ >> + int ret = 0; >> + >> + if (f->ops->hook_ram_load) { >> + qemu_fflush(f); >> + ret = f->ops->hook_ram_load(f, f->opaque, flags); >> + if (ret < 0) { >> + qemu_file_set_error(f, ret); >> + } >> + } > Almost my last request. > > Here, qemu_fflush is not needed, we're reading. Acknowledged. > Also, please fail if there is no hook, that is: > > if (f->ops->hook_ram_load) { > ret = f->ops->hook_ram_load(f, f->opaque, flags); > } else { > ret = -EIO; > } > if (ret < 0) { > qemu_file_set_error(f, ret); > } > >> + >> + bytes = f->ops->save_page(f, f->opaque, block_offset, offset, size, va); >> + >> + if (bytes > 0) { >> + f->pos += bytes; >> + } >> + > And please add an "else { qemu_file_set_error(f, ret); }" too. Good catch.