Messages in this thread | | | Date | Fri, 10 Dec 2021 15:15:00 +0800 | Subject | Re: [PATCH v17 00/10] support reserving crashkernel above 4G on arm64 kdump | From | Kefeng Wang <> |
| |
On 2021/12/10 14:55, Zhen Lei wrote: > There are following issues in arm64 kdump: > 1. We use crashkernel=X to reserve crashkernel below 4G, which > will fail when there is no enough low memory. > 2. If reserving crashkernel above 4G, in this case, crash dump > kernel will boot failure because there is no low memory available > for allocation. > > To solve these issues, change the behavior of crashkernel=X. > crashkernel=X tries low allocation in DMA zone and fall back to high > allocation if it fails. > > We can also use "crashkernel=X,high" to select a high region above > DMA zone, which also tries to allocate at least 256M low memory in > DMA zone automatically and "crashkernel=Y,low" can be used to allocate > specified size low memory. > > When reserving crashkernel in high memory, some low memory is reserved > for crash dump kernel devices. So there may be two regions reserved for > crash dump kernel. > In order to distinct from the high region and make no effect to the use > of existing kexec-tools, rename the low region as "Crash kernel (low)", > and pass the low region by reusing DT property > "linux,usable-memory-range". We made the low memory region as the last > range of "linux,usable-memory-range" to keep compatibility with existing > user-space and older kdump kernels. > > Besides, we need to modify kexec-tools: > arm64: support more than one crash kernel regions(see [1]) > > Another update is document about DT property 'linux,usable-memory-range': > schemas: update 'linux,usable-memory-range' node schema(see [2]) > > This patchset contains the following 10 patches: > > 0001-0004 are some x86 cleanups which prepares for making functionsreserve_crashkernel[_low]() generic. > 0005 makes functions reserve_crashkernel[_low]() generic. > 0006-0007 reimplements arm64 crashkernel=X. > 0008-0009 adds memory for devices by DT property linux,usable-memory-range. > 0010 updates the doc. > > Changes since [v16] > - Because no functional changes in this version, so add > "Tested-by: Dave Kleikamp <dave.kleikamp@oracle.com>" for patch 1-9 > - Add "Reviewed-by: Rob Herring <robh@kernel.org>" for patch 8 > - Update patch 9 based on the review comments of Rob Herring > - As Catalin Marinas's suggestion, merge the implementation of > ARCH_WANT_RESERVE_CRASH_KERNEL into patch 5. Ensure that the > contents of X86 and ARM64 do not overlap, and reduce unnecessary > temporary differences.
An Internal review has been done, so for this series,
Reviewed-by: Kefeng Wang <wangkefeng.wang@huawei.com>
| |