From patchwork Fri Dec 22 09:46:04 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aisheng Dong X-Patchwork-Id: 10129439 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 62C236056E for ; Fri, 22 Dec 2017 09:46:35 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4B6BB297FE for ; Fri, 22 Dec 2017 09:46:35 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3FF4F29D5C; Fri, 22 Dec 2017 09:46:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 75DC729803 for ; Fri, 22 Dec 2017 09:46:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755987AbdLVJqd (ORCPT ); Fri, 22 Dec 2017 04:46:33 -0500 Received: from mail-cys01nam02on0066.outbound.protection.outlook.com ([104.47.37.66]:20672 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751334AbdLVJqV (ORCPT ); Fri, 22 Dec 2017 04:46:21 -0500 Received: from BN6PR03CA0089.namprd03.prod.outlook.com (10.164.122.155) by BN6PR03MB2690.namprd03.prod.outlook.com (10.173.144.9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.345.14; Fri, 22 Dec 2017 09:46:19 +0000 Received: from BN1AFFO11FD047.protection.gbl (2a01:111:f400:7c10::102) by BN6PR03CA0089.outlook.office365.com (2603:10b6:405:6f::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.345.14 via Frontend Transport; Fri, 22 Dec 2017 09:46:19 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; samsung.com; dkim=none (message not signed) header.d=none; samsung.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1AFFO11FD047.mail.protection.outlook.com (10.58.53.62) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.302.6 via Frontend Transport; Fri, 22 Dec 2017 09:46:04 +0000 Received: from b29396-OptiPlex-7040.ap.freescale.net (b29396-OptiPlex-7040.ap.freescale.net [10.192.242.1]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id vBM9kE4O003622; Fri, 22 Dec 2017 02:46:15 -0700 From: Dong Aisheng To: CC: , , , , Dong Aisheng , Ulf Hansson , Marek Szyprowski Subject: [RFC PATCH V1 1/2] clk: use atomic runtime pm api in clk_core_is_enabled Date: Fri, 22 Dec 2017 17:46:04 +0800 Message-ID: <1513935965-12909-1-git-send-email-aisheng.dong@nxp.com> X-Mailer: git-send-email 2.7.4 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131584095645888107; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(336005)(346002)(396003)(376002)(39380400002)(39860400002)(2980300002)(1110001)(1109001)(339900001)(189003)(199004)(316002)(47776003)(97736004)(104016004)(2351001)(2906002)(54906003)(8656006)(51416003)(36756003)(85426001)(86362001)(81166006)(53936002)(48376002)(50466002)(81156014)(8676002)(77096006)(5660300001)(105606002)(6666003)(68736007)(6916009)(16586007)(356003)(106466001)(305945005)(4326008)(50226002)(8936002)(59450400001)(498600001)(217873001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR03MB2690; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD047; 1:j5mHC36RybPY0SYNfc+1y+vgCveU7blCzCtQXUoCeqE0fE/y+93u0AyxHgrMkhS4hJPPQQHIBnRf4CEkSs8LIhtRlTAiGvFzgnvBSVzWjBgk5TUkGZFQWxEulBD+4DfT MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 80404232-991b-4822-6e6b-08d54920d187 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4628075)(201703131517081)(5600026)(4604075)(2017052603307); SRVR:BN6PR03MB2690; X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2690; 3:zwKyTjkvcEQdkib5qMtam6IFGO6yomlWihyc/OoH6ANEffQsyfdNRumJpaIFHxlfBb9c2ESjrFrxXP+5uZCJA2ItlPh0E/S2MFzDkOvtQ4T0EclAcUHn477iRhbrAWGFKQ1GG2HR3vY2Vwr36++iuGhy4XztP+SYgn68MoEqLKS3ifDyY0SXsOA2LTC3o0FqZ0D0Ur5KsKYM7hE8X7bCxz7JyEnizJZLxnsOlLlAQmTFd/6bxfQ+D7yCvaw29k3XEOg7KFCajmdP+fCOdu0rEQPBdvaCwdbOC2RsgOnMtocNen53wYyjnc+PE/allTiKwrBzkEFutFPFVMVaQ82fMXj4xhOz3cXbYI65PJNxZCw=; 25:6VQqExefxS4xu0tTPsvCgaEONOT0lnN2iCpTV3g5PFfDOXrbHyVn1cTZFuc/virJQw4HHX5iJqYM5fCpjXGLD5VEEsmUoWFxzTWa2XI/bLaVsmqutqE2VFF8rCtWYT0hxcshp+DuSKHzFbebmePZzJ1pC4Dk1/1CkuThvk52A65Z9LZYImLlEtvyeNL6UAJVbdUHHxiPkJDkAaUPb8xobK9/AZHsZmlP/aJzO7fhHEbmtNA1rdaMKsf1qnrYxlDPwQGujWnYP7/mT2FvdwIZxUIp8VszuHa2u965UcH6QuxyqmyZmAEH4j8leKg+dcQDIs9Qb1gM5NlkzLcl37Dadw== X-MS-TrafficTypeDiagnostic: BN6PR03MB2690: X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2690; 31:QRWQHFBHtYNhRjiHTfpt7ZudFbcTrhlFVjLc1lDoLLbrYmH+wW96dGgPTHiFA9cv0C5aNZe78yc/3066Z05hbcqJo7fLDFcj/A41qDSCwasYlXJGLn4PB7fETOdybEn0q/+BqX/gsiAO0G6xpMaEmpOHJUXVFBCkzNOZM8jYZcVaSLxzJMO+gqqaVbLRWgSiTRdEGhwLPnWvHqjFAmNF0z18iAmwsq623711y1hupqY=; 4:WnPhFprkCPCcZMJjlV7HAuAjCUMe1NLJRmrgzfoXnHohpPuz5QFc9K5RZwY62kw2NgsVc628FU2bAFa2Dkv1K+LzumrXa0sWlNgkGLIgs2AZrFGujP5XJI/zqkAMBkNdm3oxzTCtbvNTVrmQvbt9GsZjMCMZ0gEWyyoC3DD0VzKogAJzAHrbfS7v3TIPce7yjEMr2bXhSbH92+WM16LDgvZk4EAuLCuHCmo1EuwHDKQIbmKGNy/P1jXwhBu257pI05lsthQ02fiOg3zUD3xX+df6v87UXr+Q3Car5TVGVYVC0fiWKZJtMDxf6A6/2zxcaHWxy53uVQH7PbwA0EJNfnedDIXqJn0MSg8ZAgSERVs= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(7411616537696); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(2401047)(5005006)(8121501046)(10201501046)(3231023)(93006095)(93001095)(3002001)(6055026)(6096035)(201703131430075)(201703131448075)(201703131433075)(201703161259150)(201703151042153)(20161123556025)(20161123565025)(20161123563025)(20161123559100)(20161123561025)(201708071742011); SRVR:BN6PR03MB2690; BCL:0; PCL:0; RULEID:(100000803101)(100110400095)(400006); SRVR:BN6PR03MB2690; X-Forefront-PRVS: 05299D545B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN6PR03MB2690; 23:Ue5xIkG6eA27zeuUd4OMn/1fFmU7rU5wmXytTLMhj?= =?us-ascii?Q?BkZkmXff3A7HL1UHPur3KTgwCMP4fghG5Q7JrylDFDgiYfZSI+mm7JHeaF16?= =?us-ascii?Q?q/Pvai+w+rO4wGyUl+f0hN4aXdWISWteBxNYFLmfVzO/yNymfGdLRq849qDN?= =?us-ascii?Q?hGMiT8RCd/VebzWCpS9pDVAGBwUfBlXpepYouG7g6nzPaAx7rcrtRXh6r+Y6?= =?us-ascii?Q?5/iGzw1R7TPEIRZjPIF9hBqzLhIbC2+6DC3+U1qg2aELDLpuEDB9dN2fjJoh?= =?us-ascii?Q?c6EEcHhxLPOyGPdEjzECxhTZOMehpNDwzdzysIYYycJXxlilSOowou+llzp+?= =?us-ascii?Q?tF6L55ryFagLSnl1F0BCmaO0zc0i6z5gQpV478oamNjvgsOmVHM9JY6GVqcq?= =?us-ascii?Q?0Xi3tMaQtWOSqx6CWGm//Maq3Bo16bgrW1gAn2Jz1i+vudu0hbfRrMrdGnT9?= =?us-ascii?Q?0cAmVeixi+7OQXVCNB9ykFymuDcEegIIGY7EQudeba1o1Osx/qB0KZ4b9Dve?= =?us-ascii?Q?1SpzikWeZSG2Q86MfhFvdGcbh1X+qZ3s1OECV6xUsGCedzx5CZoSiOPSpcnp?= =?us-ascii?Q?3835wswVaGXOUY+NmUrjui+ahWI3MIsnQRbQ1OvbeYcEoOn8GIM9ATQNeBcF?= =?us-ascii?Q?btnTKI7FfdKy7UeiIMivLVNBqEcRVHbRjvLhB/s/H23KpcDTupuxgVKt+As4?= =?us-ascii?Q?JOQBmlxZw2YdsBRFBihVAAU8Wbj9x4P2gwjL6DMTymlPznGgYi3rFqM1ceJC?= =?us-ascii?Q?0poIrXLbxrUjH7i/Kh5NAZzVR8m2kWSAukiiLZKgVlt56dCm4xaVobTtqZ1o?= =?us-ascii?Q?9G5eF0b/6oNmqEZjYHzhEOge+7/zQJcU+9ZZxjV3Oatm5uHgeDWbRrP0+y8l?= =?us-ascii?Q?ka9WK4Z8mYCsWboJjSqRUgOI5tb5brojVXdsbNPramCIe/uH4e52AAfxby54?= =?us-ascii?Q?kZmXVIB8/FiVIdI2b8LZ50VtOWH+XrmnWCNLsYuTnahovFdhmcjBj/ABx8Wp?= =?us-ascii?Q?u/o0nA9qSPdKBwJAhMgL7SNkocBDjjvGtr6gJp+SXGtHBWtnY8PEOyFKHISu?= =?us-ascii?Q?6msWyTsGucIXKqjJHWKJf00FTJh?= X-Microsoft-Exchange-Diagnostics: 1; BN6PR03MB2690; 6:8BF7yxxxCF6RLml8y4APicsMd2gFSylc+gh707UBViNpCU4UsVHTjfnVSEBW5ifqZlOHepTfzc84XX/W0+BApqSedPk4k+UMGRjhZSVjVxQsZ23UveCUcAeCHRMuQK7DFvNigH76b+a3p9K1SdXl3Hqo3GzCs9wAmqRbcEn9c74iQoJ1fAYHXPoDISQW1W2MdBaCI3qZ1H+Pkuls9nmqV0Wfgn2EQwLIX8CBtlcGUYa2HqmV4tAgTPo953C/T7YkkyvbTnnFeMU1EwReALqCwyGh2/ZfEYkL3++kMtNGwSNzxH6CVF2aSR3XLP93deFp9NC3e3RtuyebzOcZ9wpiOZZPGmkxql3MLmGziFlhJSg=; 5:GO4FuBPZprea/MBdsmSkeXLxgmEUtM2T3cIsiitEp7/+HSjPRTgVVvnrN3SBKjcSBwRkO9tj96sqWa04+BkRAsZ8afyJTsgLPPSZh8qOWP/e6pAakHN7erTE/lZ0FZuv0kkJP7b9ZgAaPAVibLWkgdKUfSv/V/z0Zt0oyH7wYJU=; 24:nc7B7OZ1j6INiQEM5limoeFXE23ivHrKJMBscOkkjEIvXMfci2IEOOIAsp188NO3M57NQvvmYZjbjYWV8SLn3jAIQLiMX8ypsKLg/QUO+rM=; 7:TTiWw/5hyTZHUW+EdiMgp8j8Dy8vyKuRbTfBnmpUJkT32Bt2soHA/U+Okt6FG26TEmB8Bxk+O5IeGQjxvTKKZWUj2zmF08Z/q8uEdI0k9m3y53vz11ywKsUvmkDs1z5+nWdruLhrEHkgyNhMoPHIeGnouX8ch1J1Q++niUp3Jq/v13PGeGD+IpjgApl5lp4Q5XGT8WTWC2rZZhEiO1BAWiSvwgnJv1wjPR/ML3c+B9Vuuv6+uNNXF65bvOI49MOu SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Dec 2017 09:46:04.4172 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 80404232-991b-4822-6e6b-08d54920d187 X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR03MB2690 Sender: linux-clk-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-clk@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Current clk_pm_runtime_put is using pm_runtime_put_sync which is not safe to be called in clk_core_is_enabled as it should be able to run in atomic context. Thus use pm_runtime_put instead which is atomic safe. Cc: Stephen Boyd Cc: Michael Turquette Cc: Ulf Hansson Cc: Marek Szyprowski Fixes: 9a34b45397e5 ("clk: Add support for runtime PM") Signed-off-by: Dong Aisheng Reviewed-by: Ulf Hansson --- drivers/clk/clk.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 5ec5809..e24968f 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -227,7 +227,8 @@ static bool clk_core_is_enabled(struct clk_core *core) ret = core->ops->is_enabled(core->hw); done: - clk_pm_runtime_put(core); + if (core->dev) + pm_runtime_put(core->dev); return ret; }