Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752292AbcLHNMB (ORCPT ); Thu, 8 Dec 2016 08:12:01 -0500 Received: from Galois.linutronix.de ([146.0.238.70]:46019 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751639AbcLHNMA (ORCPT ); Thu, 8 Dec 2016 08:12:00 -0500 Date: Thu, 8 Dec 2016 14:09:14 +0100 (CET) From: Thomas Gleixner To: Peter Zijlstra cc: LKML , x86@kernel.org, Borislav Petkov , "Charles (Chas) Williams" , "M. Vefa Bicakci" , Alok Kataria , Boris Ostrovsky Subject: Re: [PATCH] x86/smpboot: Make logical package management more robust In-Reply-To: <20161208130434.GR3124@twins.programming.kicks-ass.net> Message-ID: References: <20161208110331.GK3107@twins.programming.kicks-ass.net> <20161208130434.GR3124@twins.programming.kicks-ass.net> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1509 Lines: 37 On Thu, 8 Dec 2016, Peter Zijlstra wrote: > On Thu, Dec 08, 2016 at 01:49:28PM +0100, Thomas Gleixner wrote: > > > > > > - if (logical_packages > __max_logical_packages) { > > > > - pr_warn("Detected more packages (%u), then computed by BIOS data (%u).\n", > > > > - logical_packages, __max_logical_packages); > > > > - logical_packages_frozen = true; > > > > - __max_logical_packages = logical_packages; > > > > > > So we'll never 'shrink' the initially computed max; which could result > > > in using more memory than strictly needed, otoh it makes physical > > > hotplug happier. > > > > Yes. I was debating that back and forth and at the end decided that making > > it simple and robust is a good tradeoff vs. the slightly higher memory > > consumption. Though on most systems that's a non issue as number of > > possible cpus/packages is the same as the actual available ones. The insane > > setups have to suffer - rightfully so. > > Don't we overestimate by a factor of 2 due to HT? That is, every single > socket Intel box will have a max_packages of 2. > > Not that I care too deeply, and arguably the HT case _is_ insane because > its impossible to tell etc.. It is insane. And we can be smart about it for the normal, non physical hotplug case when all available CPUs are brought up in smp_init() which is _before_ any of the package users is initialized. At that point we know exactly how many packages are available and we can limit max packages to that value. Hmm? Thanks, tglx