[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 3/4] libxl/remus: Change the assert for info to an return
On Tue, Jan 26, 2016 at 04:30:59PM -0500, Konrad Rzeszutek Wilk wrote: > The assert(info) is after quite a lot of manipulations > on 'info' - which makes the assert pointless because if > info was NULL it would have crashed earlier. > This sounds sensible. > Remove it and make it an return. Also since most of the > error paths are for the same rc, unify them. > > CC: Wen Congyang <wency@xxxxxxxxxxxxxx> > CC: Yang Hongyang <hongyang.yang@xxxxxxxxxxxx> > Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> > --- > tools/libxl/libxl.c | 13 ++++++------- > 1 file changed, 6 insertions(+), 7 deletions(-) > > diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c > index 548e2e2..228b241 100644 > --- a/tools/libxl/libxl.c > +++ b/tools/libxl/libxl.c > @@ -847,13 +847,14 @@ int libxl_domain_remus_start(libxl_ctx *ctx, > libxl_domain_remus_info *info, > { > AO_CREATE(ctx, domid, ao_how); > libxl__domain_suspend_state *dss; > - int rc; > + int rc = ERROR_FAIL; This violates coding style: 83 * If the function is to return a libxl error value, `rc' is 84 used to contain the error code, but it is NOT initialised: 85 int rc; > > libxl_domain_type type = libxl__domain_type(gc, domid); > - if (type == LIBXL_DOMAIN_TYPE_INVALID) { > - rc = ERROR_FAIL; > + if (type == LIBXL_DOMAIN_TYPE_INVALID) > + goto out; > + > + if (!info) > goto out; > - } > > libxl_defbool_setdefault(&info->allow_unsafe, false); > libxl_defbool_setdefault(&info->blackhole, false); > @@ -867,7 +868,6 @@ int libxl_domain_remus_start(libxl_ctx *ctx, > libxl_domain_remus_info *info, > !libxl_defbool_val(info->diskbuf))) { > LOG(ERROR, "Unsafe mode must be enabled to replicate to /dev/null," > "disable network buffering and disk replication"); > - rc = ERROR_FAIL; > goto out; > } > > @@ -883,8 +883,7 @@ int libxl_domain_remus_start(libxl_ctx *ctx, > libxl_domain_remus_info *info, > dss->debug = 0; > dss->remus = info; > > - assert(info); > - > + rc = 0; > /* Point of no return */ > libxl__remus_setup(egc, dss); > return AO_INPROGRESS; > -- > 2.1.0 > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |