In XenBusDxe, the XenBusAddDevice() opens the gXenIoProtocolGuid on behalf of child controllers. It is never closed and prevent from uninstalling the protocol.
Close it were we stop all the childs in XenBusDxe->Stop(). Signed-off-by: Anthony PERARD <anthony.per...@citrix.com> --- OvmfPkg/XenBusDxe/XenBusDxe.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/OvmfPkg/XenBusDxe/XenBusDxe.c b/OvmfPkg/XenBusDxe/XenBusDxe.c index 0e63707f50..fac6f3a09d 100644 --- a/OvmfPkg/XenBusDxe/XenBusDxe.c +++ b/OvmfPkg/XenBusDxe/XenBusDxe.c @@ -453,6 +453,11 @@ XenBusDxeDriverBindingStop ( continue; } + Status = gBS->CloseProtocol (Dev->ControllerHandle, &gXenIoProtocolGuid, + Dev->This->DriverBindingHandle, + ChildData->Handle); + ASSERT_EFI_ERROR (Status); + Status = gBS->UninstallMultipleProtocolInterfaces ( ChildData->Handle, &gEfiDevicePathProtocolGuid, ChildData->DevicePath, -- Anthony PERARD -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43031): https://edk2.groups.io/g/devel/message/43031 Mute This Topic: https://groups.io/mt/32243460/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-