Hi,
On 8/6/19 4:45 PM, Dave Young wrote:
On 08/05/19 at 07:49pm, Chen, Rong A wrote:
Hi,
On 8/2/2019 5:30 PM, Borislav Petkov wrote:
On Fri, Aug 02, 2019 at 03:48:53PM +0800, kernel test robot wrote:
FYI, we noticed the following commit (built with gcc-7):
commit: 5b51ae969e3d8ab0134ee3c98a769ad6d2cc2e24 ("x86/boot: Call get_rsdp_addr() after console_init()")
https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux.git master
in testcase: boot
on test machine: Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz with 4G memory
The commit broke kexec boot on physical machines, We have to set "nokaslr" to kernel cmdline to avoid the issue.
How exactly do you trigger it? Details?
We use the following command to boot a new kernel:
kexec --noefi -l /opt/rootfs/tmp/pkg/linux/x86_64-rhel-7.6/gcc-7/5b51ae969e3d8ab0134ee3c98a769ad6d2cc2e24/vmlinuz-5.2.0-rc3-00004-g5b51ae969e3d8a
--initrd=/opt/rootfs/tmp/initrd-concatenated
--noefi is a corner case as kexec now supports efi, it is expected not
work with old kexec-tools in case you do not use acpi_rsdp= cmdline
explicitly.
I suspect it is still the rsdp getting failed instead of the moving
chunk after console_init.
Can you do more testing?
1. test latest kexec-tools
git://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git
There's no problem if using the latest kexec-tools
root@lkp-bdw-de1 ~# ./kexec --version
kexec-tools 2.0.20
root@lkp-bdw-de1 ~# ./kexec --noefi -l
vmlinuz-5.2.0-rc3-00004-g5b51ae969e3d8a --initrd final_initrd-borrow
--reuse-cmdline
root@lkp-bdw-de1 ~# ./kexec -e
2. still use your old kexec-tools:
a. test without --noefi
root@lkp-bdw-de1 ~# kexec vmlinuz-5.2.0-rc3-00004-g5b51ae969e3d8a
--initrd final_initrd-borrow --reuse-cmdline
Unknown type (Reserved) while parsing /sys/firmware/memmap/7/type.
Please report this as bug. Using RANGE_RESERVED now.
Unknown type (Reserved) while parsing /sys/firmware/memmap/13/type.
Please report this as bug. Using RANGE_RESERVED now.
Unknown type (Reserved) while parsing /sys/firmware/memmap/11/type.
Please report this as bug. Using RANGE_RESERVED now.
Unknown type (Reserved) while parsing /sys/firmware/memmap/1/type.
Please report this as bug. Using RANGE_RESERVED now.
Unknown type (Reserved) while parsing /sys/firmware/memmap/4/type.
Please report this as bug. Using RANGE_RESERVED now.
Unknown type (Reserved) while parsing /sys/firmware/memmap/12/type.
Please report this as bug. Using RANGE_RESERVED now.
Unknown type (Reserved) while parsing /sys/firmware/memmap/2/type.
Please report this as bug. Using RANGE_RESERVED now.
Unknown type (Reserved) while parsing /sys/firmware/memmap/9/type.
Please report this as bug. Using RANGE_RESERVED now.
Connection to lkp-bdw-de1 closed by remote host.
Connection to lkp-bdw-de1 closed.
b. test with --noefi but with some appending acpi_rsdp= cmdline, for
example (enable serial to capture console log):
kexec --noefi -l .../vmlinuz-... --reuse-cmdline --append
"acpi_rsdp=0xaabbccdd earlyprintk=serial"
Sorry, I can't get console log from this machine.
Best Regards,
Rong Chen
Note: get the acpi pointer by:
cat /sys/firmware/efi/systab
for example on my laptop the acpi cmdline should be acpi_rsdp=0x7b5fe014:
[root@dhcp-*-* dyoung]# cat /sys/firmware/efi/systab
ACPI20=0x7b5fe014
ACPI=0x7b5fe000
SMBIOS3=0x7a671000
SMBIOS=0x7a674000
_______________________________________________
kexec mailing list
kexec@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/kexec