Messages in this thread | | | Date | Tue, 15 Dec 2009 22:00:55 +1100 | From | Paul Mackerras <> | Subject | Re: [PATCH 1/2] perf_event: Fix incorrect range check on cpu number |
| |
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.
Paul.
| |