[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 10/12] 9pfs: fix memory leak in v9fs_xattrcreate
From: |
Greg Kurz |
Subject: |
[Qemu-devel] [PULL 10/12] 9pfs: fix memory leak in v9fs_xattrcreate |
Date: |
Mon, 17 Oct 2016 17:05:52 +0200 |
From: Li Qiang <address@hidden>
The 'fs.xattr.value' field in V9fsFidState object doesn't consider the
situation that this field has been allocated previously. Every time, it
will be allocated directly. This leads to a host memory leak issue if
the client sends another Txattrcreate message with the same fid number
before the fid from the previous time got clunked.
Signed-off-by: Li Qiang <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
[groug, updated the changelog to indicate how the leak can occur]
Signed-off-by: Greg Kurz <address@hidden>
---
hw/9pfs/9p.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c
index bf23b011a8eb..66135cf12183 100644
--- a/hw/9pfs/9p.c
+++ b/hw/9pfs/9p.c
@@ -3282,6 +3282,7 @@ static void coroutine_fn v9fs_xattrcreate(void *opaque)
xattr_fidp->fs.xattr.flags = flags;
v9fs_string_init(&xattr_fidp->fs.xattr.name);
v9fs_string_copy(&xattr_fidp->fs.xattr.name, &name);
+ g_free(xattr_fidp->fs.xattr.value);
xattr_fidp->fs.xattr.value = g_malloc0(size);
err = offset;
put_fid(pdu, file_fidp);
--
2.5.5
- [Qemu-devel] [PULL 00/12] 9p patches for 2.8 20161017, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 02/12] 9pfs: fix potential host memory leak in v9fs_read, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 01/12] 9pfs: allocate space for guest originated empty strings, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 06/12] 9pfs: drop useless check in pdu_free(), Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 05/12] 9pfs: use coroutine_fn annotation in hw/9pfs/9p.[ch], Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 04/12] 9pfs: use coroutine_fn annotation in hw/9pfs/co*.[ch], Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 03/12] 9pfs: fsdev: drop useless extern annotation for functions, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 08/12] virtio-9p: add reset handler, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 07/12] 9pfs: only free completed request if not flushed, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 11/12] 9pfs: fix memory leak in v9fs_link, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 10/12] 9pfs: fix memory leak in v9fs_xattrcreate,
Greg Kurz <=
- [Qemu-devel] [PULL 09/12] 9pfs: fix information leak in xattr read, Greg Kurz, 2016/10/17
- [Qemu-devel] [PULL 12/12] 9pfs: fix memory leak in v9fs_write, Greg Kurz, 2016/10/17
- Re: [Qemu-devel] [PULL 00/12] 9p patches for 2.8 20161017, Peter Maydell, 2016/10/17