[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [qemu-xen-unstable] qemu xen upstream synch (Gerd): [PATCH 4/7]: no malloc failure checks.
commit faa3347e6e7bc4137569342a191639ee8dd5d410 Author: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Date: Tue May 19 15:40:06 2009 +0100 qemu xen upstream synch (Gerd): [PATCH 4/7]: no malloc failure checks. qemu_malloc() will never return errors. It will abort instead. Thus no checks for failure are needed. [This is] a series of patches for qemu-xen, making the code identical to the xen support patches being submitted to upstream qemu. The review process on qemu-devel resulted in a number of fixes and cleanups in the backend code, this is where most of the changes come from. There are also some xenfb changes due to displaystate reorganization and xenfb being merged in steps due to that. Signed-off-by: Gerd Hoffmann <kraxel@xxxxxxxxxx> --- hw/xen_backend.c | 14 ++++++++++---- hw/xenfb.c | 2 -- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/hw/xen_backend.c b/hw/xen_backend.c index 56b001f..bb02634 100644 --- a/hw/xen_backend.c +++ b/hw/xen_backend.c @@ -67,9 +67,17 @@ char *xenstore_read_str(const char *base, const char *node) { char abspath[XEN_BUFSIZE]; unsigned int len; + char *str, *ret = NULL; snprintf(abspath, sizeof(abspath), "%s/%s", base, node); - return xs_read(xenstore, 0, abspath, &len); + str = xs_read(xenstore, 0, abspath, &len); + if (str != NULL) { + /* move to qemu-allocated memory to make sure + * callers can savely qemu_free() stuff. */ + ret = qemu_strdup(str); + free(str); + } + return ret; } int xenstore_write_int(const char *base, const char *node, int ival) @@ -184,8 +192,6 @@ static struct XenDevice *xen_be_get_xendev(const char *type, int dom, int dev, /* init new xendev */ xendev = qemu_mallocz(ops->size); - if (!xendev) - return NULL; xendev->type = type; xendev->dom = dom; xendev->dev = dev; @@ -519,7 +525,7 @@ static int xenstore_scan(const char *type, int dom, struct XenDevOps *ops) continue; xen_be_check_state(xendev); } - qemu_free(dev); + free(dev); return 0; } diff --git a/hw/xenfb.c b/hw/xenfb.c index 8336c82..1764ac2 100644 --- a/hw/xenfb.c +++ b/hw/xenfb.c @@ -483,8 +483,6 @@ static int xenfb_map_fb(struct XenFB *xenfb) pgmfns = qemu_mallocz(sizeof(unsigned long) * n_fbdirs); fbmfns = qemu_mallocz(sizeof(unsigned long) * xenfb->fbpages); - if (!pgmfns || !fbmfns) - goto out; xenfb_copy_mfns(mode, n_fbdirs, pgmfns, pd); map = xc_map_foreign_pages(xen_xc, xenfb->c.xendev.dom, -- generated by git-patchbot for /home/xen/git/qemu-xen-unstable.git _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |