Kelley Nielsen
2013-Nov-11 10:08 UTC
[PATCH 1/2] opw: libxl: add convenience macros to qmp_send() in libxl_qmp.c
Update qmp_send() in libxl_qmp.c to use the new convenience macros declared in libxl_internal.h. Uses GC_INIT at the top of the function, and GC_FREE at the exit. Since GC_INIT returns a libxl__gc by reference and not by value, remove the address operator from the left of the variable gc where it is passed as a parameter. Signed-off-by: Kelley Nielsen <kelleynnn@gmail.com> Suggested-by: Anthony PERARD <anthony.perard@citrix.com> --- tools/libxl/libxl_qmp.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/libxl/libxl_qmp.c b/tools/libxl/libxl_qmp.c index ee6d06f..b41d583 100644 --- a/tools/libxl/libxl_qmp.c +++ b/tools/libxl/libxl_qmp.c @@ -568,9 +568,9 @@ static int qmp_send(libxl__qmp_handler *qmp, { char *buf = NULL; int rc = -1; - libxl__gc gc; LIBXL_INIT_GC(gc,qmp->ctx); + GC_INIT(qmp->ctx); - buf = qmp_send_prepare(&gc, qmp, cmd, args, callback, opaque, context); + buf = qmp_send_prepare(gc, qmp, cmd, args, callback, opaque, context); if (buf == NULL) { goto out; @@ -585,7 +585,7 @@ static int qmp_send(libxl__qmp_handler *qmp, rc = qmp->last_id_used; out: - libxl__free_all(&gc); + GC_FREE; return rc; } -- 1.8.1.2
The new coding style uses the convenience macro CTX as declared in libxl_internal.h. Substitute an invocation of this macro for its body at the one place it occurs in libxl_qmp.c. Signed-off-by: Kelley Nielsen <kelleynnn@gmail.com> Suggested-by: Anthony PERARD <anthony.perard@citrix.com> --- tools/libxl/libxl_qmp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/libxl/libxl_qmp.c b/tools/libxl/libxl_qmp.c index b41d583..8d3215c 100644 --- a/tools/libxl/libxl_qmp.c +++ b/tools/libxl/libxl_qmp.c @@ -356,7 +356,7 @@ static libxl__qmp_handler *qmp_init_handler(libxl__gc *gc, uint32_t domid) LOGE(ERROR, "Failed to allocate qmp_handler"); return NULL; } - qmp->ctx = libxl__gc_owner(gc); + qmp->ctx = CTX; qmp->domid = domid; qmp->timeout = 5; -- 1.8.1.2
Ian Campbell
2013-Nov-11 12:19 UTC
Re: [PATCH 1/2] opw: libxl: add convenience macros to qmp_send() in libxl_qmp.c
On Mon, 2013-11-11 at 02:08 -0800, Kelley Nielsen wrote:> Update qmp_send() in libxl_qmp.c to use the new convenience macros > declared in libxl_internal.h. Uses GC_INIT at the top of the function, > and GC_FREE at the exit. Since GC_INIT returns a libxl__gc by reference > and not by value, remove the address operator from the left of the > variable gc where it is passed as a parameter. > > Signed-off-by: Kelley Nielsen <kelleynnn@gmail.com> > Suggested-by: Anthony PERARD <anthony.perard@citrix.com>I''m dubious about whether qmp_send should be creating itself a gc rather than receiving one as a parameter, but given that it does it should use the macros: Acked-by: Ian Campbell <ian.campbell@citrix.com> and committed. (NB, the tag things are more normally chronological, i.e. suggested-by first, then s-o-b, hence I reordered upon commit). (NB2, I think the OPW tag isn''t so useful for the actual commit log, inside the patch prefix i.e. [PATCH OPW ...] would be better, git send-email --subject-preifx=''PATCH OPW'' would do the trick) Ian