From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752839AbcHLNMf (ORCPT ); Fri, 12 Aug 2016 09:12:35 -0400 Received: from mx1.redhat.com ([209.132.183.28]:43942 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751962AbcHLNMe (ORCPT ); Fri, 12 Aug 2016 09:12:34 -0400 Date: Fri, 12 Aug 2016 15:12:31 +0200 From: Jiri Olsa To: Peter Zijlstra Cc: Thomas Gleixner , Andi Kleen , linux-kernel@vger.kernel.org, Andi Kleen , x86@kernel.org, Ingo Molnar , Frank Ramsay , Prarit Bhargava Subject: Re: [PATCH] x86/smp: Fix __max_logical_packages value setup Message-ID: <20160812131231.GA15943@krava> References: <20160803162358.GA10890@krava> <20160810135417.GP30192@twins.programming.kicks-ass.net> <20160810140033.GA23798@krava> <20160810141538.GA28551@krava> <20160810155205.GR30192@twins.programming.kicks-ass.net> <20160810161417.GA11369@krava> <20160811124839.GQ6879@twins.programming.kicks-ass.net> <20160811130521.GA22741@krava> <20160811134651.GW30192@twins.programming.kicks-ass.net> <20160812122457.GC8062@krava> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160812122457.GC8062@krava> User-Agent: Mutt/1.6.2 (2016-07-01) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Fri, 12 Aug 2016 13:12:34 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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