diff options
Diffstat (limited to 'drivers/firmware/efi/efi.c')
| -rw-r--r-- | drivers/firmware/efi/efi.c | 4 | 
1 files changed, 2 insertions, 2 deletions
| diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c index 621220ab3d0e..21ea99f65113 100644 --- a/drivers/firmware/efi/efi.c +++ b/drivers/firmware/efi/efi.c @@ -552,7 +552,7 @@ int __init efi_config_parse_tables(void *config_tables, int count, int sz,  		seed = early_memremap(efi.rng_seed, sizeof(*seed));  		if (seed != NULL) { -			size = seed->size; +			size = READ_ONCE(seed->size);  			early_memunmap(seed, sizeof(*seed));  		} else {  			pr_err("Could not map UEFI random seed!\n"); @@ -562,7 +562,7 @@ int __init efi_config_parse_tables(void *config_tables, int count, int sz,  					      sizeof(*seed) + size);  			if (seed != NULL) {  				pr_notice("seeding entropy pool\n"); -				add_bootloader_randomness(seed->bits, seed->size); +				add_bootloader_randomness(seed->bits, size);  				early_memunmap(seed, sizeof(*seed) + size);  			} else {  				pr_err("Could not map UEFI random seed!\n"); |