From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58487) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aQ7q1-0004ea-Ni for qemu-devel@nongnu.org; Mon, 01 Feb 2016 01:19:50 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aQ7py-0002aq-HF for qemu-devel@nongnu.org; Mon, 01 Feb 2016 01:19:49 -0500 Received: from szxga02-in.huawei.com ([119.145.14.65]:44876) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aQ7px-0002ab-R9 for qemu-devel@nongnu.org; Mon, 01 Feb 2016 01:19:46 -0500 References: <1453883380-10532-1-git-send-email-zhang.zhanghailiang@huawei.com> <1453883380-10532-3-git-send-email-zhang.zhanghailiang@huawei.com> <56AECB89.1080901@redhat.com> From: Hailiang Zhang Message-ID: <56AEF8EB.4070709@huawei.com> Date: Mon, 1 Feb 2016 14:19:23 +0800 MIME-Version: 1.0 In-Reply-To: <56AECB89.1080901@redhat.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH RFC v2 2/5] vl: Make object_create() public List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jason Wang , qemu-devel@nongnu.org Cc: Paolo Bonzini , peter.huangpeng@huawei.com, zhangchen.fnst@cn.fujitsu.com, hongyang.yang@easystack.cn On 2016/2/1 11:05, Jason Wang wrote: > > > On 01/27/2016 04:29 PM, zhanghailiang wrote: >> Make the helper object_create() public and fix its first >> parameter to accept NULL value. > > Looks not very nice. Maybe pass a new predicate func for sanity check it > better. > OK, but here is it better to check if the predicate func is NULL ? Thanks, Hailiang >> >> Signed-off-by: zhanghailiang >> Cc: Paolo Bonzini >> --- >> v2: >> - New patch >> --- >> include/qemu-common.h | 2 ++ >> vl.c | 4 ++-- >> 2 files changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/include/qemu-common.h b/include/qemu-common.h >> index 22b010c..52cf4fd 100644 >> --- a/include/qemu-common.h >> +++ b/include/qemu-common.h >> @@ -500,4 +500,6 @@ int parse_debug_env(const char *name, int max, int initial); >> const char *qemu_ether_ntoa(const MACAddr *mac); >> void page_size_init(void); >> >> +int object_create(void *opaque, QemuOpts *opts, Error **errp); >> + >> #endif >> diff --git a/vl.c b/vl.c >> index f043009..b21335e 100644 >> --- a/vl.c >> +++ b/vl.c >> @@ -2819,7 +2819,7 @@ static bool object_create_delayed(const char *type) >> } >> >> >> -static int object_create(void *opaque, QemuOpts *opts, Error **errp) >> +int object_create(void *opaque, QemuOpts *opts, Error **errp) >> { >> Error *err = NULL; >> char *type = NULL; >> @@ -2842,7 +2842,7 @@ static int object_create(void *opaque, QemuOpts *opts, Error **errp) >> if (err) { >> goto out; >> } >> - if (!type_predicate(type)) { >> + if (type_predicate && !type_predicate(type)) { >> goto out; >> } >> > > > . >