From nobody Wed Apr 1 10:08:45 2026 Received: from mailgw.kylinos.cn (mailgw.kylinos.cn [124.126.103.232]) (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 AC8B11F875A; Wed, 1 Apr 2026 03:31:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=124.126.103.232 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775014268; cv=none; b=MXUkFxk46jpQfn2JWyxGUnHVVwh/r24hQyyFqov0P/YLMIrSBUVV1Ac8KduLb+Ybcfg8iEyGxi9voUEMSGl82iN6gYziuW7L+KdkNX7G8mPZHbngDnU4WKzMmaT/pnT28uRdDU6U7Q4sXTGuuWW0MP1gkyNQD+N7Qf7PoAg8FO0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775014268; c=relaxed/simple; bh=5CGFhNCQOI0yuuYclPUbXal94Ds1V6CitkdMEpPNuwI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=An9jZo4qpNTATaHDO3GbypNCpnyr/sWiKSh0bvFJJa51cOZa19t+0rrEma7tHGfKClxkr3t4H1UTLtXkd26dLH6LNHYj+mCzdO2hZJ6p/Li5WvsZj4MVMiOALp6oefGX0FdIcREIMNrC8TP+IEOecLXoZCLcVhPMR1tGXiSCG3g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=kylinos.cn; spf=pass smtp.mailfrom=kylinos.cn; arc=none smtp.client-ip=124.126.103.232 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=kylinos.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=kylinos.cn X-UUID: 3349e7642d7b11f1aa26b74ffac11d73-20260401 X-CTIC-Tags: HR_CC_COUNT, HR_CC_DOMAIN_COUNT, HR_CC_NAME, HR_CC_NO_NAME, HR_CTE_8B HR_CTT_MISS, HR_DATE_H, HR_DATE_WKD, HR_DATE_ZONE, HR_FROM_NAME HR_SJ_DIGIT_LEN, HR_SJ_LANG, HR_SJ_LEN, HR_SJ_LETTER, HR_SJ_NOR_SYM HR_SJ_PHRASE, HR_SJ_PHRASE_LEN, HR_SJ_WS, HR_TO_COUNT, HR_TO_DOMAIN_COUNT HR_TO_NO_NAME, IP_UNTRUSTED, SRC_UNTRUSTED, IP_UNFAMILIAR, SRC_UNFAMILIAR DN_TRUSTED, SRC_TRUSTED, SA_TRUSTED, SA_EXISTED, SN_TRUSTED SN_EXISTED, SPF_NOPASS, DKIM_NOPASS, DMARC_NOPASS, CIE_BAD CIE_GOOD_SPF, CIE_UNKNOWN, GTI_FG_BS, GTI_RG_INFO, GTI_C_BU AMN_GOOD, ABX_MISS_RDNS X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.3.12,REQID:25d8c7d7-dcb5-4bbc-8cfa-4a7debaed8b7,IP:10, URL:0,TC:0,Content:0,EDM:25,RT:0,SF:-5,FILE:0,BULK:0,RULE:Release_Ham,ACTI ON:release,TS:30 X-CID-INFO: VERSION:1.3.12,REQID:25d8c7d7-dcb5-4bbc-8cfa-4a7debaed8b7,IP:10,UR L:0,TC:0,Content:0,EDM:25,RT:0,SF:-5,FILE:0,BULK:0,RULE:Release_Ham,ACTION :release,TS:30 X-CID-META: VersionHash:e7bac3a,CLOUDID:4e4fd67c1a3afbdfd5a1516a0f2d3cfa,BulkI D:260401113101YUB7CO8B,BulkQuantity:0,Recheck:0,SF:17|19|38|66|78|81|82|10 2|127|850|898,TC:nil,Content:0|15|50,EDM:5,IP:-2,URL:0,File:nil,RT:nil,Bul k:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES:1,SPR:NO,DKR:0,DKP:0,BRR:0 ,BRE:0,ARC:0 X-CID-BVR: 2,SSN|SDN X-CID-BAS: 2,SSN|SDN,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR,TF_CID_SPAM_FAS,TF_CID_SPAM_FSD X-CID-RHF: D41D8CD98F00B204E9800998ECF8427E X-UUID: 3349e7642d7b11f1aa26b74ffac11d73-20260401 X-User: tianyaxiong@kylinos.cn Received: from localhost.localdomain [(106.16.221.117)] by mailgw.kylinos.cn (envelope-from ) (Generic MTA) with ESMTP id 744866191; Wed, 01 Apr 2026 11:30:58 +0800 From: Yaxiong Tian To: myungjoo.ham@samsung.com, kyungmin.park@samsung.com, cw00.choi@samsung.com, zhanjie9@hisilicon.com, nm@ti.com Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Yaxiong Tian Subject: [PATCH v2 2/4] PM / devfreq: Fix available_governors_show() when no governor is set Date: Wed, 1 Apr 2026 11:30:55 +0800 Message-Id: <20260401033055.67608-1-tianyaxiong@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260401032838.66168-1-tianyaxiong@kylinos.cn> References: <20260401032838.66168-1-tianyaxiong@kylinos.cn> 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 Content-Type: text/plain; charset="utf-8" Since devfreq_remove_governor() may clear the device's current governor in certain situations, while governors actually exist independently of the device, directly returning EINVAL in this case is inaccurate. To fix this issue, remove this check and use df->governor for validity verification in the following code. Fixes: 483d557ee9a3 ("PM / devfreq: Clean up the devfreq instance name in s= ysfs attr") Signed-off-by: Yaxiong Tian --- drivers/devfreq/devfreq.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/devfreq/devfreq.c b/drivers/devfreq/devfreq.c index 994984f7b6e1..2977b07be939 100644 --- a/drivers/devfreq/devfreq.c +++ b/drivers/devfreq/devfreq.c @@ -1468,16 +1468,13 @@ static ssize_t available_governors_show(struct devi= ce *d, struct devfreq *df =3D to_devfreq(d); ssize_t count =3D 0; =20 - if (!df->governor) - return -EINVAL; - mutex_lock(&devfreq_list_lock); =20 /* * The devfreq with immutable governor (e.g., passive) shows * only own governor. */ - if (IS_SUPPORTED_FLAG(df->governor->flags, IMMUTABLE)) { + if (df->governor && IS_SUPPORTED_FLAG(df->governor->flags, IMMUTABLE)) { count =3D scnprintf(&buf[count], DEVFREQ_NAME_LEN, "%s ", df->governor->name); /* --=20 2.25.1