From 24ae6a276d538a31f42feb5e988d15b08b444b4a Mon Sep 17 00:00:00 2001 From: Erik Skultety Date: Thu, 7 Jan 2021 16:48:40 +0100 Subject: [PATCH 078/108] hostdev: Update mdev pointer reference after checking device type MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We set the pointer to some garbage packed structure data without knowing whether we were actually handling the type of device we expected to be handling. On its own, this was harmless, because we'd never use the pointer as we'd skip the device if it were not the expected type. However, it's better to make the logic even more explicit - we first check the device and only when we're sure we have the expected type we then update the pointer shortcut. Signed-off-by: Erik Skultety Reviewed-by: Ján Tomko (cherry picked from commit 964738cff3d949d90fc5c3317a2618fcd8d217b4) --- src/hypervisor/virhostdev.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/hypervisor/virhostdev.c b/src/hypervisor/virhostdev.c index 9017cc3be8..c88c8bee0e 100644 --- a/src/hypervisor/virhostdev.c +++ b/src/hypervisor/virhostdev.c @@ -1986,11 +1986,11 @@ virHostdevReAttachMediatedDevices(virHostdevManagerPtr mgr, virDomainHostdevSubsysMediatedDevPtr mdevsrc; virDomainHostdevDefPtr hostdev = hostdevs[i]; - mdevsrc = &hostdev->source.subsys.u.mdev; - if (!virHostdevIsMdevDevice(hostdev)) continue; + mdevsrc = &hostdev->source.subsys.u.mdev; + if (!(mdev = virMediatedDeviceNew(mdevsrc->uuidstr, mdevsrc->model))) continue; -- 2.33.0