WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

RE: FW: [Xen-devel] cpufreq info propagation

To: "Jan Beulich" <jbeulich@xxxxxxxxxx>
Subject: RE: FW: [Xen-devel] cpufreq info propagation
From: "Tian, Kevin" <kevin.tian@xxxxxxxxx>
Date: Thu, 24 Jul 2008 22:32:15 +0800
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 24 Jul 2008 07:37:18 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4888AB3B.76E4.0078.0@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <D470B4E54465E3469E2ABBC5AFAC390F024D95DC@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <4888AB3B.76E4.0078.0@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcjtmAoinCUX4hv9SuOVjaqRRXt4+AAAAmyA
Thread-topic: FW: [Xen-devel] cpufreq info propagation
>From: Jan Beulich [mailto:jbeulich@xxxxxxxxxx] 
>Sent: 2008年7月24日 22:18
>
>>Processor freq info is contained in ACPI Px methods in AML style,
>>and thus there's no way for Xen to retrieve them without dom0's help.
>>However existing ACPI parse logic is only compiled when CPU_FREQ 
>>is configured. It'd be mess to copy those code out of CPU_FREQ.
>
>I understand that - an alternative idea was to enable CONFIG_CPU_FREQ
>by a (conditional) #define in the relevant core ACPI files. But that
>should probably be considered only if getting things to work 
>by tweaking
>the core cpufreq code turns out to be no less intrusive.

Yes, we thought that alternative in the start, but then give up since
it makes code a bit messed. Actually this is similar dependency
as on ACPI PROCESSOR module, as you changed it back to 'm'
yesterday.

>
>>Also enable CPU_FREQ in dom0 doesn't mean the control goes to
>>dom0. Dom0 only tempts to control when cpufreq driver is loaded, 
>>and by far the driver is hacked from loading when extcnl is 
>requesting.
>>This is a bit hacky, and the cleaner way should move such check
>>to generic cpufreq layer since there're so many drivers.
>
>Indeed, if that was done e.g. by making cpufreq_register_driver()
>fail in this case, I would feel much safer allowing the CPU_FREQ
>options again. But that would imply that all the drivers behave

Yes, that's the option we tempt to do.

>properly when that registration fails, and while powernow-k8
>appears to do so, acpi-cpufreq doesn't seem to - it would (in .26)
>at least leak per-CPU data allocated in acpi_cpufreq_early_init().

But there's no way to make it elegant, as cpufreq drivers themselves
are initialized independently except the registration hooked to core
cpufreq layer. If we really want to make absolutely clean, case by
case check and hack has to be done per each cpufreq driver. But
I guess that's not worthy as even some data leaked which won't be
accumulative.

>
>What I'm still unclear about is the role of the kernel governors when
>Xen controls cpufreq.
>

As you already perceived, the purpose is just to use some ACPI
Px parse logic. But to avoid intrusive change to existing linux code,
we choose a coarse-level option to enable whole CPU_FREQ. 
When kernel image size is enlarged a bit, no runtime overhead is
added as kernel governors are not activated at all when driver is
not registered, IIRC. :-)

Thanks,
Kevin

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel