Re: [PATCH v18 03/11] of: Add a common kexec FDT setup function

Lakshmi Ramasubramanian
2021-02-22T01:36:51Z

On 2/21/21 5:32 PM, Guenter Roeck wrote:

Hi Guenter,

> On Sat, Feb 13, 2021 at 08:10:41AM -0800, Lakshmi Ramasubramanian wrote:
>> From: Rob Herring <robh@kernel.org>
>>
>> Both arm64 and powerpc do essentially the same FDT /chosen setup for
>> kexec. The differences are either omissions that arm64 should have
>> or additional properties that will be ignored. The setup code can be
>> combined and shared by both powerpc and arm64.
>>
>> The differences relative to the arm64 version:
>> - If /chosen doesn't exist, it will be created (should never happen).
>> - Any old dtb and initrd reserved memory will be released.
>> - The new initrd and elfcorehdr are marked reserved.
>> - "linux,booted-from-kexec" is set.
>>
>> The differences relative to the powerpc version:
>> - "kaslr-seed" and "rng-seed" may be set.
>> - "linux,elfcorehdr" is set.
>> - Any existing "linux,usable-memory-range" is removed.
>>
>> Combine the code for setting up the /chosen node in the FDT and updating
>> the memory reservation for kexec, for powerpc and arm64, in
>> of_kexec_alloc_and_setup_fdt() and move it to "drivers/of/kexec.c".
>>
>> Signed-off-by: Rob Herring <robh@kernel.org>
>> Signed-off-by: Lakshmi Ramasubramanian <nramas@linux.microsoft.com>
>
> s390:allmodconfig:
>
> drivers/of/kexec.c: In function 'of_kexec_alloc_and_setup_fdt':
> drivers/of/kexec.c:378:10: error: 'const struct kimage' has no member named 'arch'
> 378 | image->arch.elf_load_addr,
> | ^~
> drivers/of/kexec.c:379:10: error: 'const struct kimage' has no member named 'arch'
> 379 | image->arch.elf_headers_sz);
> | ^~
> drivers/of/kexec.c:387:35: error: 'const struct kimage' has no member named 'arch'
> 387 | ret = fdt_add_mem_rsv(fdt, image->arch.elf_load_addr,
> | ^~
> drivers/of/kexec.c:388:16: error: 'const struct kimage' has no member named 'arch'
> 388 | image->arch.elf_headers_sz);
> | ^~
>

I have posted a new patch set (link given below) that fixes the above
build break. Could you please try that?

https://patchwork.kernel.org/project/linux-integrity/patch/20210221174930.27324-14-nramas@linux.microsoft.com/

thanks,
-lakshmi