]> git.proxmox.com Git - mirror_edk2.git/commitdiff
OvmfPkg/XenBusDxe: Don't call DisconnectController in Stop()
authorAnthony PERARD <anthony.perard@citrix.com>
Mon, 1 Jul 2019 11:14:03 +0000 (12:14 +0100)
committerLaszlo Ersek <lersek@redhat.com>
Mon, 1 Jul 2019 14:46:51 +0000 (16:46 +0200)
Calling DisconnectController() on children isn't part of the job of
EFI_DRIVER_BINDING_PROTOCOL.Stop() as it only needs to deallocate
resources allocated in Start(). The disconnection will happen when
both DevicePath and XenBus protocols gets uninstalled.

Reported-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Message-Id: <20190701111403.7007-1-anthony.perard@citrix.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
OvmfPkg/XenBusDxe/XenBusDxe.c

index 7c07a96650cac7d2f2d315e0842a314789aa1c4c..634c7b71eb551b889add898bdefa4aa22c9039d2 100644 (file)
@@ -446,12 +446,6 @@ XenBusDxeDriverBindingStop (
       continue;\r
     }\r
     ChildData = XENBUS_PRIVATE_DATA_FROM_THIS (XenBusIo);\r
-    Status = gBS->DisconnectController (ChildData->Handle, NULL, NULL);\r
-    if (EFI_ERROR (Status)) {\r
-      DEBUG ((EFI_D_ERROR, "XenBusDxe: error disconnecting child: %r\n",\r
-              Status));\r
-      continue;\r
-    }\r
 \r
     Status = gBS->CloseProtocol (Dev->ControllerHandle, &gXenIoProtocolGuid,\r
                     Dev->This->DriverBindingHandle, ChildData->Handle);\r