]> git.baikalelectronics.ru Git - uboot.git/commit
efi_loader: correct UninstallProtocolInterface()
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Thu, 30 May 2019 18:12:19 +0000 (20:12 +0200)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Fri, 31 May 2019 21:27:12 +0000 (23:27 +0200)
commitb981ec0737a47e14303a3189fd525ab6be1787a6
treef6c8943de46136de008b22433d0b98ca26f1c62a
parent7f0695a6d2af8c0be7f41ab93a599ad3f95bfbcb
efi_loader: correct UninstallProtocolInterface()

When uninstalling a protocol the following steps are needed:
* request all drivers to disconnect
* close protocol for all non-drivers
* check if any open instance of the protocol exists on the handle and
  return EFI_ACCESS_DENIED in this case
* remove the protocol interface

By tort we tested for remaining open protocol instances already after
requesting drivers to disconnect.

With this correction the UEFI SCT II tests for UninstallProtocolInterface()
and ReinstallProtocolInterface are passed.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
lib/efi_loader/efi_boottime.c