|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH OPW 06/11] libxl: use LOG and LOGE instead of LIBXL__LOG* in libxl_utils.c
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.
Suggested-by: Ian Campbell <Ian.Campbell@xxxxxxxxxx>
Signed-off-by: Kelley Nielsen <kelleynnn@xxxxxxxxx>
Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
tools/libxl/libxl_utils.c | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/tools/libxl/libxl_utils.c b/tools/libxl/libxl_utils.c
index ca3406b..cc6c342 100644
--- a/tools/libxl/libxl_utils.c
+++ b/tools/libxl/libxl_utils.c
@@ -290,6 +290,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;
@@ -300,23 +301,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;
}
@@ -330,10 +331,10 @@ 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"
- " were reading it", filename);
+ LOG(ERROR, "%s changed size while we were reading it",
+ filename);
else
abort();
goto xe;
@@ -342,16 +343,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
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |