----- Original Message -----
On 2011-09-15 10:39:12 Thu, Dave Anderson wrote:
... [ cut ]
...
> So your patch effectively reverts it for the newer kernels.
Since 2.6.36 kernels
> have the cpu_possible_mask, I think you should still apply the "case
POSSIBLE"
> logic above somewhere, correct?
Hi Dave,
... [ cut ] ...
However, Any change in generic code in the future would trigger the
issue you
are talking about. Hence, I have modified the patch (see below) to split the
ppc64_paca_init function and separate out the paca handling from code that
gathers cpu map info. Now, we only ignore the paca handling and still
gather the cpu map info for newer kernels. Let me know your comments on
this.
Hi Mahesh,
Just a couple minor points that were caught by "make warn":
cc -c -g -DPPC64 -m64 ppc64.c -Wall -O2 -Wstrict-prototypes -Wmissing-prototypes
-fstack-protector
ppc64.c: In function 'ppc64_paca_init':
ppc64.c:2628: warning: 'return' with no value, in function returning non-void
ppc64.c: At top level:
ppc64.c:2665: warning: function declaration isn't a prototype
Line 2665 just needed a void in the declaration:
+static int
+ppc64_get_cpu_map()
For line 2628, I changed this highly unlikely event to return kt->cpus,
which is actually an improvement over the old code because with
your patch, it will continue on to check the online/possible
cpus issue:
if (!MEMBER_EXISTS("paca_struct", "data_offset"))
return kt->cpus;
With those two changes, the patch is queued for crash-5.1.8.
Thanks,
Dave