X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=kernel%2Fkexec.c;h=e62ec4dc662060764acc1ad019056d277eeec6a8;hb=036c69400a34cf8f6d39c88325dd510462809e7b;hp=980936a90ee6ea0a9f83c195277a7c0705a8bbaa;hpb=18fc2163b8a410d4d36b8f44658580731c0afaa1;p=mirror_ubuntu-bionic-kernel.git diff --git a/kernel/kexec.c b/kernel/kexec.c index 980936a90ee6..e62ec4dc6620 100644 --- a/kernel/kexec.c +++ b/kernel/kexec.c @@ -144,6 +144,14 @@ static int do_kexec_load(unsigned long entry, unsigned long nr_segments, if (ret) goto out; + /* + * Some architecture(like S390) may touch the crash memory before + * machine_kexec_prepare(), we must copy vmcoreinfo data after it. + */ + ret = kimage_crash_copy_vmcoreinfo(image); + if (ret) + goto out; + for (i = 0; i < nr_segments; i++) { ret = kimage_load_segment(image, &image->segment[i]); if (ret)