From: Kelley Nielsen <kelleynnn@gmail.com>
To: xen-devel@lists.xensource.com
Cc: Ian.Campbell@citrix.com
Subject: [PATCH 3/4] opw: libxl: use LOG and LOGE instead of LIBXL__LOG* in libxl_utils.c
Date: Sun, 10 Nov 2013 23:08:26 -0800 [thread overview]
Message-ID: <1384153707-24240-4-git-send-email-kelleynnn@gmail.com> (raw)
In-Reply-To: <1384153707-24240-1-git-send-email-kelleynnn@gmail.com>
Code cleanup - no functional changes
The convenience macros LOG and LOGE have been written to take the
place of the old macros in the LIBXL__LOG* family. Replace the
invocations of the old macros in the function libxl_read_file_contents()
with invocations of the corresponding new ones. Create a local
libxl__gc gc* for the new macros to use by invoking GC_INIT(ctx) at the
top of the function, and clean it up by invoking GC_FREE at the two
exit points.
Signed-off-by: Kelley Nielsen <kelleynnn@gmail.com>
Suggested-by: Ian Campbell <Ian.Campbell@citrix.com>
---
tools/libxl/libxl_utils.c | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/tools/libxl/libxl_utils.c b/tools/libxl/libxl_utils.c
index 5238f22..883c594 100644
--- a/tools/libxl/libxl_utils.c
+++ b/tools/libxl/libxl_utils.c
@@ -289,6 +289,7 @@ out:
int libxl_read_file_contents(libxl_ctx *ctx, const char *filename,
void **data_r, int *datalen_r) {
+ GC_INIT(ctx);
FILE *f = 0;
uint8_t *data = 0;
int datalen = 0;
@@ -299,23 +300,23 @@ int libxl_read_file_contents(libxl_ctx *ctx, const char *filename,
f = fopen(filename, "r");
if (!f) {
if (errno == ENOENT) return ENOENT;
- LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, "failed to open %s", filename);
+ LOGE(ERROR, "failed to open %s", filename);
goto xe;
}
if (fstat(fileno(f), &stab)) {
- LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, "failed to fstat %s", filename);
+ LOGE(ERROR, "failed to fstat %s", filename);
goto xe;
}
if (!S_ISREG(stab.st_mode)) {
- LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, "%s is not a plain file", filename);
+ LOGE(ERROR, "%s is not a plain file", filename);
errno = ENOTTY;
goto xe;
}
if (stab.st_size > INT_MAX) {
- LIBXL__LOG(ctx, LIBXL__LOG_ERROR, "file %s is far too large", filename);
+ LOG(ERROR, "file %s is far too large", filename);
errno = EFBIG;
goto xe;
}
@@ -329,9 +330,9 @@ int libxl_read_file_contents(libxl_ctx *ctx, const char *filename,
rs = fread(data, 1, datalen, f);
if (rs != datalen) {
if (ferror(f))
- LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, "failed to read %s", filename);
+ LOGE(ERROR, "failed to read %s", filename);
else if (feof(f))
- LIBXL__LOG(ctx, LIBXL__LOG_ERROR, "%s changed size while we"
+ LOG(ERROR, "%s changed size while we"
" were reading it", filename);
else
abort();
@@ -341,16 +342,18 @@ int libxl_read_file_contents(libxl_ctx *ctx, const char *filename,
if (fclose(f)) {
f = 0;
- LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, "failed to close %s", filename);
+ LOGE(ERROR, "failed to close %s", filename);
goto xe;
}
if (data_r) *data_r = data;
if (datalen_r) *datalen_r = datalen;
+ GC_FREE;
return 0;
xe:
+ GC_FREE;
e = errno;
assert(e != ENOENT);
if (f) fclose(f);
--
1.8.1.2
next prev parent reply other threads:[~2013-11-11 7:08 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-11 7:08 [PATCH 0/4] Compliance with new coding style Kelley Nielsen
2013-11-11 7:08 ` [PATCH 1/4] opw: libxl: use GCSPRINTF instead of libxl__sprintf Kelley Nielsen
2013-11-11 12:27 ` Ian Campbell
2013-11-11 7:08 ` [PATCH 2/4] opw: libxl: use LOGE instead of LIBXL__LOG_ERRNO in libxl_utils.c Kelley Nielsen
2013-11-11 12:28 ` Ian Campbell
2013-11-11 7:08 ` Kelley Nielsen [this message]
2013-11-11 12:28 ` [PATCH 3/4] opw: libxl: use LOG and LOGE instead of LIBXL__LOG* " Ian Campbell
2013-11-11 7:08 ` [PATCH 4/4] opw: libxl: use LOG instead of LIBXL__LOG " Kelley Nielsen
2013-11-11 12:30 ` Ian Campbell
2013-11-11 12:54 ` [PATCH 0/4] Compliance with new coding style David Vrabel
2013-11-11 13:11 ` Kelley Nielsen
2013-11-11 14:10 ` Konrad Rzeszutek Wilk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1384153707-24240-4-git-send-email-kelleynnn@gmail.com \
--to=kelleynnn@gmail.com \
--cc=Ian.Campbell@citrix.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).