On Mon, Oct 05, 2020 at 11:12:10PM +0530, Bhupesh Sharma wrote: > I think my earlier email with the test results on this series bounced > off the mailing list server (for some weird reason), but I still see > several issues with this patchset. I will add specific issues in the > review comments for each patch again, but overall, with a crashkernel > size of say 786M, I see the following issue: > > # cat /proc/cmdline > BOOT_IMAGE=(hd7,gpt2)/vmlinuz-5.9.0-rc7+ root=<..snip..> rd.lvm.lv=<..snip..> crashkernel=786M > > I see two regions of size 786M and 256M reserved in low and high > regions respectively, So we reserve a total of 1042M of memory, which > is an incorrect behaviour: > > # dmesg | grep -i crash > [ 0.000000] Reserving 256MB of low memory at 2816MB for crashkernel (System low RAM: 768MB) > [ 0.000000] Reserving 786MB of memory at 654158MB for crashkernel (System RAM: 130816MB) > [ 0.000000] Kernel command line: BOOT_IMAGE=(hd2,gpt2)/vmlinuz-5.9.0-rc7+ root=/dev/mapper/rhel_ampere--hr330a--03-root ro rd.lvm.lv=rhel_ampere-hr330a-03/root rd.lvm.lv=rhel_ampere-hr330a-03/swap crashkernel=786M cma=1024M > > # cat /proc/iomem | grep -i crash > b0000000-bfffffff : Crash kernel (low) > bfcbe00000-bffcffffff : Crash kernel As Chen said, that's the intended behaviour and how x86 works. The requested 768M goes in the high range if there's not enough low memory and an additional buffer for swiotlb is allocated, hence the low 256M. We could (as an additional patch), subtract the 256M from the high allocation so that you'd get a low 256M and a high 512M, not sure it's worth it. Note that with a "crashkernel=768M,high" option, you still get the additional low 256M, otherwise the crashkernel won't be able to boot as there's no memory in ZONE_DMA. In the explicit ",high" request case, I'm not sure subtracted the 256M is more intuitive. In 5.11, we also hope to fix the ZONE_DMA layout for non-RPi4 platforms to cover the entire 32-bit address space (i.e. identical to the current ZONE_DMA32). > IMO, we should test this feature more before including this in 5.11 Definitely. That's one of the reasons we haven't queued it yet. So any help with testing here is appreciated. Thanks. -- Catalin