Displaying 4 results from an estimated 4 matches for "parse_bootloader_result".
2014 Nov 28
1
Bug#767295: xl: apparent memory leak
...6 13:00:31 2014 +0000
tools: libxl: do not leak diskpath during local disk attach
libxl__device_disk_local_initiate_attach is assigning dls->diskpath with a
strdup of the device path. This is then passed to the callback, e.g.
parse_bootloader_result but bootloader_cleanup will not free it.
Since the callback is within the scope of the (e)gc and therefore doesn't need
to be malloc'd, a gc'd alloc will do. All other assignments to this field use
the gc.
https:/...
2012 May 17
8
[PATCH] libxl: do not overwrite user supplied config when running bootloader
...pv.ramdisk)
+ ARG(libxl__sprintf(gc, "--ramdisk=%s", info->u.pv.ramdisk));
if (info->u.pv.cmdline && *info->u.pv.cmdline != ''\0'')
ARG(libxl__sprintf(gc, "--args=%s", info->u.pv.cmdline));
@@ -144,7 +145,6 @@ static int parse_bootloader_result(libxl
char buf[PATH_MAX*2];
FILE *f = 0;
int rc = ERROR_FAIL;
- libxl_domain_build_info *info = bl->info;
f = fopen(bl->outputpath, "r");
if (!f) {
@@ -180,18 +180,15 @@ static int parse_bootloader_result(libxl
#define COMMAND(s) ((rhs = bootloader_res...
2010 Aug 18
16
[PATCH 00 of 16] libxl: autogenerate type definitions and destructor functions
The series introduces auto-generation of the type definitions used in
the libxl interface followed by auto-generation of a destructor
function for each type. In the future it may be possible to use the
related data structures for other purposes, for example auto-generation
of the functions to marshal between C and language binding data types.
tools/_libxl_types.h should be identical both before
2010 Aug 12
0
[PATCH, v2]: xl: Implement per-API-call garbage-collection lifetime
...goto out_close;
}
pid = waitpid(pid, &blrc, 0);
if (pid == -1 || (pid > 0 && WIFEXITED(blrc) && WEXITSTATUS(blrc) != 0)) {
- ret = ERROR_FAIL;
- goto out;
+ goto out_close;
}
libxl_device_disk_local_detach(ctx, disk);
parse_bootloader_result(ctx, info, blout);
- ret = 0;
-out:
+ rc = 0;
+out_close:
if (fifo_fd > -1)
close(fifo_fd);
if (bootloader_fd > -1)
@@ -444,6 +438,8 @@ out:
free(args);
- return ret;
+out:
+ libxl_free_all(&gc);
+ return rc;
}
diff -r 7b144fe8c528 tools/lib...