Hi Guanyou & lianbo,
I re-thought about the patch, and I agree the revert patch should be
applied, the reverted code is already covered by the previous:
if (THIS_KERNEL_VERSION >= LINUX(5,12,0)) {
...
else
...
hunk, so there is no need for the
CONFIG_ARM64_4K_PAGES/CONFIG_ARM64_16K_PAGES checks here. Previously
the patch was applied for the compatibility of android kernel due to
its customization, mainline kernel won't need this.
What do you think? @Lianbo Jiang
Thanks,
Tao Liu
On Fri, Aug 30, 2024 at 2:06 PM Guanyou Chen <[email protected]> wrote:
>
> Hi tao
>
> crash load 5.12 before vmcore, parse section_size_bits equals 27,
> but it should be equals 30. because defined "CONFIG_ARM64_4K_PAGES",
> The commit "568c6f04" for compat android gki, so we should cleanup.
>
> Exp:
> Before:
> crash vmcore vmlinux -d1
> ...
> xtime timespec.tv_sec: 603549d0: Wed Feb 24 02:30:40 CST 2021
> utsname:
> sysname: Linux
> nodename: localhost
> release: 4.14.180-perf-g4483caa8ae80-dirty
> version: #1 SMP PREEMPT Wed Feb 24 03:16:01 CST 2021
> machine: aarch64
> domainname: localdomain
> ...
> SECTION_SIZE_BITS: 27
> ...
>
> After:
> crash vmcore vmlinux -d1
> ...
> xtime timespec.tv_sec: 603549d0: Wed Feb 24 02:30:40 CST 2021
> utsname:
> sysname: Linux
> nodename: localhost
> release: 4.14.180-perf-g4483caa8ae80-dirty
> version: #1 SMP PREEMPT Wed Feb 24 03:16:01 CST 2021
> machine: aarch64
> domainname: localdomain
> ...
> SECTION_SIZE_BITS: 30
> ...
>
> diff --git a/arm64.c b/arm64.c
> index 06e7451..05ffdb3 100644
> --- a/arm64.c
> +++ b/arm64.c
> @@ -1698,14 +1698,7 @@ arm64_get_section_size_bits(void)
> if ((ret = get_kernel_config("CONFIG_MEMORY_HOTPLUG", NULL))
> == IKCONFIG_Y) {
> if ((ret =
> get_kernel_config("CONFIG_HOTPLUG_SIZE_BITS", &string)) == IKCONFIG_STR)
> machdep->section_size_bits = atol(string);
> - }
> -
> - /* arm64: reduce section size for sparsemem */
> - if ((ret = get_kernel_config("CONFIG_ARM64_4K_PAGES", NULL))
> == IKCONFIG_Y
> - || (ret = get_kernel_config("CONFIG_ARM64_16K_PAGES",
> NULL)) == IKCONFIG_Y)
> - machdep->section_size_bits = _SECTION_SIZE_BITS_5_12;
> - else if ((ret = get_kernel_config("CONFIG_ARM64_64K_PAGES",
> NULL)) == IKCONFIG_Y)
> - machdep->section_size_bits =
> _SECTION_SIZE_BITS_5_12_64K;
> + }
> }
>
> if (CRASHDEBUG(1))
>
> Thanks,
> Guanyou.
--
Crash-utility mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/
Contribution Guidelines: https://github.com/crash-utility/crash/wiki