From mboxrd@z Thu Jan 1 00:00:00 1970 From: Meelis Roos Subject: Re: [PATCH v3] cpufreq: Catch double invocations of cpufreq_freq_transition_begin/end Date: Mon, 5 May 2014 11:53:48 +0300 (EEST) Message-ID: References: <20140505072129.14454.25747.stgit@srivatsabhat.in.ibm.com> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Return-path: In-Reply-To: <20140505072129.14454.25747.stgit@srivatsabhat.in.ibm.com> Sender: linux-kernel-owner@vger.kernel.org To: "Srivatsa S. Bhat" Cc: rjw@rjwysocki.net, viresh.kumar@linaro.org, ego@linux.vnet.ibm.com, cpufreq@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-pm@vger.kernel.org > > Changes in v3: > Expanded the comment in the code to briefly mention why ASYNC_NOTIFICATION > drivers are left out from the check, as suggested by Gautham R. Shenoy. > No code changes in this version. > > v2: https://lkml.org/lkml/2014/4/29/283 > v1: https://lkml.org/lkml/2014/4/28/469 Seems to work on VIA EPIA with 3.15-rc2 (no other cpufreq fixes): [ 8.250959] ------------[ cut here ]------------ [ 8.251179] WARNING: CPU: 0 PID: 116 at drivers/cpufreq/cpufreq.c:367 cpufreq_freq_transition_begin+0xd3/0xd8() [ 8.251400] Modules linked in: snd_via82xx snd_mpu401_uart longhaul snd_ac97_codec ac97_bus snd_rawmidi snd_seq_device sg snd_pcm snd_timer vt8231 via_rhine uhci_hcd hwmon ehci_hcd tulip i2c_viapro snd evdev soundcore serio_raw sr_mod i2c_core mii usbcore gameport usb_common cdrom parport_pc fan parport via_agp button agpgart processor [ 8.253465] CPU: 0 PID: 116 Comm: kworker/0:1 Not tainted 3.15.0-rc2-dirty #40 [ 8.253664] Hardware name: VIA TECHNOLOGIES, INC. EPIA/EPIA, BIOS 6.00 PG 11/02/2004 [ 8.253873] Workqueue: events od_dbs_timer [ 8.254038] 00000000 00000000 cf6afd60 c1283096 cf6afd90 c101ff15 c135a90c 00000000 [ 8.254574] 00000074 c138ccdc 0000016f c11eaaf0 c11eaaf0 cf542000 00061698 cf582c00 [ 8.255118] cf6afda0 c101ffa8 00000009 00000000 cf6afdd0 c11eaaf0 cf6afdd8 cf6afdf4 [ 8.255661] Call Trace: [ 8.255815] [] dump_stack+0x16/0x18 [ 8.255988] [] warn_slowpath_common+0x70/0x87 [ 8.256151] [] ? cpufreq_freq_transition_begin+0xd3/0xd8 [ 8.256316] [] ? cpufreq_freq_transition_begin+0xd3/0xd8 [ 8.256482] [] warn_slowpath_null+0x1d/0x1f [ 8.256641] [] cpufreq_freq_transition_begin+0xd3/0xd8 [ 8.256809] [] ? __srcu_notifier_call_chain+0x24/0x93 [ 8.256989] [] longhaul_setstate+0x88/0x2f1 [longhaul] [ 8.257149] [] ? srcu_notifier_call_chain+0x1a/0x1c [ 8.257315] [] ? cpufreq_freq_transition_begin+0xbc/0xd8 [ 8.257481] [] longhaul_target+0x7c/0x8b [longhaul] [ 8.257647] [] __cpufreq_driver_target+0xfe/0x148 [ 8.257824] [] ? get_cpu_iowait_time_us+0x84/0xa3 [ 8.257981] [] od_check_cpu+0x75/0x79 [ 8.258135] [] dbs_check_cpu+0xbd/0xc5 [ 8.258286] [] ? need_load_eval+0x18/0x79 [ 8.258439] [] od_dbs_timer+0x7a/0xd9 [ 8.258612] [] process_one_work+0x205/0x363 [ 8.258770] [] ? process_one_work+0x1d4/0x363 [ 8.258927] [] ? worker_thread+0x27/0x26f [ 8.259086] [] worker_thread+0x1a0/0x26f [ 8.259244] [] ? rescuer_thread+0x204/0x204 [ 8.259405] [] kthread+0xa3/0xa8 [ 8.259567] [] ret_from_kernel_thread+0x20/0x30 [ 8.259726] [] ? kthread_create_on_node+0x112/0x112 [ 8.259874] ---[ end trace fe16863c964a8bbe ]--- -- Meelis Roos