diff options
| -rw-r--r-- | arch/x86/platform/efi/quirks.c | 3 | ||||
| -rw-r--r-- | drivers/firmware/efi/efi.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/platform/efi/quirks.c b/arch/x86/platform/efi/quirks.c index feb77777c8b8..632b83885867 100644 --- a/arch/x86/platform/efi/quirks.c +++ b/arch/x86/platform/efi/quirks.c | |||
| @@ -513,6 +513,9 @@ int __init efi_reuse_config(u64 tables, int nr_tables) | |||
| 513 | void *p, *tablep; | 513 | void *p, *tablep; |
| 514 | struct efi_setup_data *data; | 514 | struct efi_setup_data *data; |
| 515 | 515 | ||
| 516 | if (nr_tables == 0) | ||
| 517 | return 0; | ||
| 518 | |||
| 516 | if (!efi_setup) | 519 | if (!efi_setup) |
| 517 | return 0; | 520 | return 0; |
| 518 | 521 | ||
diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c index 55b77c576c42..521a541d02ad 100644 --- a/drivers/firmware/efi/efi.c +++ b/drivers/firmware/efi/efi.c | |||
| @@ -636,6 +636,9 @@ int __init efi_config_init(efi_config_table_type_t *arch_tables) | |||
| 636 | void *config_tables; | 636 | void *config_tables; |
| 637 | int sz, ret; | 637 | int sz, ret; |
| 638 | 638 | ||
| 639 | if (efi.systab->nr_tables == 0) | ||
| 640 | return 0; | ||
| 641 | |||
| 639 | if (efi_enabled(EFI_64BIT)) | 642 | if (efi_enabled(EFI_64BIT)) |
| 640 | sz = sizeof(efi_config_table_64_t); | 643 | sz = sizeof(efi_config_table_64_t); |
| 641 | else | 644 | else |
