The device path will be necessary for upcoming patch to allow sgio
settings on a hostdev
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
src/qemu/qemu_conf.c | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
index faa0b49..797e5f1 100644
--- a/src/qemu/qemu_conf.c
+++ b/src/qemu/qemu_conf.c
@@ -1258,20 +1258,14 @@ qemuGetHostdevPath(virDomainHostdevDefPtr hostdev)
static char *
-qemuGetSharedHostdevKey(virDomainHostdevDefPtr hostdev)
+qemuGetSharedHostdevKey(const char *dev_path)
{
char *key = NULL;
- char *dev_path = NULL;
-
- if (!(dev_path = qemuGetHostdevPath(hostdev)))
- goto cleanup;
if (!(key = qemuGetSharedDeviceKey(dev_path)))
goto cleanup;
cleanup:
- VIR_FREE(dev_path);
-
return key;
}
@@ -1280,6 +1274,7 @@ qemuAddSharedHostdev(virQEMUDriverPtr driver,
virDomainHostdevDefPtr hostdev,
const char *name)
{
+ char *dev_path = NULL;
char *key = NULL;
int ret = -1;
@@ -1288,7 +1283,10 @@ qemuAddSharedHostdev(virQEMUDriverPtr driver,
qemuDriverLock(driver);
- if (!(key = qemuGetSharedHostdevKey(hostdev)))
+ if (!(dev_path = qemuGetHostdevPath(hostdev)))
+ goto cleanup;
+
+ if (!(key = qemuGetSharedHostdevKey(dev_path)))
goto cleanup;
if (qemuSharedDeviceEntryInsert(driver, key, name) < 0)
@@ -1298,6 +1296,7 @@ qemuAddSharedHostdev(virQEMUDriverPtr driver,
cleanup:
qemuDriverUnlock(driver);
+ VIR_FREE(dev_path);
VIR_FREE(key);
return ret;
}
@@ -1386,6 +1385,7 @@ qemuRemoveSharedHostdev(virQEMUDriverPtr driver,
virDomainHostdevDefPtr hostdev,
const char *name)
{
+ char *dev_path = NULL;
char *key = NULL;
int ret = -1;
@@ -1394,7 +1394,10 @@ qemuRemoveSharedHostdev(virQEMUDriverPtr driver,
qemuDriverLock(driver);
- if (!(key = qemuGetSharedHostdevKey(hostdev)))
+ if (!(dev_path = qemuGetHostdevPath(hostdev)))
+ goto cleanup;
+
+ if (!(key = qemuGetSharedHostdevKey(dev_path)))
goto cleanup;
if (qemuSharedDeviceEntryRemove(driver, key, name) < 0)
@@ -1403,6 +1406,7 @@ qemuRemoveSharedHostdev(virQEMUDriverPtr driver,
ret = 0;
cleanup:
qemuDriverUnlock(driver);
+ VIR_FREE(dev_path);
VIR_FREE(key);
return ret;
}
--
2.1.0