]> git.ipfire.org Git - thirdparty/ipxe.git/commit
[efi] Open device path protocol only at point of use
authorMichael Brown <mcb30@ipxe.org>
Tue, 5 Aug 2014 19:49:42 +0000 (20:49 +0100)
committerMichael Brown <mcb30@ipxe.org>
Tue, 5 Aug 2014 22:10:33 +0000 (23:10 +0100)
commit7b3cc18462425ab816348103f1bfa2546d248d37
treeed3c38e2d663c51e74d81f7638b2ead8afd4aaaf
parent3b42ed477f21ee3f5851dc2993ea670e9edc10f7
[efi] Open device path protocol only at point of use

Some EFI 1.10 systems (observed on an Apple iMac) do not allow us to
open the device path protocol with an attribute of
EFI_OPEN_PROTOCOL_BY_DRIVER and so we cannot maintain a safe,
long-lived pointer to the device path.  Work around this by instead
opening the device path protocol with an attribute of
EFI_OPEN_PROTOCOL_GET_PROTOCOL whenever we need to use it.

Debugged-by: Curtis Larsen <larsen@dixie.edu>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/drivers/net/efi/snpnet.c
src/image/efi_image.c
src/include/ipxe/efi/efi_driver.h
src/include/ipxe/efi/efi_snp.h
src/interface/efi/efi_driver.c
src/interface/efi/efi_snp.c