| From 7846f58fba964af7cb8cf77d4d13c33254725211 Mon Sep 17 00:00:00 2001 |
| From: John Hubbard <jhubbard@nvidia.com> |
| Date: Wed, 21 Aug 2019 12:25:13 -0700 |
| Subject: x86/boot: Fix boot regression caused by bootparam sanitizing |
| |
| From: John Hubbard <jhubbard@nvidia.com> |
| |
| commit 7846f58fba964af7cb8cf77d4d13c33254725211 upstream. |
| |
| commit a90118c445cc ("x86/boot: Save fields explicitly, zero out everything |
| else") had two errors: |
| |
| * It preserved boot_params.acpi_rsdp_addr, and |
| * It failed to preserve boot_params.hdr |
| |
| Therefore, zero out acpi_rsdp_addr, and preserve hdr. |
| |
| Fixes: a90118c445cc ("x86/boot: Save fields explicitly, zero out everything else") |
| Reported-by: Neil MacLeod <neil@nmacleod.com> |
| Suggested-by: Thomas Gleixner <tglx@linutronix.de> |
| Signed-off-by: John Hubbard <jhubbard@nvidia.com> |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| Tested-by: Neil MacLeod <neil@nmacleod.com> |
| Cc: stable@vger.kernel.org |
| Link: https://lkml.kernel.org/r/20190821192513.20126-1-jhubbard@nvidia.com |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/x86/include/asm/bootparam_utils.h | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/arch/x86/include/asm/bootparam_utils.h |
| +++ b/arch/x86/include/asm/bootparam_utils.h |
| @@ -71,6 +71,7 @@ static void sanitize_boot_params(struct |
| BOOT_PARAM_PRESERVE(eddbuf_entries), |
| BOOT_PARAM_PRESERVE(edd_mbr_sig_buf_entries), |
| BOOT_PARAM_PRESERVE(edd_mbr_sig_buffer), |
| + BOOT_PARAM_PRESERVE(hdr), |
| BOOT_PARAM_PRESERVE(e820_table), |
| BOOT_PARAM_PRESERVE(eddbuf), |
| }; |