RE: [REGRESSION] Minimize per_cpu reservations patch causes NULL ptr deref when some CPUs are offline

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2008-11-04 at 13:12 -0800, Luck, Tony wrote:
> > 1) try to get the info regarding offline CPUs earlier either by calling
> > acpi_boot_init() earlier (probably not possible prior to calling find_memory())
> > or walk a subset of the ACPI tables to get the number of offline CPUs sooner
> > (which sounds ugly).
> >
> >
> > 2) after we call acpi_boot_init() go back and setup the per-cpu datastructures
> > for the offline CPUs then.  Seems like this might be cleaner but I have not
> > investigated the specifics.
> 
> What about:
> 
> 3) Perform the needed allocations when we try to bring the new cpu online?

Seems logical, we would need to fix the code that is trying to use the
datastructures for offline CPUs however.  The panic we current hit is in
migration_thread and that might be the only case.

> 
> It is possible that this will fail ... but if you are so low on memory
> that you can't allocate a couple of pages for the new cpu, you are in
> a world of hurt already and adding a new cpu is liklely to make things
> worse.

The patch that caused this doesn't just prevent allocating structures
for the offline CPUs but prevents allocating NR_CPUS (4096 in the case
of SLES11) per-cpu structures on a small system that has perhaps only 4
CPUs.

- Doug


--
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Sparc Linux]     [DCCP]     [Linux ARM]     [Yosemite News]     [Linux SCSI]     [Linux x86_64]     [Linux for Ham Radio]

  Powered by Linux