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: Mon, 16 Jun 2014 05:43:01 +0000	[thread overview]
Message-ID: <bug-77201-12968-bV5ODQw31A@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 #86 from Viresh Kumar <viresh.kumar@linaro.org> ---
(In reply to Mauro from comment #82)
> I have managed to narrow this down to a function, specifically:
> cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE);

I guessed this yesterday, but thought this might not be the problem as there
aren't too many drivers notified for these transitions. And those rarely get
modified.

As Rafael also mentioned, the problem is obviously with some of the recipients
of these notifiers failing for the POSTCHANGE notification.

In case you don't know how this works, this is how:

Some kernel drivers can register for notifiers, so that before and after every
frequency tranistions notifiers would be called and those drivers can act
accordingly. One of them is broken here.

List of all files which are registering for these notifiers.

arch/arm/kernel/smp.c
arch/arm/kernel/smp_twd.c
arch/arm/mach-pxa/viper.c
arch/arm/mach-s3c24xx/mach-osiris-dvs.c
arch/blackfin/mach-common/dpmc.c
arch/cris/arch-v32/kernel/time.c
arch/powerpc/oprofile/op_model_cell.c
arch/sparc/kernel/time_64.c
arch/x86/kernel/tsc.c
arch/x86/kvm/x86.c
drivers/acpi/processor_perflib.c
drivers/acpi/processor_thermal.c
drivers/cpufreq/cpufreq.c
drivers/cpufreq/cpufreq_governor.c
drivers/cpufreq/cpufreq_stats.c
drivers/cpufreq/cris-artpec3-cpufreq.c
drivers/cpufreq/cris-etraxfs-cpufreq.c
drivers/cpufreq/loongson2_cpufreq.c
drivers/cpufreq/ppc_cbe_cpufreq_pmi.c
drivers/gpu/drm/tilcdc/tilcdc_drv.c
drivers/i2c/busses/i2c-davinci.c
drivers/i2c/busses/i2c-s3c2410.c
drivers/macintosh/windfarm_cpufreq_clamp.c
drivers/mmc/host/davinci_mmc.c
drivers/mmc/host/s3cmci.c
drivers/mtd/nand/s3c2410.c
drivers/pcmcia/soc_common.c
drivers/staging/tidspbridge/rmgr/drv_interface.c
drivers/thermal/cpu_cooling.c
drivers/tty/serial/samsung.c
drivers/tty/serial/sh-sci.c
drivers/video/da8xx-fb.c
drivers/video/nuc900fb.c
drivers/video/pxafb.c
drivers/video/s3c2410fb.c
drivers/video/sa1100fb.c
drivers/watchdog/s3c2410_wdt.c
include/linux/cpufreq.h


Those that look relevant to me for your configuration:

arch/x86/kernel/tsc.c
arch/x86/kvm/x86.c
drivers/acpi/processor_perflib.c
drivers/acpi/processor_thermal.c

Only first two had significant changes and there are some big changes in 3.14
around these. I am not good at that code and we need to get few more people
into this discussions. Though Rafael/Srivatsa might have seen these files..

But before that we must narrow down on this.. Believe me, we are very very
close :)

I have created two more branches: powernow-k8-post1 and powernow-k8-post2
(Compile tested only for x86_64_defconfig) ..

All debug messages/stop_transition/etc are dropped as we don't need them
anymore and so drop them from your script as well..

powernow-k8-post1 has reverted all changes between 3.13.8 and 3.14 for
arch/x86/kernel/tsc.c file and powernow-k8-post2 have done it for
arch/x86/kvm/x86.c..

Only one of these two will work for you. Check which one, I would put my 10
cents on *-post1 branch :)

Once, any one of the branches work for you, try doing a git bisect for that
branch and 3.14 (Only few revert patches actually, should be easy).. 

And you can tell me which revert patch has *fixed* the issue for you and that's
the culprit.

Then we can follow on LKML, will put you in CC, on the original commit
threads..

Thanks for your dedication towards fixing this up, it was really a nightmare to
get down to this :)

--
viresh

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

  parent reply	other threads:[~2014-06-16  5:43 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
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 [this message]
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-bV5ODQw31A@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).