From: bugzilla-daemon@bugzilla.kernel.org
To: cpufreq@vger.kernel.org
Subject: [Bug 55411] sysfs per-cpu cpufreq subdirs/symlinks screwed up after s2ram
Date: Fri, 22 Mar 2013 12:10:00 +0000 (UTC) [thread overview]
Message-ID: <20130322121000.C818E11FB81@bugzilla.kernel.org> (raw)
In-Reply-To: <bug-55411-12968@https.bugzilla.kernel.org/>
https://bugzilla.kernel.org/show_bug.cgi?id=55411
--- Comment #14 from Rafael J. Wysocki <rjw@sisk.pl> 2013-03-22 12:10:00 ---
[Adding Boris and Thomas to the CC.]
On Tuesday, March 19, 2013 02:20:06 PM Viresh Kumar wrote:
> Hi Guys,
>
> We are talking here about a bug reported by Duncan here. His cpu/cpu*/cpufreq
> directory are getting corrupted with 3.9-rc3 and was working well with 3.8
>
> https://bugzilla.kernel.org/show_bug.cgi?id=55411
>
> On his AMD bulldozer tri-cluster/6-core system he doesn't see affected
> and related
> cpus set correctly after off-lining 1-5 and bringing them back with:
>
> for i in 1 2 3 4 5; do echo 0 > /sys/devices/system/cpu/cpu$i/online ; done
> for i in 1 2 3 4 5; do echo 1 > /sys/devices/system/cpu/cpu$i/online ; done
>
> Before running above two, cpufreq-info gave:
> https://bugzilla.kernel.org/attachment.cgi?id=95701
>
> And after running above it gave:
> https://bugzilla.kernel.org/attachment.cgi?id=95711
>
> Clearly it got corrupted. Somehow cpu 3 showed up in related cpus field of
> cpu 5.
>
> I suspect following patches behind this:
>
> commit fcf8058296edbc3de43adf095824fc32b067b9f8
> Author: Viresh Kumar <viresh.kumar@linaro.org>
> Date: Tue Jan 29 14:39:08 2013 +0000
>
> cpufreq: Simplify cpufreq_add_dev()
>
> Currently cpufreq_add_dev() firsts allocates policy, calls
> driver->init() and then checks if this CPU is already managed or not.
> And if it is already managed, its policy is freed.
>
> We can save all this if we somehow know that CPU is managed or not in
> advance. policy->related_cpus contains the list of all valid sibling
> CPUs of policy->cpu. We can check this to see if the current CPU is
> already managed.
>
> From now on, platforms don't really need to set related_cpus from
> their init() routines, as the same work is done by core too.
>
> If a platform driver needs to set the related_cpus mask with some
> additional CPUs, other than CPUs present in policy->cpus, they are
> free to do it, though, as we don't override anything.
>
> [rjw: Changelog]
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> Tested-by: Shawn Guo <shawn.guo@linaro.org>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
>
> AND
>
> commit 643ae6e81dd65b333a13259852405fc9f764ac76
> Author: Viresh Kumar <viresh.kumar@linaro.org>
> Date: Sat Jan 12 05:14:38 2013 +0000
>
> cpufreq: Manage only online cpus
>
> cpufreq core doesn't manage offline cpus and if driver->init() has returned
> mask including offline cpus, it may result in unwanted behavior by
> cpufreq core
> or governors.
>
> We need to get only online cpus in this mask. There are two places
> to fix this
> mask, cpufreq core and cpufreq driver. It makes sense to do this
> at common place
> and hence is done in core.
>
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
>
> And this is the latest piece of documentation available:
>
> SMP systems normally have same clock source for a group of cpus. For these the
> .init() would be called only once for the first online cpu. Here the .init()
> routine must initialize policy->cpus with mask of all possible cpus (Online +
> Offline) that share the clock. Then the core would copy this mask onto
> policy->related_cpus and will reset policy->cpus to carry only online cpus.
>
>
> I saw acpi-cpufreq drivers driver->init() code and found it is not yet
> aligned to this
> theory and probably that is causing these failures.
>
> I don't have enough knowledge about this driver and how is it used for all x86
> systems and so want somebody else (who has some prior experience with it)
> to check how policy->cpus and policy->related_cpus must be set from
> driver->init().
OK, so what exactly do you need to now?
This has to be addressed before final 3.9 this way or another - and the sooner
the better.
Thanks,
Rafael
--
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
next prev parent reply other threads:[~2013-03-22 12:10 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-18 9:13 [Bug 55411] New: sysfs per-cpu cpufreq subdirs/symlinks screwed up after s2ram bugzilla-daemon
2013-03-18 9:21 ` [Bug 55411] " bugzilla-daemon
2013-03-18 9:26 ` bugzilla-daemon
2013-03-18 9:27 ` bugzilla-daemon
2013-03-18 9:38 ` bugzilla-daemon
2013-03-18 9:39 ` bugzilla-daemon
2013-03-18 9:56 ` bugzilla-daemon
2013-03-18 10:40 ` bugzilla-daemon
2013-03-18 11:53 ` bugzilla-daemon
2013-03-18 12:14 ` bugzilla-daemon
2013-03-19 6:16 ` bugzilla-daemon
2013-03-19 7:49 ` bugzilla-daemon
2013-03-19 7:57 ` bugzilla-daemon
2013-03-19 8:23 ` bugzilla-daemon
2013-03-19 8:27 ` bugzilla-daemon
2013-03-19 8:50 ` bugzilla-daemon
2013-03-22 12:10 ` bugzilla-daemon [this message]
2013-03-22 12:15 ` bugzilla-daemon
2013-03-22 12:53 ` bugzilla-daemon
2013-03-22 13:05 ` bugzilla-daemon
2013-03-22 13:21 ` bugzilla-daemon
2013-03-22 13:43 ` bugzilla-daemon
2013-03-22 14:03 ` Rafael J. Wysocki
2013-03-22 14:06 ` Viresh Kumar
2013-03-22 13:54 ` bugzilla-daemon
2013-03-22 13:56 ` bugzilla-daemon
2013-03-22 14:04 ` bugzilla-daemon
2013-03-22 14:05 ` bugzilla-daemon
2013-03-22 14:06 ` bugzilla-daemon
2013-03-22 14:10 ` bugzilla-daemon
2013-03-22 14:11 ` bugzilla-daemon
2013-03-22 14:13 ` bugzilla-daemon
2013-03-23 18:35 ` bugzilla-daemon
2013-03-24 9:05 ` bugzilla-daemon
2013-03-24 9:10 ` bugzilla-daemon
2013-03-24 9:48 ` bugzilla-daemon
2013-03-24 10:02 ` bugzilla-daemon
2013-03-24 10:31 ` bugzilla-daemon
2013-03-24 11:49 ` bugzilla-daemon
2013-03-24 12:16 ` bugzilla-daemon
2013-03-24 12:23 ` bugzilla-daemon
2013-03-25 11:15 ` bugzilla-daemon
2013-03-25 11:23 ` bugzilla-daemon
2013-03-25 13:55 ` bugzilla-daemon
2013-03-29 14:14 ` bugzilla-daemon
2013-04-13 17:45 ` bugzilla-daemon
[not found] <bug-55411-70601@https.bugzilla.kernel.org/>
[not found] ` <20130319074953.C200811FB80@bugzilla.kernel.org>
2013-03-19 8:50 ` Viresh Kumar
2013-03-22 12:17 ` Rafael J. Wysocki
2013-03-22 12:15 ` Viresh Kumar
2013-03-22 13:12 ` Rafael J. Wysocki
2013-03-22 13:21 ` Borislav Petkov
2013-03-22 12:53 ` Thomas Renninger
2013-03-22 13:43 ` Viresh Kumar
2013-03-22 13:54 ` Borislav Petkov
2013-03-22 14:05 ` Viresh Kumar
2013-03-22 14:11 ` Borislav Petkov
2013-03-22 14:04 ` Thomas Renninger
2013-03-22 14:10 ` Viresh Kumar
2013-03-22 14:13 ` Borislav Petkov
2013-03-24 9:05 ` Thomas Renninger
2013-03-24 9:10 ` Viresh Kumar
2013-03-24 10:02 ` Viresh Kumar
2013-03-24 11:49 ` Duncan
2013-03-24 12:16 ` Viresh Kumar
2013-03-24 12:23 ` Viresh Kumar
2013-03-25 11:15 ` Duncan
2013-03-25 11:23 ` Viresh Kumar
2013-03-25 13:55 ` Borislav Petkov
2013-03-29 14:14 ` Viresh Kumar
2013-03-24 10:31 ` Borislav Petkov
2013-03-23 18:35 ` Viresh Kumar
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=20130322121000.C818E11FB81@bugzilla.kernel.org \
--to=bugzilla-daemon@bugzilla.kernel.org \
--cc=cpufreq@vger.kernel.org \
/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