From 60ddceff8f4ef076d24ddbd0a66f35e1666e9ebe Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Thu, 9 Feb 2017 10:30:23 +0100 Subject: [PATCH] qemu_cgroup: Kill qemuSetupHostSCSIVHostDeviceCgroup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit There's no need for this function. Currently it is passed as a callback to virSCSIVHostDeviceFileIterate(). However, SCSI host devices have just one file path. Therefore we can mimic approach used in qemuDomainGetHostdevPath() to get path and call virCgroupAllowDevicePath() directly. Signed-off-by: Michal Privoznik Reviewed-by: Marc-André Lureau --- src/qemu/qemu_cgroup.c | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/src/qemu/qemu_cgroup.c b/src/qemu/qemu_cgroup.c index 6017da662a..89854b5bd0 100644 --- a/src/qemu/qemu_cgroup.c +++ b/src/qemu/qemu_cgroup.c @@ -260,25 +260,6 @@ qemuSetupInputCgroup(virDomainObjPtr vm, } -static int -qemuSetupHostSCSIVHostDeviceCgroup(virSCSIVHostDevicePtr dev ATTRIBUTE_UNUSED, - const char *path, - void *opaque) -{ - virDomainObjPtr vm = opaque; - qemuDomainObjPrivatePtr priv = vm->privateData; - int ret; - - VIR_DEBUG("Process path '%s' for scsi_host device", path); - - ret = virCgroupAllowDevicePath(priv->cgroup, path, - VIR_CGROUP_DEVICE_RW, false); - - virDomainAuditCgroupPath(vm, priv->cgroup, "allow", path, "rw", ret == 0); - - return ret; -} - int qemuSetupHostdevCgroup(virDomainObjPtr vm, virDomainHostdevDefPtr dev) @@ -397,9 +378,17 @@ qemuSetupHostdevCgroup(virDomainObjPtr vm, if (!(host = virSCSIVHostDeviceNew(hostsrc->wwpn))) goto cleanup; - if (virSCSIVHostDeviceFileIterate(host, - qemuSetupHostSCSIVHostDeviceCgroup, - vm) < 0) + if (VIR_STRDUP(path, virSCSIVHostDeviceGetPath(host)) < 0) + goto cleanup; + + VIR_DEBUG("Process path '%s' for scsi_host device", path); + + rv = virCgroupAllowDevicePath(priv->cgroup, path, + VIR_CGROUP_DEVICE_RW, false); + + virDomainAuditCgroupPath(vm, priv->cgroup, + "allow", path, "rw", rv == 0); + if (rv < 0) goto cleanup; } break;