<div dir="ltr">Hi<br><div><br><div class="gmail_quote"><div dir="ltr">On Fri, Feb 10, 2017 at 6:57 PM Michal Privoznik <<a href="mailto:mprivozn@redhat.com">mprivozn@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There's no need for this function. Currently it is passed as a<br class="gmail_msg">
callback to virSCSIVHostDeviceFileIterate(). However, SCSI host<br class="gmail_msg">
devices have just one file path. Therefore we can mimic approach<br class="gmail_msg">
used in qemuDomainGetHostdevPath() to get path and call<br class="gmail_msg">
virCgroupAllowDevicePath() directly.<br class="gmail_msg">
<br class="gmail_msg">
Signed-off-by: Michal Privoznik <<a href="mailto:mprivozn@redhat.com" class="gmail_msg" target="_blank">mprivozn@redhat.com</a>><br class="gmail_msg"></blockquote><div><br><br>Reviewed-by: Marc-André Lureau <<a href="mailto:marcandre.lureau@redhat.com">marcandre.lureau@redhat.com</a>><div style="color:rgb(0,0,0);font-family:sans;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:21px;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br class="inbox-inbox-Apple-interchange-newline"></div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
---<br class="gmail_msg">
 src/qemu/qemu_cgroup.c | 33 +++++++++++----------------------<br class="gmail_msg">
 1 file changed, 11 insertions(+), 22 deletions(-)<br class="gmail_msg">
<br class="gmail_msg">
diff --git a/src/qemu/qemu_cgroup.c b/src/qemu/qemu_cgroup.c<br class="gmail_msg">
index 6017da662..89854b5bd 100644<br class="gmail_msg">
--- a/src/qemu/qemu_cgroup.c<br class="gmail_msg">
+++ b/src/qemu/qemu_cgroup.c<br class="gmail_msg">
@@ -260,25 +260,6 @@ qemuSetupInputCgroup(virDomainObjPtr vm,<br class="gmail_msg">
 }<br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
-static int<br class="gmail_msg">
-qemuSetupHostSCSIVHostDeviceCgroup(virSCSIVHostDevicePtr dev ATTRIBUTE_UNUSED,<br class="gmail_msg">
-                                   const char *path,<br class="gmail_msg">
-                                   void *opaque)<br class="gmail_msg">
-{<br class="gmail_msg">
-    virDomainObjPtr vm = opaque;<br class="gmail_msg">
-    qemuDomainObjPrivatePtr priv = vm->privateData;<br class="gmail_msg">
-    int ret;<br class="gmail_msg">
-<br class="gmail_msg">
-    VIR_DEBUG("Process path '%s' for scsi_host device", path);<br class="gmail_msg">
-<br class="gmail_msg">
-    ret = virCgroupAllowDevicePath(priv->cgroup, path,<br class="gmail_msg">
-                                   VIR_CGROUP_DEVICE_RW, false);<br class="gmail_msg">
-<br class="gmail_msg">
-    virDomainAuditCgroupPath(vm, priv->cgroup, "allow", path, "rw", ret == 0);<br class="gmail_msg">
-<br class="gmail_msg">
-    return ret;<br class="gmail_msg">
-}<br class="gmail_msg">
-<br class="gmail_msg">
 int<br class="gmail_msg">
 qemuSetupHostdevCgroup(virDomainObjPtr vm,<br class="gmail_msg">
                        virDomainHostdevDefPtr dev)<br class="gmail_msg">
@@ -397,9 +378,17 @@ qemuSetupHostdevCgroup(virDomainObjPtr vm,<br class="gmail_msg">
                 if (!(host = virSCSIVHostDeviceNew(hostsrc->wwpn)))<br class="gmail_msg">
                     goto cleanup;<br class="gmail_msg">
<br class="gmail_msg">
-                if (virSCSIVHostDeviceFileIterate(host,<br class="gmail_msg">
-                                             qemuSetupHostSCSIVHostDeviceCgroup,<br class="gmail_msg">
-                                             vm) < 0)<br class="gmail_msg">
+                if (VIR_STRDUP(path, virSCSIVHostDeviceGetPath(host)) < 0)<br class="gmail_msg">
+                    goto cleanup;<br class="gmail_msg">
+<br class="gmail_msg">
+                VIR_DEBUG("Process path '%s' for scsi_host device", path);<br class="gmail_msg">
+<br class="gmail_msg">
+                rv = virCgroupAllowDevicePath(priv->cgroup, path,<br class="gmail_msg">
+                                              VIR_CGROUP_DEVICE_RW, false);<br class="gmail_msg">
+<br class="gmail_msg">
+                virDomainAuditCgroupPath(vm, priv->cgroup,<br class="gmail_msg">
+                                         "allow", path, "rw", rv == 0);<br class="gmail_msg">
+                if (rv < 0)<br class="gmail_msg">
                     goto cleanup;<br class="gmail_msg">
             }<br class="gmail_msg">
             break;<br class="gmail_msg">
--<br class="gmail_msg">
2.11.0<br class="gmail_msg">
<br class="gmail_msg">
--<br class="gmail_msg">
libvir-list mailing list<br class="gmail_msg">
<a href="mailto:libvir-list@redhat.com" class="gmail_msg" target="_blank">libvir-list@redhat.com</a><br class="gmail_msg">
<a href="https://www.redhat.com/mailman/listinfo/libvir-list" rel="noreferrer" class="gmail_msg" target="_blank">https://www.redhat.com/mailman/listinfo/libvir-list</a><br class="gmail_msg">
</blockquote></div></div></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr">Marc-André Lureau<br></div></div>