Merge tag 'efi-next-for-v6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi
[sfrench/cifs-2.6.git] / drivers / firmware / efi / libstub / x86-stub.c
index 0336ed175e671a0ec53b8700a23addaeccddfca5..4f448d4df7b822980c7cb221c281e9ed9bf74deb 100644 (file)
@@ -236,6 +236,15 @@ efi_status_t efi_adjust_memory_range_protection(unsigned long start,
        rounded_end = roundup(start + size, EFI_PAGE_SIZE);
 
        if (memattr != NULL) {
+               status = efi_call_proto(memattr, set_memory_attributes,
+                                       rounded_start,
+                                       rounded_end - rounded_start,
+                                       EFI_MEMORY_RO);
+               if (status != EFI_SUCCESS) {
+                       efi_warn("Failed to set EFI_MEMORY_RO attribute\n");
+                       return status;
+               }
+
                status = efi_call_proto(memattr, clear_memory_attributes,
                                        rounded_start,
                                        rounded_end - rounded_start,
@@ -812,7 +821,7 @@ static efi_status_t efi_decompress_kernel(unsigned long *kernel_entry)
 
        *kernel_entry = addr + entry;
 
-       return efi_adjust_memory_range_protection(addr, kernel_total_size);
+       return efi_adjust_memory_range_protection(addr, kernel_text_size);
 }
 
 static void __noreturn enter_kernel(unsigned long kernel_addr,
@@ -926,7 +935,7 @@ void __noreturn efi_stub_entry(efi_handle_t handle,
 
        efi_random_get_seed();
 
-       efi_retrieve_tpm2_eventlog();
+       efi_retrieve_eventlog();
 
        setup_graphics(boot_params);