linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Len Brown <lenb@kernel.org>
To: Andi Kleen <andi@firstfloor.org>
Cc: venkatesh.pallipadi@intel.com, linux-acpi@vger.kernel.org,
	Adam Belay <abelay@novell.com>, Shaohua Li <shaohua.li@intel.com>
Subject: Re: [PATCH 01/22] cpuidle take2: Core cpuidle infrastructure
Date: Thu, 15 Mar 2007 12:47:42 -0400	[thread overview]
Message-ID: <200703151247.42326.lenb@kernel.org> (raw)
In-Reply-To: <p7364928z8a.fsf@bingen.suse.de>

On Thursday 15 March 2007 08:31, Andi Kleen wrote:
> Len Brown <lenb@kernel.org> writes:
> > +
> > +/**
> > + * cpuidle_idle_call - the main idle loop
> > + *
> > + * NOTE: no locks or semaphores should be used here
> > + * FIXME: DYNTICKS handling
> 
> I don't think you can merge anything anymore with such a FIXME.

Certainly it need to work well with NOHZ before it can go upstream.
Indeed, NOHZ is one of the reasons for doing cpuidle in the first place.

But then NOHZ is probably going to take some time to mature also,
certainly it can't be considered mature until it is also in the 64-bit kernel.

The question becomes if NOHZ matures w/o cpuidle -- do we need
to modify the existing tick-based ACPI idle code before cpuidle?

> Besides cpuidle is a pretty radical change outside ACPI and I would recommend to 
> make a few review cycles over linux-kernel and likely linux-arch. 

I agree.  acpi-test and -mm would not be sufficient exposure for generic code.

> For me it's not clear it has enough advantages for its amount of code

Understood.  Measurements will tell.
This is the very reason we created tools which can simultaneously
measure performance and battery life: http://sourceforge.net/projects/bltk

I think that for cpuidle to go upstream, its default should not require any user-space changes
to work as well as the old code.  If some sysfs hooks are available to get added
value, such as useful statistics or modifying policy, that is something that
user-space can safely ignore and not break.

-Len

  reply	other threads:[~2007-03-15 16:49 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-10  4:00 ACPI patches in test for Linux-2.6.22 Len Brown
     [not found] ` <941b1971a405f95537bc6f9a738e737eb2186e45.1173498647.git.len.brown@intel.com>
2007-03-10  4:00   ` [PATCH 01/22] cpuidle take2: Core cpuidle infrastructure Len Brown
2007-03-15 12:31     ` Andi Kleen
2007-03-15 16:47       ` Len Brown [this message]
2007-03-15 13:13     ` Richard Hughes
2007-03-15 16:38       ` Len Brown
2007-03-15 16:42         ` Richard Hughes
     [not found]   ` <92648781fb5f44cee584da36eb569e88dddc4b8f.1173498651.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 02/22] cpuidle take2: Hookup ACPI C-states driver with cpuidle Len Brown
     [not found]   ` <c5bb38e598e68202e0d6f08b3fe0f30f12999357.1173498651.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 03/22] cpuidle take2: Basic documentation for cpuidle Len Brown
     [not found]   ` <a1f0eff21edac1bd87e397f56c4258b9611b5a50.1173498652.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 04/22] ACPI: battery: make internal names consistent with battery "state" Len Brown
     [not found]   ` <b6ce4083ed8e2a01a3a59301eabe0fc1e68a8a84.1173498652.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 05/22] ACPI: Cache battery status instead of re-evaluating AML Len Brown
2007-04-19 18:23       ` Andrew Morton
     [not found]   ` <9ea7d57576f40c6af03c8c9fa7a069f2222b498b.1173498653.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 06/22] ACPI: battery: Lindent Len Brown
     [not found]   ` <d98b2065c5ac31a35cbdfe9b47d421352f96fc3f.1173498653.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 07/22] cpuidle: build fix for !CPU_IDLE Len Brown
     [not found]   ` <bc17374e69a621c9b7f6f9624c9248f3b8e8503d.1173498653.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 08/22] cpu_idle: fix build break Len Brown
     [not found]   ` <3d869f55bda8b0b6f0cb55f9a85a6f855a016092.1173498654.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 09/22] cpuidle: make code static Len Brown
     [not found]   ` <b51f201f9a9af932c723492551f9e688d34cc468.1173498654.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 10/22] cpuidle: ladder does not depend on ACPI Len Brown
     [not found]   ` <e4382a15d138ea6c0d4277967e646216ce57040f.1173498654.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 12/22] ACPI: EC: Make EC to initialize first in ACPI Len Brown
     [not found]   ` <94418415a62ec4c88109385d8663e56aac54dfd6.1173498656.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 13/22] ACPI: EC: "Fake ECDT" workaround is not needed any longer Len Brown
     [not found]   ` <50a76c6beb6e41664f44239d866240952f56de78.1173498656.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 14/22] ACPI: EC: enable burst functionality in EC Len Brown
     [not found]   ` <388ea1ea778138553bc42b8d4aa26b9221faee23.1173498656.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 15/22] ACPI: EC: Remove casts to/from void* from ec.c Len Brown
     [not found]   ` <87340f2d12cb87a5a1e6cebe714cf61cc501b588.1173498656.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 16/22] ACPI: EC: Put install handlers into separate function Len Brown
     [not found]   ` <fb7d8f568d5bbb28d535bb68c0f287246d6a5fbf.1173498657.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 17/22] ACPI: EC: Clean ECDT and namespace parsing Len Brown
     [not found]   ` <105cfb8936ce350c426b9b2a42e52cd3a625d102.1173498657.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 18/22] ACPI: EC: Rename ec_ecdt to more informative boot_ec Len Brown
     [not found]   ` <4f53bd846f964c9c3c590b3bc8eb2bfe1d392b5d.1173498657.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 19/22] ACPI: EC: first_ec is better to be acpi_ec than acpi_device Len Brown
     [not found]   ` <2f11ffb10877e93e24ae042649666b78dd9985e6.1173498657.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 20/22] ACPI: EC: Cleanup of EC initialization Len Brown
     [not found]   ` <5923a5eb97e66a7678742b84352b82597673c766.1173498658.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 21/22] ACPI: EC: Block queries until EC is fully initialized Len Brown
     [not found]   ` <705ff592931e6738926fd6d596461010a1e8977d.1173498654.git.len.brown@intel.com>
2007-03-10  4:00     ` [PATCH 11/22] ACPI: EC: Don't use Global Lock if not asked to do so Len Brown
2007-03-10 14:12     ` Sanjoy Mahajan
2007-03-16 17:58 ` ACPI patches in test for Linux-2.6.22 Sergio Monteiro Basto
2007-03-16 18:03   ` Alexey Starikovskiy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200703151247.42326.lenb@kernel.org \
    --to=lenb@kernel.org \
    --cc=abelay@novell.com \
    --cc=andi@firstfloor.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=shaohua.li@intel.com \
    --cc=venkatesh.pallipadi@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).