Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933394AbZLOTPz (ORCPT ); Tue, 15 Dec 2009 14:15:55 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S933347AbZLOTPy (ORCPT ); Tue, 15 Dec 2009 14:15:54 -0500 Received: from e31.co.us.ibm.com ([32.97.110.149]:58914 "EHLO e31.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933340AbZLOTPx (ORCPT ); Tue, 15 Dec 2009 14:15:53 -0500 Message-ID: <4B27E04F.6060301@linux.vnet.ibm.com> Date: Tue, 15 Dec 2009 11:15:27 -0800 From: Corey Ashford User-Agent: Thunderbird 2.0.0.23 (Windows/20090812) MIME-Version: 1.0 To: Ingo Molnar CC: Paul Mackerras , Peter Zijlstra , linux-kernel@vger.kernel.org, Michael Neuling Subject: Re: [PATCH 1/2] perf_event: Fix incorrect range check on cpu number References: <20091215084032.GA18661@brick.ozlabs.ibm.com> <1260873092.4165.354.camel@twins> <20091215110055.GC18661@brick.ozlabs.ibm.com> <4B27DB70.50304@linux.vnet.ibm.com> <20091215190858.GA15443@elte.hu> In-Reply-To: <20091215190858.GA15443@elte.hu> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1583 Lines: 40 Ingo Molnar wrote: > * Corey Ashford wrote: > >> Paul Mackerras wrote: >>> On Tue, Dec 15, 2009 at 11:31:32AM +0100, Peter Zijlstra wrote: >>> >>>> On Tue, 2009-12-15 at 19:40 +1100, Paul Mackerras wrote: >>>>> It is quite legitimate for CPUs to be numbered sparsely, meaning that >>>>> it possible for an online CPU to have a number which is greater than >>>>> the total count of possible CPUs. >>>>> >>>>> Currently find_get_context() has a sanity check on the cpu number >>>>> where it checks it against num_possible_cpus(). This test can fail >>>>> for a legitimate cpu number if the cpu_possible_mask is sparsely >>>>> populated. >>>>> >>>>> This fixes the problem by checking the CPU number against >>>>> nr_cpumask_bits instead, since that is the appropriate check to ensure >>>>> that the cpu number is same to pass to cpu_isset() subsequently. >>>> Cute, do you actually have hardware that does this? >>> Yeah, Mikey ran across this on a POWER7 box here. >> Does the perf tool need to be fixed too? The "perf stat" tool, at >> least, has a "-a" switch that tells the tool to count the event on >> all cpus, and it does this by iterating over the number of cpus, >> 0..n, assuming they are all contiguous. > > Yes, see patch 2/2 of this series. > > Ingo Oops! missed that. Thanks! - Corey -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/