From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964793AbWFWMsL (ORCPT ); Fri, 23 Jun 2006 08:48:11 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S964795AbWFWMsL (ORCPT ); Fri, 23 Jun 2006 08:48:11 -0400 Received: from gprs189-60.eurotel.cz ([160.218.189.60]:18329 "EHLO amd.ucw.cz") by vger.kernel.org with ESMTP id S964793AbWFWMsI (ORCPT ); Fri, 23 Jun 2006 08:48:08 -0400 Date: Fri, 23 Jun 2006 14:46:56 +0200 From: Pavel Machek To: Dave Jones , Randy Dunlap , davej@codemonkey.org.uk, lkml , akpm Subject: Re: [Ubuntu PATCH] cpufreq: fix powernow-k8 load bug Message-ID: <20060623124654.GA8048@elf.ucw.cz> References: <4498DA08.1010309@oracle.com> <20060622203855.GD2959@openzaurus.ucw.cz> <20060623122845.GC19461@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20060623122845.GC19461@redhat.com> X-Warning: Reading this can be dangerous to your mental health. User-Agent: Mutt/1.5.11+cvs20060126 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Hi! > > > --- linux-2617-pv.orig/arch/i386/kernel/cpu/cpufreq/powernow-k8.c > > > +++ linux-2617-pv/arch/i386/kernel/cpu/cpufreq/powernow-k8.c > > > @@ -1008,7 +1008,7 @@ static int __cpuinit powernowk8_cpu_init > > > * an UP version, and is deprecated by AMD. > > > */ > > > > > > - if ((num_online_cpus() != 1) || (num_possible_cpus() != 1)) { > > > + if ((num_online_cpus() != 1)) { > > > printk(KERN_ERR PFX "MP systems not supported by PSB BIOS structure\n"); > > > kfree(data); > > > return -ENODEV; > > > > > > > Seems wrong to me... what if I boot, then hotplug second cpu? > > We only run this code if powernow_k8_cpu_init_acpi() has failed, > which it should never do on an SMP system. > > So, you get exactly the same behaviour, as expected. > You can't support >1 CPU with PSB. > > The above patch makes sure things continue to work if you run > an SMP kernel on UP hardware. I'm pretty sure you'll find SMP machine with broken ACPI cpufreq (therefore cpu_init_acpi() will fail). And if user is perverse enough, he might boot with one cpu then simulate hotplug of second one. OTOH: 1) user is already doing perverse things at this point and 2) machine BIOS is b0rken ...so... it is only theoretical and probably not worth fixing. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html