[libvirt] [PATCH 0/1] Don't update vol details after build

This patch fixes the bug reported at: https://bugzilla.redhat.com/show_bug.cgi?id=510450 See the patch for details. Dave

* This patch removes the call to vol update after the volume build completes. The update call is currently meaningless anyway because the vol build is passed a copy of the definition, so the update result is thrown away. More importantly, if the user specified a selinux label for the volume, the update call results in a double free of the label. --- src/storage/storage_backend_fs.c | 8 -------- 1 files changed, 0 insertions(+), 8 deletions(-) diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c index b7d4bd6..4fe40b3 100644 --- a/src/storage/storage_backend_fs.c +++ b/src/storage/storage_backend_fs.c @@ -822,14 +822,6 @@ _virStorageBackendFileSystemVolBuild(virConnectPtr conn, return -1; } - /* Refresh allocation / permissions info, but not capacity */ - if (virStorageBackendUpdateVolTargetInfoFD(conn, &vol->target, fd, - &vol->allocation, - NULL) < 0) { - close(fd); - return -1; - } - if (close(fd) < 0) { virReportSystemError(conn, errno, _("cannot close file '%s'"), -- 1.6.5.5

On 12/23/2009 04:56 PM, David Allan wrote:
* This patch removes the call to vol update after the volume build completes. The update call is currently meaningless anyway because the vol build is passed a copy of the definition, so the update result is thrown away. More importantly, if the user specified a selinux label for the volume, the update call results in a double free of the label. --- src/storage/storage_backend_fs.c | 8 -------- 1 files changed, 0 insertions(+), 8 deletions(-)
diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c index b7d4bd6..4fe40b3 100644 --- a/src/storage/storage_backend_fs.c +++ b/src/storage/storage_backend_fs.c @@ -822,14 +822,6 @@ _virStorageBackendFileSystemVolBuild(virConnectPtr conn, return -1; }
- /* Refresh allocation / permissions info, but not capacity */ - if (virStorageBackendUpdateVolTargetInfoFD(conn, &vol->target, fd, - &vol->allocation, - NULL) < 0) { - close(fd); - return -1; - } - if (close(fd) < 0) { virReportSystemError(conn, errno, _("cannot close file '%s'"),
ACK - Cole

On Mon, Jan 04, 2010 at 11:46:37AM -0500, Cole Robinson wrote:
On 12/23/2009 04:56 PM, David Allan wrote:
* This patch removes the call to vol update after the volume build completes. The update call is currently meaningless anyway because the vol build is passed a copy of the definition, so the update result is thrown away. More importantly, if the user specified a selinux label for the volume, the update call results in a double free of the label. --- src/storage/storage_backend_fs.c | 8 -------- 1 files changed, 0 insertions(+), 8 deletions(-)
diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c index b7d4bd6..4fe40b3 100644 --- a/src/storage/storage_backend_fs.c +++ b/src/storage/storage_backend_fs.c @@ -822,14 +822,6 @@ _virStorageBackendFileSystemVolBuild(virConnectPtr conn, return -1; }
- /* Refresh allocation / permissions info, but not capacity */ - if (virStorageBackendUpdateVolTargetInfoFD(conn, &vol->target, fd, - &vol->allocation, - NULL) < 0) { - close(fd); - return -1; - } - if (close(fd) < 0) { virReportSystemError(conn, errno, _("cannot close file '%s'"),
ACK
Okay, pushed, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/
participants (3)
-
Cole Robinson
-
Daniel Veillard
-
David Allan