diff options
author | Michael Brown <mcb30@ipxe.org> | 2020-10-01 23:23:10 +0100 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2020-10-02 00:36:33 +0100 |
commit | c70b3e04e86cefca335e36f883829d89583a6921 (patch) | |
tree | 5e6c2e3c67ce11cc01b457c2d1f554e954fbc74c /src | |
parent | fbb5989fd9a5ddbbde6e273c7bb3ba75ec9f1ebb (diff) | |
download | ipxe-c70b3e04e86cefca335e36f883829d89583a6921.tar.gz |
[efi] Always enable recursion when calling ConnectController()
There appears to be no reason for avoiding recursion when calling
ConnectController(), and recursion provides the least surprising
behaviour.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/interface/efi/efi_block.c | 2 | ||||
-rw-r--r-- | src/interface/efi/efi_driver.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/interface/efi/efi_block.c b/src/interface/efi/efi_block.c index 64d1e1980..0024fbbea 100644 --- a/src/interface/efi/efi_block.c +++ b/src/interface/efi/efi_block.c @@ -237,7 +237,7 @@ static void efi_block_connect ( struct san_device *sandev ) { /* Try to connect all possible drivers to this block device */ if ( ( efirc = bs->ConnectController ( block->handle, NULL, - NULL, 1 ) ) != 0 ) { + NULL, TRUE ) ) != 0 ) { rc = -EEFI ( efirc ); DBGC ( sandev, "EFIBLK %#02x could not connect drivers: %s\n", sandev->drive, strerror ( rc ) ); diff --git a/src/interface/efi/efi_driver.c b/src/interface/efi/efi_driver.c index 760ee41a8..a6c0f3032 100644 --- a/src/interface/efi/efi_driver.c +++ b/src/interface/efi/efi_driver.c @@ -470,7 +470,7 @@ static int efi_driver_connect ( EFI_HANDLE device ) { DBGC ( device, "EFIDRV %s connecting new drivers\n", efi_handle_name ( device ) ); if ( ( efirc = bs->ConnectController ( device, drivers, NULL, - FALSE ) ) != 0 ) { + TRUE ) ) != 0 ) { rc = -EEFI_CONNECT ( efirc ); DBGC ( device, "EFIDRV %s could not connect new drivers: " "%s\n", efi_handle_name ( device ), strerror ( rc ) ); @@ -520,7 +520,7 @@ static int efi_driver_reconnect ( EFI_HANDLE device ) { EFI_BOOT_SERVICES *bs = efi_systab->BootServices; /* Reconnect any available driver */ - bs->ConnectController ( device, NULL, NULL, FALSE ); + bs->ConnectController ( device, NULL, NULL, TRUE ); return 0; } |