[...] >> >> > >> >> > When you execute dmesg on your testing machine and grep nr_cpu_ids, >> >> > what's the value of nr_cpu_ids? >> >> > >> >> nr_cpu_ids=128 >> > >> > And what's the cpu number of in "lscpu" command? >> >> NUMA node1 CPU(s): 0-7 >> >> The system booted up with 128 possible cpu and only 8 online. >> Also I tested on x86 guest, after bootup with 8 cpus, then offline 4 >> of them, the zero PT_NOTE warning buzz too. > > Yes, this is what I think not quite appropriate using > for_each_cpu_not(cpu, cpu_online_mask). Maybe it need try to save on > those cpus which is present but not online. not online seems not good, > it's not reasonable to save those getting apic but no cpu plugged. > In the file: kexec-tools/kexec/crashdump-elf.c nr_cpus = sysconf(_SC_NPROCESSORS_CONF); And this is why this patch needs to make a mark on these offline cpu. This is no something like "_SC_NPROCESSORS_PRESENT" option, so just work around it in kernel side. Anyway for crash kernel, we only write "core" in percpu notes without no more info, and it costs nothing when capture kernel gather the PT_NOTE. Thx, Pingfan