mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
qemu: Introduce qemuGetHostdevPath
Introduce a convenience function to handle formulating the hostdev path Signed-off-by: John Ferlan <jferlan@redhat.com>
This commit is contained in:
parent
8c43258ed5
commit
083cbe506b
@ -1213,13 +1213,12 @@ qemuIsSharedHostdev(virDomainHostdevDefPtr hostdev)
|
|||||||
|
|
||||||
|
|
||||||
static char *
|
static char *
|
||||||
qemuGetSharedHostdevKey(virDomainHostdevDefPtr hostdev)
|
qemuGetHostdevPath(virDomainHostdevDefPtr hostdev)
|
||||||
{
|
{
|
||||||
virDomainHostdevSubsysSCSIPtr scsisrc = &hostdev->source.subsys.u.scsi;
|
virDomainHostdevSubsysSCSIPtr scsisrc = &hostdev->source.subsys.u.scsi;
|
||||||
virDomainHostdevSubsysSCSIHostPtr scsihostsrc = &scsisrc->u.host;
|
virDomainHostdevSubsysSCSIHostPtr scsihostsrc = &scsisrc->u.host;
|
||||||
char *dev_name = NULL;
|
char *dev_name = NULL;
|
||||||
char *dev_path = NULL;
|
char *dev_path = NULL;
|
||||||
char *key = NULL;
|
|
||||||
|
|
||||||
if (!(dev_name = virSCSIDeviceGetDevName(NULL,
|
if (!(dev_name = virSCSIDeviceGetDevName(NULL,
|
||||||
scsihostsrc->adapter,
|
scsihostsrc->adapter,
|
||||||
@ -1228,19 +1227,33 @@ qemuGetSharedHostdevKey(virDomainHostdevDefPtr hostdev)
|
|||||||
scsihostsrc->unit)))
|
scsihostsrc->unit)))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (virAsprintf(&dev_path, "/dev/%s", dev_name) < 0)
|
ignore_value(virAsprintf(&dev_path, "/dev/%s", dev_name));
|
||||||
|
|
||||||
|
cleanup:
|
||||||
|
VIR_FREE(dev_name);
|
||||||
|
return dev_path;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static char *
|
||||||
|
qemuGetSharedHostdevKey(virDomainHostdevDefPtr hostdev)
|
||||||
|
{
|
||||||
|
char *key = NULL;
|
||||||
|
char *dev_path = NULL;
|
||||||
|
|
||||||
|
if (!(dev_path = qemuGetHostdevPath(hostdev)))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (!(key = qemuGetSharedDeviceKey(dev_path)))
|
if (!(key = qemuGetSharedDeviceKey(dev_path)))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
VIR_FREE(dev_name);
|
|
||||||
VIR_FREE(dev_path);
|
VIR_FREE(dev_path);
|
||||||
|
|
||||||
return key;
|
return key;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
qemuAddSharedHostdev(virQEMUDriverPtr driver,
|
qemuAddSharedHostdev(virQEMUDriverPtr driver,
|
||||||
virDomainHostdevDefPtr hostdev,
|
virDomainHostdevDefPtr hostdev,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user