[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 4/6] libxl: debug output for args and env when invoking hotplug script
On Tue, Jun 14, 2016 at 11:26:56AM +0100, Ian Jackson wrote: > Wei Liu writes ("[PATCH 4/6] libxl: debug output for args and env when > invoking hotplug script"): > > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> > ... > > + const char *arg; > > + unsigned int x = 2; > > + > > + arg = args[x]; > > + while (arg) { > > + LOG(DEBUG, "\t%s", arg); > > + x++; > > + arg = args[x]; > > + } I will use > > What a strange way to write > > for (x=2; (arg = args[x]); x++) { > This style. > or > > for (x=2; (arg = args[x++]); ) { > > or > > x = 2; > while ((arg = args[x++])) { > > If you really insist on not doing assignment in the conditional (which > IMO is a very usual C idiom) then you should avoid the repeated code > with > > x = 2; > for (;;) { > arg = args[x++]; > if (!arg) break; > > or some such. > > > + const char *k, *v; > > + unsigned int x = 0; > > + > > + k = env[x]; > > + while (k) { > > + v = env[x+1]; > > + LOG(DEBUG, "\t%s: %s", k, v); > > + x += 2; > > + k = env[x]; > > + } > > How about one of > > for (x=0; (k = env[x]); x += 2) { > v = env[x+1]; > And this style. ---8<--- From 49714976c5fde3d08baa6f34295b3f7db6a81444 Mon Sep 17 00:00:00 2001 From: Wei Liu <wei.liu2@xxxxxxxxxx> Date: Fri, 15 Apr 2016 12:56:03 +0100 Subject: [PATCH] libxl: debug output for args and env when invoking hotplug script Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> --- v2: write the loops differently. --- tools/libxl/libxl_device.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c index 4717027..b3213be 100644 --- a/tools/libxl/libxl_device.c +++ b/tools/libxl/libxl_device.c @@ -1167,6 +1167,24 @@ static void device_hotplug(libxl__egc *egc, libxl__ao_device *aodev) } LOG(DEBUG, "calling hotplug script: %s %s", args[0], args[1]); + LOG(DEBUG, "extra args:"); + { + const char *arg; + unsigned int x; + + for (x = 2; (arg = args[x]); x++) + LOG(DEBUG, "\t%s", arg); + } + LOG(DEBUG, "env:"); + { + const char *k, *v; + unsigned int x; + + for (x = 0; (k = env[x]); x += 2) { + v = env[x+1]; + LOG(DEBUG, "\t%s: %s", k, v); + } + } nullfd = open("/dev/null", O_RDONLY); if (nullfd < 0) { -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |