lkml.org 
[lkml]   [2008]   [Jan]   [4]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
SubjectRE: + restore-missing-sysfs-max_cstate-attr.patch added to -mm tree
DateFri, 4 Jan 2008 13:59:01 -0800
From"Pallipadi, Venkatesh" <>
>-----Original Message----->From: Mark Lord [mailto:lkml@rtr.ca] >Sent: Friday, January 04, 2008 1:53 PM>To: Pallipadi, Venkatesh>Cc: Arjan van de Ven; Andrew Morton; abelay@novell.com; 
>lenb@kernel.org; Ingo Molnar; linux-kernel@vger.kernel.org; 
>linux-acpi@vger.kernel.org; rjw@sisk.pl>Subject: Re: + restore-missing-sysfs-max_cstate-attr.patch 
>added to -mm tree>>Mark Lord wrote:>> Venki Pallipadi wrote:>>> Reintroduce run time configurable max_cstate for !CPU_IDLE case.
>>>>>> Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
>>>
>>> Index: linux-2.6.24-rc/drivers/acpi/processor_idle.c
>>> ===================================================================
>>> --- linux-2.6.24-rc.orig/drivers/acpi/processor_idle.c
>>> +++ linux-2.6.24-rc/drivers/acpi/processor_idle.c
>>> @@ -76,7 +76,11 @@ static void (*pm_idle_save) (void) __rea
>>>  #define PM_TIMER_TICKS_TO_US(p)        (((p) * 
>>> 1000)/(PM_TIMER_FREQUENCY/1000))
>>> 
>>>  static unsigned int max_cstate __read_mostly = >ACPI_PROCESSOR_MAX_POWER;>>> +#ifdef CONFIG_CPU_IDLE>>>  module_param(max_cstate, uint, 0000);
>>> +#else
>>> +module_param(max_cstate, uint, 0644);
>>> +#endif
>>>  static unsigned int nocst __read_mostly;
>>>  module_param(nocst, uint, 0000);
>>> >> ..>> >> I'll try and re-test with this on Friday.>..>>Okay, with !CONFIG_CPU_IDLE, this works fine -- same as 2.6.23 
>and earlier.>
Good to know. Atleast we do not have a regression for 2.6.24 now.

>> Meanwhile, can you give a short summary of how behaviour differs
>> between CONFIG_CPU_IDLE and !CONFIG_CPU_IDLE  ??>> >> I'm not at all clear on how this really affects things.>

With CPU_IDLE, the C-state policy is removed from acpi driver. Ideally
policy should have nothing to do with ACPI, as ACPI only provides the
C-state mechanisms. So, with CPU_IDLE, it is not easy to control this
variable through a acpi driver module at run time. Also, the latency
interface that was mentioned before is to serve the same purpose in a
more clear manner (based on the wakeup latency) instead of a C-state
number which may not mean much from the end user point of view.

I will look at why latency does not work on a single core system
soon(Was that with UP kernel or SMP kernel?). That way we will have a
proper cover for this with CPU_IDLE in future.

Thanks,
Venki


\
 
 \ /
  Last update: 2008-01-04 23:01    [from the cache]
©2003-2008