From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?iso-8859-1?Q?Lu=EDs?= Henriques Subject: Re: [PATCH 0/2] Backport to 3.10 stable (Fix CPU0 stall after CPU1 hotplug) Date: Thu, 3 Apr 2014 10:42:35 +0100 Message-ID: <20140403094235.GB3440@hercules> References: <1396448378-22487-1-git-send-email-k.kozlowski@samsung.com> Mime-Version: 1.0 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Content-Disposition: inline In-Reply-To: <1396448378-22487-1-git-send-email-k.kozlowski@samsung.com> Sender: linux-pm-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="iso-8859-1" To: Krzysztof Kozlowski Cc: stable@vger.kernel.org, cpufreq@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Xiaoguang Chen , Stephen Boyd , rjw@rjwysocki.net, Viresh Kumar On Wed, Apr 02, 2014 at 04:19:36PM +0200, Krzysztof Kozlowski wrote: > Hi, >=20 > These two patches are good candidates for backporting to stable 3.10.= They fix > a CPU0 stall due to timer list corruption after hotplugging CPU1. >=20 > 1. Commit: 95731ebb114c > cpufreq: Fix governor start/stop race condition > 2. Commit: 3617f2ca6d0e > cpufreq: Fix timer/workqueue corruption due to double queueing >=20 Thank you Krzysztof, I'll queue this 2nd patch for the 3.11 kernel as w= ell (the 1st one is already there). Cheers, -- Lu=EDs > Stall: > [ 130.127262] INFO: rcu_preempt detected stalls on CPUs/tasks: { 0} = (detected by 1, t=3D12003 jiffies, g=3D172, c=3D171, q=3D0) > [ 130.132285] Task dump for CPU 0: > [ 130.135496] swapper/0 R running 0 0 0 0x000010= 00 > [ 130.141983] [] (__schedule+0x3bc/0x80c) from [= ] (cpu_idle_force_poll+0x0/0x4) >=20 > List corruption: > [ 4244.528166] ------------[ cut here ]------------ > [ 4244.528507] WARNING: at lib/list_debug.c:33 __list_add+0xa8/0xbc() > [ 4244.533418] list_add corruption. prev->next should be next (c08864= b0), but was (null). (prev=3Dc1105454). > [ 4244.542938] Modules linked in: > [ 4244.546024] CPU: 0 PID: 1 Comm: sh Tainted: G W 3.10.14-= 03857-g20b26f7e0c59-dirty #1354 > [ 4244.554956] [] (unwind_backtrace+0x0/0x138) from [] (show_stack+0x10/0x14) > [ 4244.563518] [] (show_stack+0x10/0x14) from [] = (warn_slowpath_common+0x4c/0x68) > [ 4244.572452] [] (warn_slowpath_common+0x4c/0x68) from [] (warn_slowpath_fmt+0x30/0x40) > [ 4244.582008] [] (warn_slowpath_fmt+0x30/0x40) from [] (__list_add+0xa8/0xbc) > [ 4244.590696] [] (__list_add+0xa8/0xbc) from [] = (internal_add_timer+0x10/0x40) > [ 4244.599462] [] (internal_add_timer+0x10/0x40) from [] (add_timer_on+0x74/0x124) > [ 4244.608493] [] (add_timer_on+0x74/0x124) from [] (mod_delayed_work_on+0x50/0x68) > [ 4244.617622] [] (mod_delayed_work_on+0x50/0x68) from [] (gov_queue_work+0x48/0xa4) > [ 4244.626805] [] (gov_queue_work+0x48/0xa4) from [] (cpufreq_governor_dbs+0x29c/0x668) > [ 4244.636261] [] (cpufreq_governor_dbs+0x29c/0x668) from [= ] (__cpufreq_governor.part.9+0x30/0xd4) > [ 4244.646689] [] (__cpufreq_governor.part.9+0x30/0xd4) fro= m [] (__cpufreq_remove_dev.isra.12+0x130/0x484) > [ 4244.657798] [] (__cpufreq_remove_dev.isra.12+0x130/0x484= ) from [] (cpufreq_cpu_callback+0x70/0x80) > [ 4244.668466] [] (cpufreq_cpu_callback+0x70/0x80) from [] (notifier_call_chain+0x44/0x84) > [ 4244.678184] [] (notifier_call_chain+0x44/0x84) from [] (__cpu_notify+0x2c/0x48) > [ 4244.687200] [] (__cpu_notify+0x2c/0x48) from [= ] (_cpu_down+0x80/0x268) > [ 4244.695436] [] (_cpu_down+0x80/0x268) from [] = (cpu_down+0x28/0x3c) > [ 4244.703334] [] (cpu_down+0x28/0x3c) from [] (s= tore_online+0x30/0x74) > [ 4244.711426] [] (store_online+0x30/0x74) from [= ] (dev_attr_store+0x18/0x24) > [ 4244.720027] [] (dev_attr_store+0x18/0x24) from [] (sysfs_write_file+0x80/0xb4) > [ 4244.728960] [] (sysfs_write_file+0x80/0xb4) from [] (vfs_write+0xbc/0x1bc) > [ 4244.737551] [] (vfs_write+0xbc/0x1bc) from [] = (SyS_write+0x40/0x68) > [ 4244.745541] [] (SyS_write+0x40/0x68) from [] (= ret_fast_syscall+0x0/0x3c) > [ 4244.753881] ---[ end trace 6c85e0f7596a61f2 ]--- > [ 4244.758467] ------------[ cut here ]------------ > [ 4244.763115] WARNING: at lib/list_debug.c:36 __list_add+0x88/0xbc() > [ 4244.769247] list_add double add: new=3Dc1105454, prev=3Dc1105454, = next=3Dc08864b0. > [ 4244.776254] Modules linked in: > [ 4244.779337] CPU: 0 PID: 1 Comm: sh Tainted: G W 3.10.14-= 03857-g20b26f7e0c59-dirty #1354 > [ 4244.788247] [] (unwind_backtrace+0x0/0x138) from [] (show_stack+0x10/0x14) > [ 4244.796830] [] (show_stack+0x10/0x14) from [] = (warn_slowpath_common+0x4c/0x68) > [ 4244.805766] [] (warn_slowpath_common+0x4c/0x68) from [] (warn_slowpath_fmt+0x30/0x40) > [ 4244.815325] [] (warn_slowpath_fmt+0x30/0x40) from [] (__list_add+0x88/0xbc) > [ 4244.824009] [] (__list_add+0x88/0xbc) from [] = (internal_add_timer+0x10/0x40) > [ 4244.832777] [] (internal_add_timer+0x10/0x40) from [] (add_timer_on+0x74/0x124) > [ 4244.841811] [] (add_timer_on+0x74/0x124) from [] (mod_delayed_work_on+0x50/0x68) > [ 4244.850935] [] (mod_delayed_work_on+0x50/0x68) from [] (gov_queue_work+0x48/0xa4) > [ 4244.860120] [] (gov_queue_work+0x48/0xa4) from [] (cpufreq_governor_dbs+0x29c/0x668) > [ 4244.869577] [] (cpufreq_governor_dbs+0x29c/0x668) from [= ] (__cpufreq_governor.part.9+0x30/0xd4) > [ 4244.880007] [] (__cpufreq_governor.part.9+0x30/0xd4) fro= m [] (__cpufreq_remove_dev.isra.12+0x130/0x484) > [ 4244.891112] [] (__cpufreq_remove_dev.isra.12+0x130/0x484= ) from [] (cpufreq_cpu_callback+0x70/0x80) > [ 4244.901780] [] (cpufreq_cpu_callback+0x70/0x80) from [] (notifier_call_chain+0x44/0x84) > [ 4244.911499] [] (notifier_call_chain+0x44/0x84) from [] (__cpu_notify+0x2c/0x48) > [ 4244.920515] [] (__cpu_notify+0x2c/0x48) from [= ] (_cpu_down+0x80/0x268) > [ 4244.928752] [] (_cpu_down+0x80/0x268) from [] = (cpu_down+0x28/0x3c) > [ 4244.936653] [] (cpu_down+0x28/0x3c) from [] (s= tore_online+0x30/0x74) > [ 4244.944741] [] (store_online+0x30/0x74) from [= ] (dev_attr_store+0x18/0x24) > [ 4244.953341] [] (dev_attr_store+0x18/0x24) from [] (sysfs_write_file+0x80/0xb4) > [ 4244.962274] [] (sysfs_write_file+0x80/0xb4) from [] (vfs_write+0xbc/0x1bc) > [ 4244.970866] [] (vfs_write+0xbc/0x1bc) from [] = (SyS_write+0x40/0x68) > [ 4244.978858] [] (SyS_write+0x40/0x68) from [] (= ret_fast_syscall+0x0/0x3c) > [ 4244.987198] ---[ end trace 6c85e0f7596a61f3 ]--- >=20 >=20 > Best regards, > Krzysztof >=20 > -- > To unsubscribe from this list: send the line "unsubscribe stable" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html