On Fri, Aug 12, 2016 at 02:24:57PM +0200, Jiri Olsa wrote:
> On Thu, Aug 11, 2016 at 03:46:51PM +0200, Peter Zijlstra wrote:
> > On Thu, Aug 11, 2016 at 03:05:21PM +0200, Jiri Olsa wrote:
> > > hum, so we either need some acpi solution to get number of all
> > > sockets or
> > 
> > This.. So the problem here is that the BIOS completely screws us over.
> > 
> > It wrecks the ACPI-ID table with that option to limit the number of CPUs
> > exposed to the OS (note that it didn't need to do that, it could have
> > enumerated them as empty, instead of not there at all) while keeping the
> > CPUID of the CPUs as reporting they have many (12? was it) cores.
> > 
> > This results in inconsistent state, and we're left with nothing useful.
> > 
> > > fix the uncore code to initialize pmu boxes on cpu hotplug as well
> > 
> > Can't.. it uses the boxes at STARTING time, and we can't do allocs
> > there. Not can we alloc earlier, because we don't know max_packages is
> > going to increase.
> 
> I still need to test this, but would this be something
> like you proposed on irc?

works on my test machine:

[    0.742505] smpboot: APIC(0) Converting physical 0 to logical package 0
[    0.749902] smpboot: APIC(20) Converting physical 1 to logical package 1
[    0.757390] smpboot: APIC(40) Converting physical 2 to logical package 2
[    0.764879] smpboot: APIC(60) Converting physical 3 to logical package 3
[    0.772368] smpboot: Detected more packages (4), then computed by BIOS data 
(1).
[    0.780630] smpboot: Max logical packages: 4


jirka

Reply via email to