linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Lezcano <daniel.lezcano@linaro.org>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: lenb@kernel.org, linux-pm@vger.kernel.org,
	linux-acpi@vger.kernel.org, patches@linaro.org,
	linaro-dev@lists.linaro.org, pdeschrijver@nvidia.com,
	lorenzo.pieralisi@arm.com
Subject: Re: [PATCH 2/6] acpi : move cpuidle_device field out of the acpi_processor_power structure
Date: Tue, 11 Sep 2012 14:20:50 +0200	[thread overview]
Message-ID: <504F2CA2.8010902@linaro.org> (raw)
In-Reply-To: <201209080006.11888.rjw@sisk.pl>

On 09/08/2012 12:06 AM, Rafael J. Wysocki wrote:
> On Friday, September 07, 2012, Rafael J. Wysocki wrote:
>> On Friday, September 07, 2012, Rafael J. Wysocki wrote:
>>> On Friday, September 07, 2012, Daniel Lezcano wrote:
>>>> Currently we have the cpuidle_device field in the acpi_processor_power structure.
>>>> This adds a dependency in processor.h for cpuidle.h.
>>>>
>>>> In order to be consistent with the rest of the drivers and for the per cpu states
>>>> coming right after this patch, this one move out of the acpi_processor_power
>>>> structure the cpuidle_device field.
>>>>
>>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>>>> Acked-by: Peter De Schrijver <pdeschrijver@nvidia.com>
>>>> Tested-by: Peter De Schrijver <pdeschrijver@nvidia.com>
>>>> ---
>>>>  drivers/acpi/processor_idle.c |   25 ++++++++++++++++++-------
>>>>  include/acpi/processor.h      |    2 --
>>>>  2 files changed, 18 insertions(+), 9 deletions(-)
>>>>
>>>> diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
>>>> index de89624..084b1d2 100644
>>>> --- a/drivers/acpi/processor_idle.c
>>>> +++ b/drivers/acpi/processor_idle.c
>>>> @@ -79,6 +79,8 @@ module_param(bm_check_disable, uint, 0000);
>>>>  static unsigned int latency_factor __read_mostly = 2;
>>>>  module_param(latency_factor, uint, 0644);
>>>>  
>>>> +static DEFINE_PER_CPU(struct cpuidle_device, acpi_cpuidle_device);
>>>> +
>>>
>>> Well.  Why are you moving that thing into the percpu memory?  It doesn't
>>> have to be per-CPU and storing it there just wastes the room.
>>
>> Sorry, it is per-CPU already, scratch that.
> 
> Well, no, it isn't.  So I was right originally (boy, that code _is_ confusing).
> 
> So originally you had per-CPU pointers called 'processors' that each pointed
> to a struct acpi_processor object created by acpi_processor_add() in slab
> memory.  Your patch doesn't touch those pointers, so they are still there.

Yes, the purpose of this patch is the same as the other patches which is
separate the cpuidle code from the rest of the acpi code. It is part of
the cleanup.

> In addition to them it creates a number of static per-CPU objects that
> previously were stored in those struct acpi_processor object mentioned above.
> These things need not be stored in percpu memory.

Agreed, this patch makes the cpuidle driver to consume more per cpu
memory. Is it acceptable to create a per cpu pointer for the cpuidle
devices which will be allocated in the processor_driver init function
like the intel_idle driver ? We keep the same memory consumption while
we are moving the cpuidle specific code the C file.

By the way, most of the cpuidle drivers for ARM are defining a static
cpuidle device structure per cpu. I guess your remark for acpi applies
to them too. Not easy to make all these drivers to converge to the same
code scheme ...

Thanks
  -- Daniel

-- 
 <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2012-09-11 12:20 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-07 10:19 [PATCH 0/6] cpuidle : per cpu latencies Daniel Lezcano
2012-09-07 10:19 ` [PATCH 1/6] acpi : move the acpi_idle_driver variable declaration Daniel Lezcano
2012-09-07 21:19   ` Rafael J. Wysocki
2012-09-11 11:14     ` Daniel Lezcano
2012-09-11 20:28       ` Rafael J. Wysocki
2012-09-07 10:19 ` [PATCH 2/6] acpi : move cpuidle_device field out of the acpi_processor_power structure Daniel Lezcano
2012-09-07 11:03   ` Amit Kucheria
2012-09-07 21:40   ` Rafael J. Wysocki
2012-09-07 21:54     ` Rafael J. Wysocki
2012-09-07 22:06       ` Rafael J. Wysocki
2012-09-11 12:20         ` Daniel Lezcano [this message]
2012-09-11 20:32           ` Rafael J. Wysocki
2012-09-07 10:19 ` [PATCH 3/6] acpi : remove pointless cpuidle device state_count init Daniel Lezcano
2012-09-07 11:01   ` Amit Kucheria
2012-09-07 21:50   ` Rafael J. Wysocki
2012-09-16 20:38     ` Daniel Lezcano
     [not found]       ` <505638D9.80302-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2012-09-16 21:02         ` Rafael J. Wysocki
2012-09-07 10:19 ` [PATCH 4/6] cpuidle : add a pointer for cpuidle_state in the cpuidle_device Daniel Lezcano
     [not found] ` <1347013172-12465-1-git-send-email-daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2012-09-07 10:19   ` [PATCH 5/6] cpuidle : use per cpuidle device cpu states Daniel Lezcano
2012-09-07 10:19 ` [PATCH 6/6] cpuidle : add cpuidle_register_states function Daniel Lezcano
2012-09-07 11:04 ` [PATCH 0/6] cpuidle : per cpu latencies Amit Kucheria
2012-09-07 12:02   ` Daniel Lezcano
2012-09-07 22:17 ` Rafael J. Wysocki
2012-09-17  8:03   ` Daniel Lezcano
2012-09-17 20:50     ` Rafael J. Wysocki
2012-09-17 21:35       ` Daniel Lezcano
2012-09-18  9:52         ` Lorenzo Pieralisi
2012-09-18 21:10           ` Rafael J. Wysocki
2012-09-18 11:19         ` Peter De Schrijver
2012-09-18 21:05         ` Rafael J. Wysocki

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=504F2CA2.8010902@linaro.org \
    --to=daniel.lezcano@linaro.org \
    --cc=lenb@kernel.org \
    --cc=linaro-dev@lists.linaro.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=patches@linaro.org \
    --cc=pdeschrijver@nvidia.com \
    --cc=rjw@sisk.pl \
    /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).