* Sergio Lopez ([email protected]) wrote: > > Dr. David Alan Gilbert (git) <[email protected]> writes: > > > From: Liu Bo <[email protected]> > > > > For fuse's queueinfo, both queueinfo array and queueinfos are allocated in > > fv_queue_set_started() but not cleaned up when the daemon process quits. > > > > This fixes the leak in proper places. > > > > Signed-off-by: Liu Bo <[email protected]> > > Signed-off-by: Eric Ren <[email protected]> > > --- > > tools/virtiofsd/fuse_virtio.c | 9 +++++++++ > > 1 file changed, 9 insertions(+) > > > > diff --git a/tools/virtiofsd/fuse_virtio.c b/tools/virtiofsd/fuse_virtio.c > > index 7b22ae8d4f..a364f23d5d 100644 > > --- a/tools/virtiofsd/fuse_virtio.c > > +++ b/tools/virtiofsd/fuse_virtio.c > > @@ -671,6 +671,8 @@ static void fv_queue_set_started(VuDev *dev, int qidx, > > bool started) > > } > > close(ourqi->kill_fd); > > ourqi->kick_fd = -1; > > + free(vud->qi[qidx]); > > + vud->qi[qidx] = NULL; > > } > > } > > > > @@ -878,6 +880,13 @@ int virtio_session_mount(struct fuse_session *se) > > void virtio_session_close(struct fuse_session *se) > > { > > close(se->vu_socketfd); > > + > > + if (!se->virtio_dev) { > > + return; > > + } > > + > > + close(se->vu_socketfd); > > + free(se->virtio_dev->qi); > > free(se->virtio_dev); > > se->virtio_dev = NULL; > > } > > There's a duplicated "close(se->vu_socketfd);" statement here.
Yep, already spotted/fixed: https://lists.gnu.org/archive/html/qemu-devel/2020-01/msg02901.html Dave > Sergio. -- Dr. David Alan Gilbert / [email protected] / Manchester, UK
