Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752074AbbHEKjz (ORCPT ); Wed, 5 Aug 2015 06:39:55 -0400 Received: from mail-bl2on0130.outbound.protection.outlook.com ([65.55.169.130]:36407 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751361AbbHEKjx (ORCPT ); Wed, 5 Aug 2015 06:39:53 -0400 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; lists.ozlabs.org; dkim=none (message not signed) header.d=none; Date: Wed, 5 Aug 2015 18:39:46 +0800 From: Chenhui Zhao Subject: Re: [PATCH 2/3] PowerPC/mpc85xx: Add hotplug support on E5500 and E500MC cores To: Scott Wood CC: , , , Tang Yuantian , Message-ID: <1438771186.21522.1@remotesmtp.freescale.net> In-Reply-To: <1438636720.2097.63.camel@freescale.com> References: <1438334444-31919-1-git-send-email-b29983@freescale.com> <1438334444-31919-2-git-send-email-b29983@freescale.com> <1438388082.19345.85.camel@freescale.com> <1438602724.7515.3@remotesmtp.freescale.net> <1438636720.2097.63.camel@freescale.com> X-Mailer: geary/0.10.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8"; format=flowed X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BL2FFO11FD015;1:YcApHMs+KwTE7pStG+n2CuEi1h4UVlSI862NN1vIOxytqWFvIkXrhZjlKPtJIKb4wxhTMFRXXeG/JdSSwqWbeZ0NeZNJMvYo6yum7w6J26IWXQVMo9zyjOcTTGOZ9KC2osWiYc1Nvq85/NpekzOGAiYlJgS6+urY4JZipSXY5BdWWgSB1iP2GwpQnzCeOHenfLGc1qes6m7HEAGAuXxjjEG5/Ju9eM66ranyXuvUSvgYXJmHTXloXKpuj2Ugn+4YfLPKvkUGnXJZqqqqzpTuLnQ4i1GHDYx2XD3p4RR7S7EBlB9sqZ+dfUDCqd17I1h+9obdzVuBJ2cXkZ3CDt0mwQ== X-Forefront-Antispam-Report: CIP:192.88.158.2;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(339900001)(377424004)(24454002)(189002)(377454003)(199003)(77156002)(64706001)(87936001)(69596002)(86362001)(85426001)(47776003)(88526003)(46102003)(50466002)(50986999)(4001450100002)(50226001)(76176999)(93886004)(77096005)(2950100001)(62966003)(68736005)(4001540100001)(5001860100001)(97736004)(81156007)(92566002)(110136002)(105606002)(5001830100001)(5001960100002)(189998001)(104016003)(6806004)(19580405001)(23676002)(106466001)(19580395003);DIR:OUT;SFP:1102;SCL:1;SRVR:BLUPR03MB567;H:az84smr01.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB567;2:gQN10WxhBJuS9VONN2/GZAW2MaHXus3+cdi31q+WiTjlVEG0FSGrgwmDoA8KJ7EIV6l86Ju0F9hz4RknvWEn1BTFrOTgux6fRHF2xvNWl8SjUslbvEFqRVxZ8Ffk5kuTGRhLuotwE9/zcY30hHDGYoqpLSZ2biaJjFw7IQ3pQts=;3:oddDYW54MpIq785PFFgm34KKgivxE04NPjqiuSFsZ/TQe2s/SaKhxgW5S5TpHr1vOCece9FTW4sw/la5afWKsL030M12N73bSlah7T5nQabQDdHmPXJKFyqbI/Jucixoc59hwK3v+iZuIcuokQskn9atJq/YCAuQy/2Ht+UhNe47/qfDY3gJwbLsVX5WMVuGK+RMnp5sHWw9HlTVCkv4cCDGLdz06K5iCOA9Aj/h4eU=;25:WrUHAyRw12ByS/u6psz9g0Xm0ezbsd5GMuDuqk9ZLJrLqETiwjldsPa1AzYr58Bd95XyQsl5iwwMNolO+lZwJLol703Kv3B03rp1SXUT4FOSRuR4fVOuW4R+HGLRQQjbQ021UfJ08ZNLFmaagprno462Mm8hOP9d12Owt5pa9QmOdzGJQXGYdA1eDIFhjW3z4DtXsd0ustomc4G8ndZ+QpyNaNDWYT0m5QJ7Z2FEFv97tKZwEI3HiXdT3cJ2BDTXMOejY4mYNrv1AcXigBZW3A== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR03MB567; X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB567;20:6wWi4OeOZQuH0Pqn6pD9JfjjbaBTmzIHA/zlkKUTaXuwkHBmeFJ1+FIRGFNQGMrGUFZ4bzglgEmI2X5GqrP0typs+1Gt6tSk+DQxidXDRfY+9Ql+CJUgt2yiQRHtzkNgcGGP2gx85no//x3XYcemJoKWbTYJ8gHD9WxjnK+oXrihHA95XxHYiTPdqfUS2bFu6zaGnaAHjabl7CNkOkyJ4dUQ6fVYfxXUfZdbYfiGjuArZT1IL/++I76yeA8VmTnFS3vtMm/vwk7nUJl/POC4DLTHRH4rCy1iGy5UsVAXYzXm99aZQXvbqjOPlpu1pRznGXaO5tbXdHzLlsin/+vEY6JhlEsvSDtn/tLyRYo26z4=;4:sKY8g5zyM1cRYEjs9Rvc1gHKFmGRUL3lalV7L2OYGliTMjPUCHSmLxbdsza6lCGKkQljb1dVkLKaUV06hVE26YB3uTlt34mO6pCScMCxHtXFFYTksc9OvF8sBF9XtDbXZ96k6De9D/GAwbuIhMhQe28AbfuEZFEHw/Z9Y78YgpOPU272HFD0P5T5Fpazzdbdz+kBGMN9Y99xbS1Bszckf9/xCllDhsN4mH6d3uICDv9HZvpV4V6OvM8dtgTV2m50zyjIqdPQWKwCMEWgpXGZgGGYdC8b5hUwUwMiIxjCkeM= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BLUPR03MB567;BCL:0;PCL:0;RULEID:;SRVR:BLUPR03MB567; X-Forefront-PRVS: 06592CCE58 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTFVQUjAzTUI1Njc7MjM6UGpRd0pzVWVicG80WFhxdGJoSHlSbHYxL2pk?= =?utf-8?B?SzVZOGt5NHBzL2hFZnM0SSt4bWR6cys5Z09PMWVUdHd2eXkyTnNVVnRWcDJm?= =?utf-8?B?QjZtRnJXQ2xwZGhhTXQ4TUFlOHNqcndBdFNKRklxRXY2ZjlSMkV0ZUV4Yzg3?= =?utf-8?B?clhhV0JCaDM4UW1sWVU0NjFNMGluOTVKMlZIcnBUK0pmRzdVLzVuMUx4M2FW?= =?utf-8?B?VGpwOE9vcklnQjlTV2VxTzZ1dWN2UkY0UUdjWE5qenptWTFpRENKQm94NnZs?= =?utf-8?B?OXB6Z0V6aG1OZWVrQXhRQXhSMjhjdVBoVHJtRDI0S1B0cGdSeWRsRS9MMkxp?= =?utf-8?B?Smx0ZU80NTZ3ZnVJWWtQenc0MHJ4K2hwblFkMm0zYmpYd3RVWWU5ZjY5YTJ4?= =?utf-8?B?UjJUVTlnYnQrTHVDZnhNYzZQbmZOcVV5YUEzZzIyWUppNE9OQ2VkU2pqWnQ4?= =?utf-8?B?SHhsVk1nSVZ5UjFQVlZzRmFsYS9aN2Y0RHFJRThNVFRxQkhZbGNobVRTU3ht?= =?utf-8?B?R2grdG5ZNzFEUDBzRCtaYVEwYnZ1TzhzdnBnR3ZsQXVzUkovOGZLSG1Sc1Er?= =?utf-8?B?Z1hNMjBwdDduVC8zNGY5TGpwQ2p1N0NkWmxqbVlPMWMxWXdjQ2tpeHdGMWE0?= =?utf-8?B?dmR5TFpTUW5Kc0c3VGRKaG83SjFqZmJJbGNEZEZJM0NzajdpMWhFazFPaWZZ?= =?utf-8?B?WXhqeDJ2VW1CZTI2dG1yb2NRRFROTVV5c054ZC9tREdqOUY3aUFZZmZkaWJJ?= =?utf-8?B?WTc3eG4rZmd2dTJVVExjMXpmOWZIQlVPYml4Tm5WdTY4QVlpNUZmajdad0dK?= =?utf-8?B?T0plRHFOSjBQUzBOVmd1bi80RVdxbHRhcWtUV09Pb3B6UkIwM3JOWU5qU3o2?= =?utf-8?B?clFEVFQrdkQyc0JsQnNKVkVMS3dNalFUVE45VndVOVJMSnZDUVIrd2FZcVNM?= =?utf-8?B?NmRiRmxJd2thVUdrYVFMK3VScktUWlR5L0ZoOFRFWW1wc0R5NElkMXZYekdh?= =?utf-8?B?WDFyS0JnSldtSGFKT0Y4Vk1TTnB6dVFNMUZINWZrTFpIdzByNmRHbU5MSURu?= =?utf-8?B?ZkRUallzNUo4aGJQQ1paeGdldUV1Qko3SFJCbkp2TFZPQWxUTWFHT2JYOUlG?= =?utf-8?B?OWRrbXRWNlZESmZ2Z1Y4TTEvRzRqMm1iaVZIR2ZRTHNLZlVoVFo2R0ZLNERJ?= =?utf-8?B?ZzBmNitCVG5UOGxtZTM2eFZBUW93M2ZOMHhqUWR0bkNDSGFhdWR4VFRud0Y2?= =?utf-8?B?ZHpqcFdjVlgwSHoyMzhiRnZMa1gvVlNPMHArRUpMaDYvSGEyTVJiL1p5TGMy?= =?utf-8?B?ZTM5YlQzTTl5V09RTVJMMkFvM3BDblVGekRSeUt4QjhCSEV5dkpRSy8zSGdX?= =?utf-8?B?VmVEN2NsV0hWU3F4QTgyMkpRcjZES3NZUXZVQUFZK1JHRW9wb0ViMm1rVHly?= =?utf-8?B?cEJ1cmFQSU9UQnV6TmVRVlZWbkxqemdneU51T2ZoN1g1dE9KRmtHWkdIZ0xF?= =?utf-8?Q?3NeoYQJsmK11uYNv3gDPi8d3KY1XeRQt5M0PeoMBUspmW?= X-Microsoft-Exchange-Diagnostics: 1;BLUPR03MB567;5:NCNc+1CcG8p99iosaIwmbTgrtr8ULXr8pxrvSERBwAu/IvIenkqMnrPU6Oekt2TxhcyWO5ifTLj7YhBNJ0CGlRD+8jrpcN6Tz3fpGAn/NNz+PKZ+bj/H2UaytXEL3msFaDSusSljSQv7ZNNRrb+leg==;24:3al3osb/zNqqF+xBkU2EqUXTFQWlu+LRQXXI90H6zIb31bOXagLYeG4AiMq14hIldBNRMlB9qL+xWVQJnuxUpgr/gtJ9bZqskxs786ZabU0=;20:CLisa5CD/6MXNajus57tyVuLT6IVWfINYzo8bp0CKg9MzoI8zvJFpBTvIjH52dBGSS7Kk3lsXpLnTU+lphg/8g== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Aug 2015 10:39:49.7108 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR03MB567 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3297 Lines: 107 On Tue, Aug 4, 2015 at 5:18 AM, Scott Wood wrote: > [Added linuxppc-dev@lists.ozlabs.org. Besides that list being > required for > review of PPC patches, it feeds the patchwork that I use to track and > apply > patches.] > > On Mon, 2015-08-03 at 19:52 +0800, Chenhui Zhao wrote: >> On Sat, Aug 1, 2015 at 8:14 AM, Scott Wood >> wrote: >> > On Fri, 2015-07-31 at 17:20 +0800, b29983@freescale.comwrote: >> > > From: Tang Yuantian >> > > >> > > Freescale E500MC and E5500 core-based platforms, like P4080, >> T1040, >> > > support disabling/enabling CPU dynamically. >> > > This patch adds this feature on those platforms. >> > > >> > > Signed-off-by: Chenhui Zhao >> > > Signed-off-by: Tang Yuantian >> +{ >> > > + int i; >> > > + >> > > + for (i = 0; i < 50000; i++) { >> > > + if (generic_check_cpu_dead(cpu)) { >> > > + qoriq_pm_ops->cpu_die(cpu); >> > > +#ifdef CONFIG_PPC64 >> > > + paca[cpu].cpu_start = 0; >> > > +#endif >> > > + return; >> > > + } >> > > + udelay(10); >> > > + } >> > > + pr_err("%s: CPU%d didn't die...\n", __func__, cpu); >> > > +} >> > >> > Only 500ms timeout, versus 10sec in generic_cpu_die()? >> >> The process is fast. Maybe 10 second is too large. > > Is it fast 100% of the time? What if the CPU you intend to die is in > a long > critical section? What harm is there to having a longer timeout, > similar to > what other platforms use? Will change the max timeout to 10 seconds. > >> >> > >> > > #endif >> > > >> > > static inline void flush_spin_table(void *spin_table) >> > > @@ -246,11 +267,7 @@ static int smp_85xx_kick_cpu(int nr) >> > > spin_table = phys_to_virt(*cpu_rel_addr); >> > > >> > > local_irq_save(flags); >> > > -#ifdef CONFIG_PPC32 >> > > #ifdef CONFIG_HOTPLUG_CPU >> > > - /* Corresponding to generic_set_cpu_dead() */ >> > > - generic_set_cpu_up(nr); >> > > - >> > > if (system_state == SYSTEM_RUNNING) { >> > > /* >> > > * To keep it compatible with old boot program >> which >> > > uses >> > > @@ -263,6 +280,7 @@ static int smp_85xx_kick_cpu(int nr) >> > > out_be32(&spin_table->addr_l, 0); >> > > flush_spin_table(spin_table); >> > > >> > > + qoriq_pm_ops->cpu_up(nr); >> > >> > Again, is it possible to get here without a valid qoriq_pm_ops >> (i.e. >> > is there >> > anything stopping the user from trying to initiate CPU hotplug)? >> > >> > -Scott >> >> For every platform running this code, should has a valid >> qoriq_pm_ops. >> If not valid, it's a bug. > > How do you prevent this code from running when there is no valid > qoriq_pm_ops? > > -Scott > Will check if qoriq_pm_ops is valid. -Chenhui -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/