Kernel parameter 'nr_cpus' can be used to limit the maximum number of processors that an SMP kernel could support. This patch extends this to fadump by introducing 'fadump_nr_cpus' parameter that can help in booting fadump kernel on a lower memory footprint.
Suggested-by: Mahesh Salgaonkar <mah...@linux.vnet.ibm.com> Signed-off-by: Hari Bathini <hbath...@linux.vnet.ibm.com> --- arch/powerpc/kernel/fadump.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c index a7fef3e..c75783c 100644 --- a/arch/powerpc/kernel/fadump.c +++ b/arch/powerpc/kernel/fadump.c @@ -470,6 +470,28 @@ static int __init early_fadump_param(char *p) } early_param("fadump", early_fadump_param); +/* Look for fadump_nr_cpus= cmdline option. */ +static int __init early_fadump_nrcpus(char *p) +{ + int nr_cpus; + + /* + * fadump_nr_cpus parameter is only applicable on a + * fadump active kernel. This is to reduce memory + * needed to boot a fadump active kernel. + * So, check if we are booting after crash. + */ + if (!is_fadump_active()) + return 0; + + get_option(&p, &nr_cpus); + if (nr_cpus > 0 && nr_cpus < nr_cpu_ids) + nr_cpu_ids = nr_cpus; + + return 0; +} +early_param("fadump_nr_cpus", early_fadump_nrcpus); + static void register_fw_dump(struct fadump_mem_struct *fdm) { int rc; _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev