[Kernel-packages] [Bug 1663400] Re: [SRU] kexec: Increase the upper limit for RAM segments
** Also affects: kexec-tools (Ubuntu Xenial) Importance: Undecided Status: New ** Summary changed: - [SRU] kexec: Increase the upper limit for RAM segments + [SRU] kexec: arm64: Increase the upper limit for RAM segments ** Also affects: kexec-tools (Ubuntu Yakkety) Importance: Undecided Status: New -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to kexec-tools in Ubuntu. https://bugs.launchpad.net/bugs/1663400 Title: [SRU] kexec: arm64: Increase the upper limit for RAM segments Status in kexec-tools package in Ubuntu: New Status in kexec-tools source package in Xenial: New Status in kexec-tools source package in Yakkety: New Bug description: [Impact] Currently kexec is unable to see all the "System RAM" recorded in /proc/iomem. On a newer UEFI based Qualcomm target the number of system ram regions retrieved from /proc/iomem are ~40. Currently KEXEC_SEGMENT_MAX is set to 16, which represents the kexec segments passed to kexec_load syscall, like kernel image, initrd image etc. The patch increases the value to 64. This enables kexec to see all the "System RAM" as recorded in /proc/iomem. [Test Case] == System RAM reported by /proc/iomem == ubuntu@ubuntu:~$ sudo cat /proc/iomem | grep "System RAM" 0020-0020 : System RAM 0082-0307 : System RAM 0308-0308 : System RAM 0309-031f : System RAM 0320-033f : System RAM 0341-0589 : System RAM 058a-058a : System RAM 058b-058b : System RAM 058c-0597 : System RAM 0598-05987fff : System RAM 05988000-0598bfff : System RAM 0598c000-05a0 : System RAM 05a1-05aa : System RAM 05ab-05ca0fff : System RAM 05ca1000-08ca : System RAM 08cb-08cf : System RAM 08d0-08ed : System RAM 08ee-08ee0fff : System RAM 08ee1000-08ee3fff : System RAM 08ee4000-08ee : System RAM 08ef-092a : System RAM 092b-092d : System RAM 092e-09422fff : System RAM 09423000-0949 : System RAM 094a-0957 : System RAM 0958-0958cfff : System RAM 0958d000-098c : System RAM 098d-098d0fff : System RAM 098d1000-098dbfff : System RAM 098dc000-0e8b : System RAM 0e8c-0e8e : System RAM 0e8f-0fff : System RAM 1080-17fe : System RAM 1c02-1c7f : System RAM 1c80-1c80 : System RAM 1c81-7efb : System RAM 7efc-7efd : System RAM 7efe-7efe : System RAM 7eff-7eff : System RAM 7f00-17 : System RAM ubuntu@ubuntu:~$ == BEFORE PATCH: System RAM reported by kexec == ubuntu@ubuntu:~$ sudo kexec -d -l /boot/vmlinuz-4.7.0-2-generic --reuse-cmd --initrd=/boot/initrd.img-4.7.0-2-generic | grep "System RAM" get_memory_ranges_iomem_cb: 0020 - 0020 : System RAM get_memory_ranges_iomem_cb: 0082 - 0307 : System RAM get_memory_ranges_iomem_cb: 0308 - 0308 : System RAM get_memory_ranges_iomem_cb: 0309 - 031f : System RAM get_memory_ranges_iomem_cb: 0320 - 033f : System RAM get_memory_ranges_iomem_cb: 0341 - 0589 : System RAM get_memory_ranges_iomem_cb: 058a - 058a : System RAM get_memory_ranges_iomem_cb: 058b - 058b : System RAM get_memory_ranges_iomem_cb: 058c - 0597 : System RAM get_memory_ranges_iomem_cb: 0598 - 05987fff : System RAM get_memory_ranges_iomem_cb: 05988000 - 0598bfff : System RAM get_memory_ranges_iomem_cb: 0598c000 - 05a0 : System RAM get_memory_ranges_iomem_cb: 05a1 - 05aa : System RAM get_memory_ranges_iomem_cb: 05ab - 05ca0fff : System RAM get_memory_ranges_iomem_cb: 05ca1000 - 08ca : System RAM get_memory_ranges_iomem_cb: 08cb - 08cf : System RAM ==AFTER PATCH: System RAM reported by kexec == ubuntu@ubuntu:~$ sudo kexec -d -l /boot/vmlinuz-4.7.0-2-generic --reuse-cmd --initrd=/boot/initrd.img-4.7.0-2-generic | grep "System RAM" get_memory_ranges_iomem_cb: 0020 - 0020 : System RAM get_memory_ranges_iomem_cb: 0082 - 0307 : System RAM get_memory_ranges_iomem_cb: 0308 - 0308 : System RAM get_memory_ranges_iomem_cb: 0309 - 031f : System RAM get_memory_ranges_iomem_cb: 0320 - 033f : System RAM get_memory_ranges_iomem_cb: 0341 - 0589 : System RAM get_memory_ranges_iomem_cb: 058a - 058a : System RAM get_memory_ranges_iomem_cb: 058b - 058b : System RAM get_memory_ranges_iomem_cb: 058c -
[Kernel-packages] [Bug 1663400] Re: [SRU] kexec: Increase the upper limit for RAM segments
[TEST with yakkety kexec-tools] ubuntu@ubuntu:~$ sudo cat /proc/iomem | grep "System RAM" 0020-0020 : System RAM 0082-0307 : System RAM 0308-0308 : System RAM 0309-031f : System RAM 0320-033f : System RAM 0341-0589 : System RAM 058a-058a : System RAM 058b-058b : System RAM 058c-0597 : System RAM 0598-05987fff : System RAM 05988000-0598bfff : System RAM 0598c000-05a0 : System RAM 05a1-05aa : System RAM 05ab-05ca0fff : System RAM 05ca1000-08ca : System RAM 08cb-08cf : System RAM 08d0-08ed : System RAM 08ee-08ee0fff : System RAM 08ee1000-08ee3fff : System RAM 08ee4000-08ee : System RAM 08ef-092a : System RAM 092b-092d : System RAM 092e-09422fff : System RAM 09423000-0949 : System RAM 094a-0957 : System RAM 0958-0958cfff : System RAM 0958d000-098c : System RAM 098d-098d0fff : System RAM 098d1000-098dbfff : System RAM 098dc000-0e8b : System RAM 0e8c-0e8e : System RAM 0e8f-0fff : System RAM 1080-17fe : System RAM 1c02-1c7f : System RAM 1c80-1c80 : System RAM 1c81-7efb : System RAM 7efc-7efd : System RAM 7efe-7efe : System RAM 7eff-7eff : System RAM 7f00-17 : System RAM ubuntu@ubuntu:~$ ubuntu@ubuntu:~$ sudo kexec -d -l /boot/vmlinuz-4.7.0-2-generic --reuse-cmd --initrd=/boot/initrd.img-4.7.0-2-generic get_memory_ranges_iomem_cb: 0020 - 0020 : System RAM get_memory_ranges_iomem_cb: 0082 - 0307 : System RAM get_memory_ranges_iomem_cb: 0308 - 0308 : System RAM get_memory_ranges_iomem_cb: 0309 - 031f : System RAM get_memory_ranges_iomem_cb: 0320 - 033f : System RAM get_memory_ranges_iomem_cb: 0341 - 0589 : System RAM get_memory_ranges_iomem_cb: 058a - 058a : System RAM get_memory_ranges_iomem_cb: 058b - 058b : System RAM get_memory_ranges_iomem_cb: 058c - 0597 : System RAM get_memory_ranges_iomem_cb: 0598 - 05987fff : System RAM get_memory_ranges_iomem_cb: 05988000 - 0598bfff : System RAM get_memory_ranges_iomem_cb: 0598c000 - 05a0 : System RAM get_memory_ranges_iomem_cb: 05a1 - 05aa : System RAM get_memory_ranges_iomem_cb: 05ab - 05ca0fff : System RAM get_memory_ranges_iomem_cb: 05ca1000 - 08ca : System RAM get_memory_ranges_iomem_cb: 08cb - 08cf : System RAM get_memory_ranges_iomem_cb: 08d0 - 08ed : System RAM get_memory_ranges_iomem_cb: 08ee - 08ee0fff : System RAM get_memory_ranges_iomem_cb: 08ee1000 - 08ee3fff : System RAM get_memory_ranges_iomem_cb: 08ee4000 - 08ee : System RAM get_memory_ranges_iomem_cb: 08ef - 092a : System RAM get_memory_ranges_iomem_cb: 092b - 092d : System RAM get_memory_ranges_iomem_cb: 092e - 09422fff : System RAM get_memory_ranges_iomem_cb: 09423000 - 0949 : System RAM get_memory_ranges_iomem_cb: 094a - 0957 : System RAM get_memory_ranges_iomem_cb: 0958 - 0958cfff : System RAM get_memory_ranges_iomem_cb: 0958d000 - 098c : System RAM get_memory_ranges_iomem_cb: 098d - 098d0fff : System RAM get_memory_ranges_iomem_cb: 098d1000 - 098dbfff : System RAM get_memory_ranges_iomem_cb: 098dc000 - 0e8b : System RAM get_memory_ranges_iomem_cb: 0e8c - 0e8e : System RAM get_memory_ranges_iomem_cb: 0e8f - 0fff : System RAM get_memory_ranges_iomem_cb: 1080 - 17fe : System RAM get_memory_ranges_iomem_cb: 1c02 - 1c7f : System RAM get_memory_ranges_iomem_cb: 1c80 - 1c80 : System RAM get_memory_ranges_iomem_cb: 1c81 - 7efb : System RAM get_memory_ranges_iomem_cb: 7efc - 7efd : System RAM get_memory_ranges_iomem_cb: 7efe - 7efe : System RAM get_memory_ranges_iomem_cb: 7eff - 7eff : System RAM get_memory_ranges_iomem_cb: 7f00 - 0017 : System RAM -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to kexec-tools in Ubuntu. https://bugs.launchpad.net/bugs/1663400 Title: [SRU] kexec: Increase the upper limit for RAM segments Status in kexec-tools package in Ubuntu: New Bug description: [Impact] Currently kexec is unable to see all the "System RAM" recorded in /proc/iomem. On a newer UEFI based Qualcomm target the
[Kernel-packages] [Bug 1663400] Re: [SRU] kexec: Increase the upper limit for RAM segments
** Description changed: [Impact] On a newer UEFI based Qualcomm target the number of system ram regions retrieved from /proc/iomem are ~40. Currently KEXEC_SEGMENT_MAX is set to 16, which represents the kexec segments passed to kexec_load syscall, like kernel image, initrd image etc. The patch increases the value to 64. [Test Case] - NA + == System RAM reported by /proc/iomem == + ubuntu@ubuntu:~$ sudo cat /proc/iomem | grep "System RAM" + 0020-0020 : System RAM + 0082-0307 : System RAM + 0308-0308 : System RAM + 0309-031f : System RAM + 0320-033f : System RAM + 0341-0589 : System RAM + 058a-058a : System RAM + 058b-058b : System RAM + 058c-0597 : System RAM + 0598-05987fff : System RAM + 05988000-0598bfff : System RAM + 0598c000-05a0 : System RAM + 05a1-05aa : System RAM + 05ab-05ca0fff : System RAM + 05ca1000-08ca : System RAM + 08cb-08cf : System RAM + 08d0-08ed : System RAM + 08ee-08ee0fff : System RAM + 08ee1000-08ee3fff : System RAM + 08ee4000-08ee : System RAM + 08ef-092a : System RAM + 092b-092d : System RAM + 092e-09422fff : System RAM + 09423000-0949 : System RAM + 094a-0957 : System RAM + 0958-0958cfff : System RAM + 0958d000-098c : System RAM + 098d-098d0fff : System RAM + 098d1000-098dbfff : System RAM + 098dc000-0e8b : System RAM + 0e8c-0e8e : System RAM + 0e8f-0fff : System RAM + 1080-17fe : System RAM + 1c02-1c7f : System RAM + 1c80-1c80 : System RAM + 1c81-7efb : System RAM + 7efc-7efd : System RAM + 7efe-7efe : System RAM + 7eff-7eff : System RAM + 7f00-17 : System RAM + ubuntu@ubuntu:~$ + + == BEFORE PATCH: System RAM reported by kexec == + ubuntu@ubuntu:~$ sudo kexec -d -l /boot/vmlinuz-4.7.0-2-generic --reuse-cmd --initrd=/boot/initrd.img-4.7.0-2-generic | grep "System RAM" + get_memory_ranges_iomem_cb: 0020 - 0020 : System RAM + get_memory_ranges_iomem_cb: 0082 - 0307 : System RAM + get_memory_ranges_iomem_cb: 0308 - 0308 : System RAM + get_memory_ranges_iomem_cb: 0309 - 031f : System RAM + get_memory_ranges_iomem_cb: 0320 - 033f : System RAM + get_memory_ranges_iomem_cb: 0341 - 0589 : System RAM + get_memory_ranges_iomem_cb: 058a - 058a : System RAM + get_memory_ranges_iomem_cb: 058b - 058b : System RAM + get_memory_ranges_iomem_cb: 058c - 0597 : System RAM + get_memory_ranges_iomem_cb: 0598 - 05987fff : System RAM + get_memory_ranges_iomem_cb: 05988000 - 0598bfff : System RAM + get_memory_ranges_iomem_cb: 0598c000 - 05a0 : System RAM + get_memory_ranges_iomem_cb: 05a1 - 05aa : System RAM + get_memory_ranges_iomem_cb: 05ab - 05ca0fff : System RAM + get_memory_ranges_iomem_cb: 05ca1000 - 08ca : System RAM + get_memory_ranges_iomem_cb: 08cb - 08cf : System RAM + + ==AFTER PATCH: System RAM reported by kexec == + ubuntu@ubuntu:~$ sudo kexec -d -l /boot/vmlinuz-4.7.0-2-generic --reuse-cmd --initrd=/boot/initrd.img-4.7.0-2-generic | grep "System RAM" + get_memory_ranges_iomem_cb: 0020 - 0020 : System RAM + get_memory_ranges_iomem_cb: 0082 - 0307 : System RAM + get_memory_ranges_iomem_cb: 0308 - 0308 : System RAM + get_memory_ranges_iomem_cb: 0309 - 031f : System RAM + get_memory_ranges_iomem_cb: 0320 - 033f : System RAM + get_memory_ranges_iomem_cb: 0341 - 0589 : System RAM + get_memory_ranges_iomem_cb: 058a - 058a : System RAM + get_memory_ranges_iomem_cb: 058b - 058b : System RAM + get_memory_ranges_iomem_cb: 058c - 0597 : System RAM + get_memory_ranges_iomem_cb: 0598 - 05987fff : System RAM + get_memory_ranges_iomem_cb: 05988000 - 0598bfff : System RAM + get_memory_ranges_iomem_cb: 0598c000 - 05a0 : System RAM + get_memory_ranges_iomem_cb: 05a1 - 05aa : System RAM + get_memory_ranges_iomem_cb: 05ab - 05ca0fff : System RAM + get_memory_ranges_iomem_cb: 05ca1000 - 08ca : System RAM + get_memory_ranges_iomem_cb: 08cb - 08cf : System RAM + get_memory_ranges_iomem_cb: 08d0 - 08ed : System RAM + get_memory_ranges_iomem_cb: 08ee - 08ee0fff : System RAM + get_memory_ranges_iomem_cb: 08ee1000 - 08ee3fff : System RAM + get_memory_ranges_iomem_cb: 08ee4000 -