Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2962023imu; Mon, 19 Nov 2018 08:40:44 -0800 (PST) X-Google-Smtp-Source: AJdET5fuFeNDJ8WP1u7YKlQvY8SqVtVGTwn0MAxL2edr7JrprhJc8n7IFltl0X9D4BprOQwZ98ec X-Received: by 2002:a62:1d87:: with SMTP id d129-v6mr23156441pfd.47.1542645644463; Mon, 19 Nov 2018 08:40:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542645644; cv=none; d=google.com; s=arc-20160816; b=jNuq+H31F5YAjVGzqe3YJwEgmrE6a9j9jF7gkyL61F/t6DOWj/IDabpPr9Ako//PMN 8nqZabHFfyfDpgD64krBa88tXrfIFPZ6I/abO1rGKY53iC0OFvDuk15Wmh8KdH3VLMsk nshpErjELDnoJaTStCAZ4aVWLdBZaVOJOWzf+EhmXgnjPcS9VINZBCib0jrYfb3ObuBe w59kEAECg+cqAqhq2KyEC8I4XhnDJrej9BuCWV+pFoJPhElXm7WlzzklmEKJ9KQqQMr8 ppYDJn+VpIV6PeoUlX5TZME9E1IEOmGmlIKdfHpTmQxQYRVQsYnATjbP5on0BzBPmb8P gdFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=ePAi8pFMuO92TpXh4ndW9jiWCEUf04tkFS8Bfzoa6w8=; b=UyQnKXdhbvX0HXBQcqfkzDoka2wnjjdZhtiIB+TctDfp+KvfpWmdCyydmNHWtbcbos OAILHRDaDsUWhvEzyxeRV+sPMzy/MNJ7jfxANcaBldbUxwTt54KGmGOVNkDsRkSovB1T xjXomIbuzXEBn/T6jQWZdXquIv2RJPzeFjfhYzHfID7v6/tuQ8snIHG1QE3vxfk6QctN 5vuQ9uzcCOEE4vqzOGNWh83oMkcG7ae78qvqVCtDC6xYWklLwrjOsvo7zFAfFYZgvwJA GUcAktqzkb0m9QGd62sKX+6qNbFUjcvImOBZvo8zTcQrUtj8qb/1aZaOr7joKSs0PDf1 dp5A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xQp3hwQD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n18-v6si39723777plp.294.2018.11.19.08.40.29; Mon, 19 Nov 2018 08:40:44 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xQp3hwQD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732502AbeKTDCm (ORCPT + 99 others); Mon, 19 Nov 2018 22:02:42 -0500 Received: from mail.kernel.org ([198.145.29.99]:35034 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731835AbeKTDCl (ORCPT ); Mon, 19 Nov 2018 22:02:41 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 7F74D2147D; Mon, 19 Nov 2018 16:38:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1542645512; bh=fBVLDXEof9mA2gppONTfTj2zR84cbV/mNV9WJL5giGc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=xQp3hwQD5FEpG2CqI7azm4mgBTvYm9hG+AViZuk28Yd54jMm0UgCr9ypHmIWrM44q dlb+bEXzXLgUG0uDOQ2wWmrWElBNPmBrnQRZMW7r0Dt4hnBVpNucQCMv/ckw+qv7eZ +U6XSAcCv0YyTCpQTHxcewc2JQJHJCVlzHKPX36Y= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Ulf Hansson , Daniel Lezcano , "Rafael J. Wysocki" Subject: [PATCH 4.19 152/205] ARM: cpuidle: Dont register the driver when back-end init returns -ENXIO Date: Mon, 19 Nov 2018 17:27:39 +0100 Message-Id: <20181119162638.774142204@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181119162616.586062722@linuxfoundation.org> References: <20181119162616.586062722@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.19-stable review patch. If anyone has any objections, please let me know. ------------------ From: Ulf Hansson commit 763f191af51f127cf8e69cd361f50bf6180768a5 upstream. There's no point to register the cpuidle driver for the current CPU, when the initialization of the arch specific back-end data fails by returning -ENXIO. Instead, let's re-order the sequence to its original flow, by first trying to initialize the back-end part and then act accordingly on the returned error code. Additionally, let's print the error message, no matter of what error code that was returned. Fixes: a0d46a3dfdc3 (ARM: cpuidle: Register per cpuidle device) Signed-off-by: Ulf Hansson Reviewed-by: Daniel Lezcano Cc: 4.19+ # v4.19+ Signed-off-by: Rafael J. Wysocki Signed-off-by: Greg Kroah-Hartman --- drivers/cpuidle/cpuidle-arm.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) --- a/drivers/cpuidle/cpuidle-arm.c +++ b/drivers/cpuidle/cpuidle-arm.c @@ -103,13 +103,6 @@ static int __init arm_idle_init_cpu(int goto out_kfree_drv; } - ret = cpuidle_register_driver(drv); - if (ret) { - if (ret != -EBUSY) - pr_err("Failed to register cpuidle driver\n"); - goto out_kfree_drv; - } - /* * Call arch CPU operations in order to initialize * idle states suspend back-end specific data @@ -117,15 +110,20 @@ static int __init arm_idle_init_cpu(int ret = arm_cpuidle_init(cpu); /* - * Skip the cpuidle device initialization if the reported + * Allow the initialization to continue for other CPUs, if the reported * failure is a HW misconfiguration/breakage (-ENXIO). */ - if (ret == -ENXIO) - return 0; - if (ret) { pr_err("CPU %d failed to init idle CPU ops\n", cpu); - goto out_unregister_drv; + ret = ret == -ENXIO ? 0 : ret; + goto out_kfree_drv; + } + + ret = cpuidle_register_driver(drv); + if (ret) { + if (ret != -EBUSY) + pr_err("Failed to register cpuidle driver\n"); + goto out_kfree_drv; } dev = kzalloc(sizeof(*dev), GFP_KERNEL);