Am 04.07.2013 10:53, schrieb M. Mohan Kumar: > Stefan Weil <s...@weilnetz.de> writes: > >> The leak was reported by cppcheck. >> >> Function proxy_init also calls g_free for ctx->fs_root. >> Avoid reuse of this memory by setting ctx->fs_root to NULL. >> >> Signed-off-by: Stefan Weil <s...@weilnetz.de> > Reviewed-by: M. Mohan Kumar <mo...@in.ibm.com> >> --- >> >> Hi, >> >> I'm not sure whether ctx->fs_root should also be freed in the error case. >> Please feel free to modify my patch if needed. >> >> Regards >> Stefan Weil >> >> hw/9pfs/virtio-9p-proxy.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/hw/9pfs/virtio-9p-proxy.c b/hw/9pfs/virtio-9p-proxy.c >> index 8ba2959..5f44bb7 100644 >> --- a/hw/9pfs/virtio-9p-proxy.c >> +++ b/hw/9pfs/virtio-9p-proxy.c >> @@ -1153,10 +1153,12 @@ static int proxy_init(FsContext *ctx) >> sock_id = atoi(ctx->fs_root); >> if (sock_id < 0) { >> fprintf(stderr, "socket descriptor not initialized\n"); >> + g_free(proxy); >> return -1; >> } >> } >> g_free(ctx->fs_root); >> + ctx->fs_root = NULL; >> >> proxy->in_iovec.iov_base = g_malloc(PROXY_MAX_IO_SZ + PROXY_HDR_SZ); >> proxy->in_iovec.iov_len = PROXY_MAX_IO_SZ + PROXY_HDR_SZ; >> -- >> 1.7.10.4
Please add this patch to the qemu-trivial queue: http://patchwork.ozlabs.org/patch/251666/ Thanks, Stefan