From nobody Tue Dec 2 00:26:38 2025 Received: from canpmsgout05.his.huawei.com (canpmsgout05.his.huawei.com [113.46.200.220]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 638B22C21C7; Tue, 25 Nov 2025 06:52:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=113.46.200.220 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764053544; cv=none; b=PNO7dOngrXkUM8dA54GVon3oTsmDxprRcPrtp6aT6YuYMLAye0T/XbGV1FBR/FzaWuBrJGoXJ10+Pjoxyx7XRkjeleGmakktBLUi+MeusR7Rq77R9Em2bhBoLis/C4UIJ9IwgFSKrSL972LnffFc42i8VQyGni+tCam3Sa4dnSc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764053544; c=relaxed/simple; bh=Y4986uSkO70VUb/bKs9P/E0H3k+yaQmVdnmPk8bBMRE=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=koiUexeCPaF/8ZIQ3xdt191ONYe8MDLGe2OqrbsjQnSuglU6/jLK6zoNWaJ4I7R1R/t19mucBT9JJuZXtGUmFLRgKKdPoDoP5WT2BKp1kLnE7Rs46cHqG00KycYb5n9qBcGl1evWkC7VGBof5xaYG3p1+SKqXHJClwlRohoRxkY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com; spf=pass smtp.mailfrom=h-partners.com; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b=RfPfc8Dp; arc=none smtp.client-ip=113.46.200.220 Authentication-Results: smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=h-partners.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b="RfPfc8Dp" dkim-signature: v=1; a=rsa-sha256; d=h-partners.com; s=dkim; c=relaxed/relaxed; q=dns/txt; h=From; bh=BpwmJwKgwjilnCt+D3rfzgG+NYb8ghDGEaR2ajjjLoA=; b=RfPfc8Dp3WDEeBY7goMGJKL3NPsoCfdKKU3vKBRaURv9MxZmCHXuWlAxJW810gpgZrgDtkXLs v+WxNrkYPd9sW20F6scNlQXLYJFIS+QCguirjT5e4533kuclgMacKt0LcmjYMcci8C1DDoriI1M atPLTr/6YpcuYP99UM5YI+U= Received: from mail.maildlp.com (unknown [172.19.88.194]) by canpmsgout05.his.huawei.com (SkyGuard) with ESMTPS id 4dFtcm4jH1z12LCr; Tue, 25 Nov 2025 14:50:48 +0800 (CST) Received: from dggemv705-chm.china.huawei.com (unknown [10.3.19.32]) by mail.maildlp.com (Postfix) with ESMTPS id F1B5714027A; Tue, 25 Nov 2025 14:52:12 +0800 (CST) Received: from kwepemn100009.china.huawei.com (7.202.194.112) by dggemv705-chm.china.huawei.com (10.3.19.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.11; Tue, 25 Nov 2025 14:52:11 +0800 Received: from localhost.localdomain (10.50.163.32) by kwepemn100009.china.huawei.com (7.202.194.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.36; Tue, 25 Nov 2025 14:52:10 +0800 From: Huisong Li To: , CC: , , , , , , , , Subject: [PATCH 1/3] ACPI: processor: idle: Relocate and verify acpi_processor_ffh_lpi_probe Date: Tue, 25 Nov 2025 14:52:08 +0800 Message-ID: <20251125065210.3670266-2-lihuisong@huawei.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20251125065210.3670266-1-lihuisong@huawei.com> References: <20251125065210.3670266-1-lihuisong@huawei.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: kwepems200001.china.huawei.com (7.221.188.67) To kwepemn100009.china.huawei.com (7.202.194.112) Content-Type: text/plain; charset="utf-8" The platform used LPI need check if the LPI support and the entry method is valid by the acpi_processor_ffh_lpi_probe(). But the return of acpi_processor_ffh_lpi_probe() in acpi_processor_setup_cpuidle_dev() isn't verified by any caller. What's more, acpi_processor_get_power_info() is a more logical place for verifying the validity of FFH LPI than acpi_processor_setup_cpuidle_dev(). So move acpi_processor_ffh_lpi_probe() from the latter to the former and verify its return. Signed-off-by: Huisong Li --- drivers/acpi/processor_idle.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index 5f86297c8b23..cdf86874a87a 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -1252,7 +1252,7 @@ static int acpi_processor_setup_cpuidle_dev(struct ac= pi_processor *pr, =20 dev->cpu =3D pr->id; if (pr->flags.has_lpi) - return acpi_processor_ffh_lpi_probe(pr->id); + return 0; =20 acpi_processor_setup_cpuidle_cx(pr, dev); return 0; @@ -1264,7 +1264,13 @@ static int acpi_processor_get_power_info(struct acpi= _processor *pr) =20 ret =3D acpi_processor_get_lpi_info(pr); if (ret) - ret =3D acpi_processor_get_cstate_info(pr); + return acpi_processor_get_cstate_info(pr); + + if (pr->flags.has_lpi) { + ret =3D acpi_processor_ffh_lpi_probe(pr->id); + if (ret) + pr_err("Processor FFH LPI state is invalid.\n"); + } =20 return ret; } --=20 2.33.0 From nobody Tue Dec 2 00:26:38 2025 Received: from canpmsgout03.his.huawei.com (canpmsgout03.his.huawei.com [113.46.200.218]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 049682C15BC; Tue, 25 Nov 2025 06:52:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=113.46.200.218 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764053538; cv=none; b=cf+gKYZyaRVxjdzKa1MxdrYjpOCzQU9PoDGaesJ8l274WpPdptYJ+ngCh9dlmZQLge8ZvAZMRkWlz3ASpff+7uv+a3qrLQX+Z5GBMibAuQ5QX8RSrtp8R6YpOUk+8TIrJAwO7nAfNyY6NV80k7VW4/kvkISPkgDVCQ0/f/7unFc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764053538; c=relaxed/simple; bh=B7eIWZ0Vi5QPTUPLso5aARqPsgT6mO+S+j76mX/yPfQ=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=ps/ciDKIYhRLnaHYta2AiOdBH28Q8Gfe/HAf+PXqqcTuEEPq/ZoAlt9gDc9bhOPk+S15T+zv4/XKUEAUuB9/EBIhBVxPqhTlHkchsBoYuPNFOI+mJnW0QE4j0p4GSqqL6UEgvyONQZEOL0dt8mzMqFF5M3RkYrsmQwkAKhw1KKc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com; spf=pass smtp.mailfrom=h-partners.com; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b=mTKv4s4M; arc=none smtp.client-ip=113.46.200.218 Authentication-Results: smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=h-partners.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b="mTKv4s4M" dkim-signature: v=1; a=rsa-sha256; d=h-partners.com; s=dkim; c=relaxed/relaxed; q=dns/txt; h=From; bh=wOortYuY6DV1U7dDZftsCYS9EeGP8NK9wfPNEvENjig=; b=mTKv4s4MFHi3qmwwFCjIkMSiy3wPt26C6rKgp9OIZO69XMEDOBVvXxwwo05zP0Ofi2eqSxf35 jji9adNStxxTtzZdmHKu2B2nh4F1LCHHesKkdc2wTszWTXz8oRHQxhK8T4IV5JxLf5joo/8tYPd 571pMjLoedNugdfk/D5HiK0= Received: from mail.maildlp.com (unknown [172.19.163.174]) by canpmsgout03.his.huawei.com (SkyGuard) with ESMTPS id 4dFtby6QqtzpTRf; Tue, 25 Nov 2025 14:50:06 +0800 (CST) Received: from dggemv706-chm.china.huawei.com (unknown [10.3.19.33]) by mail.maildlp.com (Postfix) with ESMTPS id 3DA4F14027D; Tue, 25 Nov 2025 14:52:12 +0800 (CST) Received: from kwepemn100009.china.huawei.com (7.202.194.112) by dggemv706-chm.china.huawei.com (10.3.19.33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.11; Tue, 25 Nov 2025 14:52:12 +0800 Received: from localhost.localdomain (10.50.163.32) by kwepemn100009.china.huawei.com (7.202.194.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.36; Tue, 25 Nov 2025 14:52:11 +0800 From: Huisong Li To: , CC: , , , , , , , , Subject: [PATCH 2/3] ACPI: processor: idle: Redefine acpi_processor_setup_cpuidle_dev to void Date: Tue, 25 Nov 2025 14:52:09 +0800 Message-ID: <20251125065210.3670266-3-lihuisong@huawei.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20251125065210.3670266-1-lihuisong@huawei.com> References: <20251125065210.3670266-1-lihuisong@huawei.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: kwepems200001.china.huawei.com (7.221.188.67) To kwepemn100009.china.huawei.com (7.202.194.112) Content-Type: text/plain; charset="utf-8" Notice that the acpi_processor_setup_cpuidle_dev() don't need to return any value because their callers don't check them anyway and the function doesn't fail to execute. So redefine the function to void. No intentional functional impact. Signed-off-by: Huisong Li --- drivers/acpi/processor_idle.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index cdf86874a87a..2804fa91c1ec 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -1244,18 +1244,17 @@ static int acpi_processor_setup_cpuidle_states(stru= ct acpi_processor *pr) * @pr: the ACPI processor * @dev : the cpuidle device */ -static int acpi_processor_setup_cpuidle_dev(struct acpi_processor *pr, - struct cpuidle_device *dev) +static void acpi_processor_setup_cpuidle_dev(struct acpi_processor *pr, + struct cpuidle_device *dev) { if (!pr->flags.power_setup_done || !pr->flags.power || !dev) - return -EINVAL; + return; =20 dev->cpu =3D pr->id; if (pr->flags.has_lpi) - return 0; + return; =20 acpi_processor_setup_cpuidle_cx(pr, dev); - return 0; } =20 static int acpi_processor_get_power_info(struct acpi_processor *pr) --=20 2.33.0 From nobody Tue Dec 2 00:26:38 2025 Received: from canpmsgout07.his.huawei.com (canpmsgout07.his.huawei.com [113.46.200.222]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2B1972C21C7; Tue, 25 Nov 2025 06:52:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=113.46.200.222 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764053538; cv=none; b=byvjDNM1h+6QhqhlLATD+dciVV8MvMDOUY9fs5fSGzDTC9ZBbAaeSnP7VKdTMdVde/uGhBHFdqe3Q2QNa4etxH8jU83PwrODiQJj8t6odb2X8utQd3BhbT7OhvMqDjGvfQnWkant2srqihnV/ybrLQn2NteHWKeqvaKlDMwNDGQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764053538; c=relaxed/simple; bh=rGBAlt8OJ2bjKgg2RkkpV/q3nlQDT8cdUWv40v9UMQQ=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=kTqaQ1bl/++mXMofp3O6eZ9wtfHwkeQqb7PFy3630xzAK+WrxSvUGjPsE79QLGU6/15zkt3p+6NgnpUcp3eGJeo5nm1x5BN44W5USr3Z9cY12VwEy+zhtnislofK7dBGZsZHGXUfUcPO6UjnLEs2CrVDXSBuWLd6/XDaODDqliI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com; spf=pass smtp.mailfrom=h-partners.com; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b=cebckWTP; arc=none smtp.client-ip=113.46.200.222 Authentication-Results: smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=h-partners.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b="cebckWTP" dkim-signature: v=1; a=rsa-sha256; d=h-partners.com; s=dkim; c=relaxed/relaxed; q=dns/txt; h=From; bh=krug79HeojaAfNB3caI6md9HquGK2NT19tkhxjhLbOE=; b=cebckWTPqPMjiy3hCo6mPKY4dwBLtbuO8HB6wUwUvElFLIY/qPLLjoK+G/ptDADwRvAz7bOpB zG/ZTzFBKAaujmZYZa+M/I57ZSJzVE7UYcw5HimQTqbUNhQUrbR/SighR948IW5UCrTzgq5P9PO DwdhJBcw+nkytVrtt8o1YIg= Received: from mail.maildlp.com (unknown [172.19.163.44]) by canpmsgout07.his.huawei.com (SkyGuard) with ESMTPS id 4dFtcK4Y8HzLlTw; Tue, 25 Nov 2025 14:50:25 +0800 (CST) Received: from dggemv712-chm.china.huawei.com (unknown [10.1.198.32]) by mail.maildlp.com (Postfix) with ESMTPS id 9846D14027A; Tue, 25 Nov 2025 14:52:12 +0800 (CST) Received: from kwepemn100009.china.huawei.com (7.202.194.112) by dggemv712-chm.china.huawei.com (10.1.198.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.11; Tue, 25 Nov 2025 14:52:12 +0800 Received: from localhost.localdomain (10.50.163.32) by kwepemn100009.china.huawei.com (7.202.194.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.36; Tue, 25 Nov 2025 14:52:11 +0800 From: Huisong Li To: , CC: , , , , , , , , Subject: [PATCH 3/3] ACPI: processor: idle: Redefine acpi_processor_setup_cpuidle_states to void Date: Tue, 25 Nov 2025 14:52:10 +0800 Message-ID: <20251125065210.3670266-4-lihuisong@huawei.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20251125065210.3670266-1-lihuisong@huawei.com> References: <20251125065210.3670266-1-lihuisong@huawei.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: kwepems200001.china.huawei.com (7.221.188.67) To kwepemn100009.china.huawei.com (7.202.194.112) Content-Type: text/plain; charset="utf-8" Notice that the acpi_processor_setup_cpuidle_states() don't need to return any value because their callers don't check them anyway. In addition, acpi_processor_setup_lpi_states() wouldn't execute with failure. So redefine setup idle functions to void. No intentional functional impact. Signed-off-by: Huisong Li --- drivers/acpi/processor_idle.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index 2804fa91c1ec..686aa18bbcd2 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -1180,7 +1180,7 @@ static int acpi_idle_lpi_enter(struct cpuidle_device = *dev, return -EINVAL; } =20 -static int acpi_processor_setup_lpi_states(struct acpi_processor *pr) +static void acpi_processor_setup_lpi_states(struct acpi_processor *pr) { int i; struct acpi_lpi_state *lpi; @@ -1188,7 +1188,7 @@ static int acpi_processor_setup_lpi_states(struct acp= i_processor *pr) struct cpuidle_driver *drv =3D &acpi_idle_driver; =20 if (!pr->flags.has_lpi) - return -EOPNOTSUPP; + return; =20 for (i =3D 0; i < pr->power.count && i < CPUIDLE_STATE_MAX; i++) { lpi =3D &pr->power.lpi_states[i]; @@ -1206,8 +1206,6 @@ static int acpi_processor_setup_lpi_states(struct acp= i_processor *pr) } =20 drv->state_count =3D i; - - return 0; } =20 /** @@ -1216,13 +1214,13 @@ static int acpi_processor_setup_lpi_states(struct a= cpi_processor *pr) * * @pr: the ACPI processor */ -static int acpi_processor_setup_cpuidle_states(struct acpi_processor *pr) +static void acpi_processor_setup_cpuidle_states(struct acpi_processor *pr) { int i; struct cpuidle_driver *drv =3D &acpi_idle_driver; =20 if (!pr->flags.power_setup_done || !pr->flags.power) - return -EINVAL; + return; =20 drv->safe_state_index =3D -1; for (i =3D ACPI_IDLE_STATE_START; i < CPUIDLE_STATE_MAX; i++) { @@ -1230,11 +1228,12 @@ static int acpi_processor_setup_cpuidle_states(stru= ct acpi_processor *pr) drv->states[i].desc[0] =3D '\0'; } =20 - if (pr->flags.has_lpi) - return acpi_processor_setup_lpi_states(pr); + if (pr->flags.has_lpi) { + acpi_processor_setup_lpi_states(pr); + return; + } =20 acpi_processor_setup_cstates(pr); - return 0; } =20 /** --=20 2.33.0