From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53179) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aqA7p-0001xJ-UQ for qemu-devel@nongnu.org; Tue, 12 Apr 2016 22:01:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aqA7m-0006UA-PL for qemu-devel@nongnu.org; Tue, 12 Apr 2016 22:01:49 -0400 Received: from [59.151.112.132] (port=24190 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aqA7m-0006P1-2h for qemu-devel@nongnu.org; Tue, 12 Apr 2016 22:01:46 -0400 References: <1459326950-17708-1-git-send-email-zhangchen.fnst@cn.fujitsu.com> <1459326950-17708-2-git-send-email-zhangchen.fnst@cn.fujitsu.com> <20160330092529.GB2471@work-vm> From: Zhang Chen Message-ID: <570DA8A4.7090809@cn.fujitsu.com> Date: Wed, 13 Apr 2016 10:02:12 +0800 MIME-Version: 1.0 In-Reply-To: <20160330092529.GB2471@work-vm> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH V2 1/3] colo-compare: introduce colo compare initlization List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Dr. David Alan Gilbert" Cc: qemu devel , Jason Wang , Li Zhijian , Gui jianfeng , Wen Congyang , zhanghailiang , Yang Hongyang , "eddie.dong" >> + if (!size) { >> + return 0; >> + } >> + >> + ret = qemu_chr_fe_write_all(out, (uint8_t *)&len, sizeof(len)); >> + if (ret != sizeof(len)) { >> + goto err; >> + } >> + >> + ret = qemu_chr_fe_write_all(out, (uint8_t *)buf, size); >> + if (ret != size) { >> + goto err; >> + } >> + > You can make this slightly simpler and save the return 0; If we want to save the return 0 , the code will be changed like that: err: return (ret < 0 || ret == size) ? ret : -EIO; I think it too complex to be understood, so should we keep the original ? >> + return 0; >> + >> +err: >> + return ret < 0 ? ret : -EIO; > err: > return ret <= 0 ? ret : -EIO; This is wrong, if qemu_chr_fe_write_all success, ret will equal size. return -EIO. >> +} >> + >> +static int compare_chr_can_read(void *opaque) >> +{ >> + return COMPARE_READ_LEN_MAX; >> +} >> -- Thanks zhangchen