]> git.proxmox.com Git - mirror_qemu.git/commit
block/nfs: fix mutex assertion in nfs_file_close()
authorJeff Cody <jcody@redhat.com>
Mon, 7 Aug 2017 22:29:09 +0000 (18:29 -0400)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Thu, 24 Aug 2017 23:41:21 +0000 (18:41 -0500)
commitf4f3529cfef70c87df94c00691fbea531aa59166
tree6cd29f101f9d98c1bcf97ed945867e2d8a9b1285
parent5f7f7e4f0562508df96e26da3ed3ce3a42247114
block/nfs: fix mutex assertion in nfs_file_close()

Commit c096358e747e88fc7364e40e3c354ee0bb683960 introduced assertion
checks for when qemu_mutex() functions are called without the
corresponding qemu_mutex_init() having initialized the mutex.

This uncovered a latent bug in qemu's nfs driver - in
nfs_client_close(), the NFSClient structure is overwritten with zeros,
prior to the mutex being destroyed.

Go ahead and destroy the mutex in nfs_client_close(), and change where
we call qemu_mutex_init() so that it is correctly balanced.

There are also a couple of memory leaks obscured by the memset, so this
fixes those as well.

Finally, we should be able to get rid of the memset(), as it isn't
necessary.

Cc: qemu-stable@nongnu.org
Signed-off-by: Jeff Cody <jcody@redhat.com>
Reviewed-by: Peter Lieven <pl@kamp.de>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
(cherry picked from commit 113fe792fd4931dd0538f03859278b8719ee4fa2)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
block/nfs.c