cpufreq.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: bugzilla-daemon@bugzilla.kernel.org
To: cpufreq@vger.kernel.org
Subject: [Bug 77201] CPU online hangs, works when powernow-k8 is UN-loaded
Date: Thu, 12 Jun 2014 10:18:47 +0000	[thread overview]
Message-ID: <bug-77201-12968-OlmyecOVcs@https.bugzilla.kernel.org/> (raw)
In-Reply-To: <bug-77201-12968@https.bugzilla.kernel.org/>

https://bugzilla.kernel.org/show_bug.cgi?id=77201

--- Comment #57 from Viresh Kumar <viresh.kumar@linaro.org> ---
(In reply to Mauro from comment #56)

Hi Mauro, we finally know your name :)

> I have finished testing the following:
> 
> 6f1e4efd882 (cpufreq: Fix timer/workqueue corruption by protecting reading
> governor_enabled)
> 87ae97f10c0 (cpufreq: s3c24xx: Staticize local variable)
> result: both ok

So you tested your stuff on these two commits (i.e. no reverts hacks)?

> 1c0ca90207 (cpufreq: don't call cpufreq_update_policy() on CPU addition)
> d9a789c7a0 (cpufreq: Refactor cpufreq_set_policy())
> result: both bad
> 
> 
> 4e97b631f24 (cpufreq: Initialize governor for a new policy under
> policy->rwsem)
> 5a7e56a5d29 (cpufreq: Initialize policy before making it available for
> others to use)
> result: both bad

I don't know what we can make out of these tests :(..

@Srivatsa: ?

> I have also tested setting the governor to userspace, setting the cpu to the
> minimum speed, cpu offline/online, set an intermediate cpu speed and then
> maximum speed.
> 
> The machine becomes unresponsive only when trying to set the cpu to the
> maximum speed.

Great. I am more convinced now that it is not a cpufreq problem. It can still
be something about your driver though.

> If I understand correctly, the suggestion to try next is to keep the patch
> from 
> comment 32, keep the changes I've done to powernow-k8 (remove all
> pr_debug()), keep the extra compile flags in drivers/cpufreq/Makefile and
> also add plenty of pr_debug() to drivers/cpufreq/cpufreq.c.

Correct!! But wait, continue reading ...

> I assume it is here I should add more debug output since target_index() can
> be found only here.

I couldn't understand that, sorry :(

> If I'm correct, in which places would it make more sense
> to add debug output and which info should I try to output?

I wouldn't be interested in any data here in prints. Just want to know what's
the last thing executed before hang..

> I'm ok with doing this as long as it doesn't get too complicated, the reason
> is my programming skills are not that good and I have zero knowledge of the
> kernel's internals.

It doesn't look like, you have managed very well :)

Okay, lets simplify things a bit.. I have updated my branch again with all
changes you need.. Don't add any other change and just test it.

I have added this at many locations:

+       pr_info("%s: %d\n", __func__, __LINE__);

Will print function name and line number in file.

You *will* get lots of prints now for every frequency transition.. To control
these, enable only *userspace* governor from menuconfig and leave all other
governors disabled. That way there wouldn't be any transition happening..

Now, repeat your earlier test with userspace governor and see which
line/routine is the last one... 

You will come to know broadly about where you have reached.. Now to go to the
exact statement, remove all prints I have added in powernow-k8 and add them
only in your hotpath, and add more of them to the last set of functions
executed.

Lets see if we can get to the last instruction which crashed :)

Probably it will be the one changing freq/voltage..

-- 
You are receiving this mail because:
You are the assignee for the bug.

  parent reply	other threads:[~2014-06-12 10:18 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <bug-77201-12968@https.bugzilla.kernel.org/>
2014-06-09 20:38 ` [Bug 77201] CPU online hangs, works when powernow-k8 is UN-loaded bugzilla-daemon
2014-06-09 21:58 ` bugzilla-daemon
2014-06-09 22:01 ` bugzilla-daemon
2014-06-09 23:15 ` bugzilla-daemon
2014-06-10  4:41 ` bugzilla-daemon
2014-06-10  5:26 ` bugzilla-daemon
2014-06-10 12:44 ` bugzilla-daemon
2014-06-10 12:44 ` bugzilla-daemon
2014-06-10 12:45 ` bugzilla-daemon
2014-06-10 12:45 ` bugzilla-daemon
2014-06-10 12:46 ` bugzilla-daemon
2014-06-10 14:06 ` bugzilla-daemon
2014-06-10 14:42 ` bugzilla-daemon
2014-06-10 14:43 ` bugzilla-daemon
2014-06-10 14:47 ` bugzilla-daemon
2014-06-10 15:35 ` bugzilla-daemon
2014-06-10 16:47 ` bugzilla-daemon
2014-06-10 16:48 ` bugzilla-daemon
2014-06-10 19:04 ` bugzilla-daemon
2014-06-10 19:53 ` bugzilla-daemon
2014-06-11 10:28 ` bugzilla-daemon
2014-06-11 10:29 ` bugzilla-daemon
2014-06-11 11:01 ` bugzilla-daemon
2014-06-11 11:04 ` bugzilla-daemon
2014-06-11 11:12 ` bugzilla-daemon
2014-06-11 11:18 ` bugzilla-daemon
2014-06-11 11:37 ` bugzilla-daemon
2014-06-11 12:02 ` bugzilla-daemon
2014-06-11 12:06 ` bugzilla-daemon
2014-06-11 13:50 ` bugzilla-daemon
2014-06-11 13:51 ` bugzilla-daemon
2014-06-11 13:55 ` bugzilla-daemon
2014-06-11 14:10 ` bugzilla-daemon
2014-06-11 14:21 ` bugzilla-daemon
2014-06-11 14:42 ` bugzilla-daemon
2014-06-11 15:35 ` bugzilla-daemon
2014-06-11 15:59 ` bugzilla-daemon
2014-06-11 17:50 ` bugzilla-daemon
2014-06-11 18:40 ` bugzilla-daemon
2014-06-11 19:35 ` bugzilla-daemon
2014-06-11 19:42 ` bugzilla-daemon
2014-06-11 19:43 ` bugzilla-daemon
2014-06-12  2:36 ` bugzilla-daemon
2014-06-12  2:48 ` bugzilla-daemon
2014-06-12  2:49 ` bugzilla-daemon
2014-06-12  9:48 ` bugzilla-daemon
2014-06-12 10:18 ` bugzilla-daemon [this message]
2014-06-12 13:22 ` bugzilla-daemon
2014-06-12 14:20 ` bugzilla-daemon
2014-06-12 14:30 ` bugzilla-daemon
2014-06-12 14:31 ` bugzilla-daemon
2014-06-12 14:34 ` bugzilla-daemon
2014-06-12 15:14 ` bugzilla-daemon
2014-06-12 15:29 ` bugzilla-daemon
2014-06-12 16:26 ` bugzilla-daemon
2014-06-12 16:48 ` bugzilla-daemon
2014-06-12 19:27 ` bugzilla-daemon
2014-06-12 21:28 ` bugzilla-daemon
2014-06-12 23:41 ` bugzilla-daemon
2014-06-13  4:14 ` bugzilla-daemon
2014-06-13  4:20 ` bugzilla-daemon
2014-06-13  5:18 ` bugzilla-daemon
2014-06-13 10:49 ` bugzilla-daemon
2014-06-13 21:23 ` bugzilla-daemon
2014-06-14 20:05 ` bugzilla-daemon
2014-06-14 20:08 ` bugzilla-daemon
2014-06-14 20:09 ` bugzilla-daemon
2014-06-14 20:11 ` bugzilla-daemon
2014-06-14 20:13 ` bugzilla-daemon
2014-06-14 20:20 ` bugzilla-daemon
2014-06-15  5:00 ` bugzilla-daemon
2014-06-15 10:30 ` bugzilla-daemon
2014-06-15 10:31 ` bugzilla-daemon
2014-06-15 10:32 ` bugzilla-daemon
2014-06-15 23:13 ` bugzilla-daemon
2014-06-16  5:43 ` bugzilla-daemon
2014-06-16  9:36 ` bugzilla-daemon
2014-06-16  9:36 ` bugzilla-daemon
2014-06-16  9:51 ` bugzilla-daemon
2014-06-16 12:11 ` bugzilla-daemon
2014-06-16 12:47 ` bugzilla-daemon
2014-06-16 12:51 ` bugzilla-daemon
2014-06-16 13:15 ` bugzilla-daemon
2014-06-16 13:27 ` bugzilla-daemon
2014-06-16 15:31 ` bugzilla-daemon
2014-06-16 15:41 ` bugzilla-daemon
2014-06-16 23:22 ` bugzilla-daemon

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=bug-77201-12968-OlmyecOVcs@https.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;
as well as URLs for NNTP newsgroup(s).