Re: [RFC/RFT PATCH 1/5] s390: make crashk_res resource a child of "System RAM"
From: Mike Rapoport <hidden>
Date: 2021-06-02 06:26:09
Also in:
linux-arm-kernel, linux-mm, linux-s390, lkml
From: Mike Rapoport <hidden>
Date: 2021-06-02 06:26:09
Also in:
linux-arm-kernel, linux-mm, linux-s390, lkml
On Tue, Jun 01, 2021 at 11:02:17AM +0200, David Hildenbrand wrote:
On 01.06.21 10:45, David Hildenbrand wrote:quoted
On 31.05.21 14:29, Mike Rapoport wrote:quoted
From: Mike Rapoport <redacted> Commit 4e042af463f8 ("s390/kexec: fix crash on resize of reserved memory") added a comment that says "crash kernel resource should not be part of the System RAM resource" but never explained why. As it looks from the code in the kernel and in kexec there is no actual reason for that.Are you sure? Looking at kexec-tools: kexec/arch/s390/kexec-s390.c get_memory_ranges_s390() wants "System RAM" and Crash kernel only with "with_crashk=1". Your patch would change that. "Crash kernel" would always be included if you make it a child of "System RAM". Further, get_memory_ranges() and is_crashkernel_mem_reserved() look out for "Crash kernel\n" via parse_iomem_single(). However, parse_iomem_single() does not care about ranges that start with spaces IIRC via sscanf(line, "%llx-%llx : %n" ...I think I'm wrong about that one because I read "Input white-space characters (as specified by the isspace function) are skipped, unless the specification includes a [ , c , or n specifier" So having it as a child won't affect parse_iomem_single().
Yes, this was my understanding as well. -- Sincerely yours, Mike.