Re: v2.6.26-rc7: BUG: unable to handle kernel NULL pointer dereference

Mike Travis
2008-06-25T15:07:15Z

Rusty Russell wrote:
> On Wednesday 25 June 2008 00:44:45 Mike Travis wrote:
>> Rusty Russell wrote:
>> ...
>>
>>> Nice catch. Basically, cpu_possible_map should only be cleared at boot,
>>> and probably not even then.
>> One thing that should be avoided, is clearing anything but the last bit in
>> the cpu_possible_map. This is because num_possible_cpus != nr_cpu_ids when
>> there are holes in the map. (nr_cpu_ids = highest possible cpu # + 1).
>
> It's ok if nr_cpu_ids is an overestimate, isn't it?

Yes. As I see it, nr_cpu_ids is the max index (+1) into anything dealing with
cpu's.
>
> But for this corner case, I think clearing cpu_possible_map is wrong.

Yes, I agree. If for some reason, ACPI discovers a "possible" cpu but it faults
when brought online, then it simply stays offline. It may never come online, or
with some trick hardware, it could be replaced on the running system and then
a new attempt can be made to bring it online.

Thanks,
Mike