From nobody Mon Jun 15 02:48:43 2026 Received: from mx0b-002e3701.pphosted.com (mx0b-002e3701.pphosted.com [148.163.143.35]) (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 B7B873537D0; Tue, 7 Apr 2026 17:38:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=148.163.143.35 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775583502; cv=fail; b=W4YENS6rLn7prTIzwVxR2umG2ORBqln1aNXn14uaX4qIyT88il9gHCIZJF+QSDjxP2NILRZpC+4ZOPlI9b8yUP1kK9eECVnWQTWio9KmlwE5lKytUQM9zItAsov617za2G4TAxZUVA+2abhjSLpObmS9hH3zWYNzEJPJMcxJtmM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775583502; c=relaxed/simple; bh=0Rux8w3ODimPW7kaO5cMPYJj0ggWR6EPNwoGWFRCyIM=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=AV/DnpMhdePUWKw2GoDg9v1bKah2GBiNKSZ8rhqsVR5HwCEo/bPtiulzVRqaDRlbi2vwuOeAlG2mWE6tls70kknbwG/pozXw6SOq25Ni3ebaeQQP4Hc7FyDiLAq39nfgfUz7WIA2QfqoYdeeGA67M1i8UjvQjGg245UByTZel8I= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=hpe.com; spf=pass smtp.mailfrom=hpe.com; dkim=pass (2048-bit key) header.d=hpe.com header.i=@hpe.com header.b=bMKB+S07; arc=fail smtp.client-ip=148.163.143.35 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=hpe.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=hpe.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=hpe.com header.i=@hpe.com header.b="bMKB+S07" Received: from pps.filterd (m0150245.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 637H2JoV2480179; Tue, 7 Apr 2026 17:37:54 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps0720; bh=C4 MUSdMG0OfdimNG+AjqPEvfS/aLdk9ghWUj6fcMqMQ=; b=bMKB+S07izxx/EyobN +UD6nQaX2I00AlPru6Llx2rq86ciYMDDq3fh9LsRIYHfFk3hM22JB573WDV/kXjQ 3WQPJfDWWXqu0nahCtOt1mHcBFumPnwfT8sAxl7ah43PNlqeDftXv5uy2lnjKJ39 GKjCrUInJ1sOXleVABbzEOk6XVoXeAqRuWrUqEA2JGDzHK4gu0gtzl0W+ujH4ZKi 3xu+BL6WvJeGHFQVYUexuXN5cccP1J00FP4cfhaKLyU6PLq/YTnQ8fkXqEFe/qgA l6uohbg+ylCpcf8OIdDsLL5dX1esv5PuIKciAfq2nUNYgXIHFgc35wSHce3fnyud VZYA== Received: from p1lg14881.it.hpe.com (p1lg14881.it.hpe.com [16.230.97.202]) by mx0b-002e3701.pphosted.com (PPS) with ESMTPS id 4dd0qn55rx-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Tue, 07 Apr 2026 17:37:54 +0000 (GMT) Received: from p1wg14925.americas.hpqcorp.net (unknown [10.119.18.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by p1lg14881.it.hpe.com (Postfix) with ESMTPS id 54A32801707; Tue, 7 Apr 2026 17:37:53 +0000 (UTC) Received: from p1wg14927.americas.hpqcorp.net (10.119.18.117) by p1wg14925.americas.hpqcorp.net (10.119.18.114) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 05:37:38 -1200 Received: from p1wg14923.americas.hpqcorp.net (10.119.18.111) by p1wg14927.americas.hpqcorp.net (10.119.18.117) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 05:37:38 -1200 Received: from p1wg14921.americas.hpqcorp.net (16.230.19.124) by p1wg14923.americas.hpqcorp.net (10.119.18.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17 via Frontend Transport; Tue, 7 Apr 2026 05:37:38 -1200 Received: from DS2PR08CU001.outbound.protection.outlook.com (192.58.206.38) by edge.it.hpe.com (16.230.19.124) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 05:37:37 -1200 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=N67JJZ5jAEiHIfncVArJmxcTVeLrKwrTBUCQFjKWw9nZdXv+MwwIDq+f/gnH9UUk7vUC1oWtamCJ0bhUfKSGGpfncMPq9JVxyfxBgniizoNvqV09+IaY62xjpOuDhStr3ZC4HGk7uEF6C5bRD83CqOf6+CZhaCT1V1UYoIDaMIpG7vjlDkQXMAsAr0+kOZ5wPVs3atXY7ZLDm6oIvl+meeQARisNS0IW1RkXwVKuHhRihe9cP6Ud9TKHqUpA5kU7tIDzL3bghjkaO5QOAN/9bBQrE3IHMItnrzE7TnLoASIM2zce6dpYvRtVyBK0LvMXkij4t5ZIKD361hX9sBJl0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=C4MUSdMG0OfdimNG+AjqPEvfS/aLdk9ghWUj6fcMqMQ=; b=ns6P2scPqyppcr61cJArPls/E8jjUOKfLKEs4cnuV1dCho88rololOfFh1my/q8LowkW1rn7WS+OJNb9mIbdL7Oo587Qxfke/sd1H4HBbb4OMnZQsI0Uy0wb6wy92lhaQSPKM/ZZuRQdCyOBgssPL8fP12eggDOFSk3oNuddjRIiepExzl2aNBz5VC3EAof3kZBXvLEQdc86VgB/ZSdU5Dr047f6SzFhgVQFGLtLW2GUgHi/X80ovfUs9JxyPthSn0w5vU8eyuht0yV1keU/Mdi4iZaK6bXqSdSv8VaL3Mv7NObFjtsB6tBYGpWjKplXQk9t0NHYse/SatntKaLH8Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hpe.com; dmarc=pass action=none header.from=hpe.com; dkim=pass header.d=hpe.com; arc=none Received: from CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:610:1cc::7) by DS4PR84MB4043.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:8:29d::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.17; Tue, 7 Apr 2026 17:37:35 +0000 Received: from CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM ([fe80::2c54:3534:122f:e74f]) by CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM ([fe80::2c54:3534:122f:e74f%4]) with mapi id 15.20.9769.020; Tue, 7 Apr 2026 17:37:35 +0000 From: "Pradhan, Sanman" To: "linux-hwmon@vger.kernel.org" CC: "linux@roeck-us.net" , "linux@weissschuh.net" , "cosmo.chou@quantatw.com" , "mail@carsten-spiess.de" , "linux-kernel@vger.kernel.org" , Sanman Pradhan , "stable@vger.kernel.org" Subject: [PATCH v2 1/3] hwmon: (pt5161l) Fix bugs in pt5161l_read_block_data() Thread-Topic: [PATCH v2 1/3] hwmon: (pt5161l) Fix bugs in pt5161l_read_block_data() Thread-Index: AQHcxrU4/uxAbS/lZkeYptDgqmqvtA== Date: Tue, 7 Apr 2026 17:37:35 +0000 Message-ID: <20260407173624.247803-2-sanman.pradhan@hpe.com> References: <20260407173624.247803-1-sanman.pradhan@hpe.com> In-Reply-To: <20260407173624.247803-1-sanman.pradhan@hpe.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH3PR84MB3523:EE_|DS4PR84MB4043:EE_ x-ms-office365-filtering-correlation-id: 78e52216-7be0-4cac-9297-08de94cc5b3e x-ld-processed: 105b2061-b669-4b31-92ac-24d304d195dc,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|366016|376014|18002099003|22082099003|56012099003|38070700021; x-microsoft-antispam-message-info: 01nrlc8BIK+1NPrzaCEMVcmX3Xm86F0niVThu6xjeprjl/rO4gbUzxHFkGdShCvYU0bsfIcZAOtoFgO0Gpl5lJcIIXZeIMe3VHmbLmLSc0GiPDx65t4cfvijdb+3pfkeOr3a9Cz8M47D4r8s3d4PScV4KtoTwbA0N4Q217doacPozSTyMiJn8Mj+iX5e81sLTstiPzoQ/XI76ZgsuGqIdg6p3G6jIAROmZ0/Vaf+nUBoH+PtgJH8dfObdbScqeZou5QZ80pBvYai/SakZchAtM3IE8IANhMJSolQoiaH4CL/JIlhnawcqPVDAt6fcXA1m4a7hgHwb6JsIfe4TO2Q23O8iRB1tAIKe+kY8OcafNPEMKkxdFHF2ZYnrRhIb503nfgWBdPkuR6KuZfVKzZBxlBCtJBI41j7LcpYtM6P7ohUSqk1lHqSaTInQkm+nJooA94nANQ5/zQ+R8gO9XdXDLZwwib2VrvBQ5kmz13y9DURhveNAfUirCLn67nSK71CzpRMNlx7LXmPXr4Be/Y+0vM7AC881EXPDRjxkJmH2GdK4G8HojFCDej+LUx8gD4DIQTK/C6a0QvcAp5FznNz7wmD5qElwquaCvvcS/ExWMXOcgeQDoB3EvOW1ED5JWS9hnTfXQj8dYXUuziScBMoXfRQ//+JQQQyvwH7yL945OznHWKYcq3//DdZIIRwVM9MWwR6l7S3ekj+NuIC5DDmx9JfXb7kB3wDT8/IpL4POYqz46G35vzuhTbwNv/40Vw+bL3K+W/8110HQsA8dZ7U4JuV4yTbV9WVtMkpaGaXFxo= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(18002099003)(22082099003)(56012099003)(38070700021);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?owjh7kAE428kU3Lr5Ys6qL9v4BqkuT3SVCVjR/Uw0kmpV9L1N/j8TX+G+U?= =?iso-8859-1?Q?osA22GD4KNoI7nXIJn8Lq0zTyN1BZ9Rzq1qJVhrsZDw+8Thnn+9XmDKTrx?= =?iso-8859-1?Q?UrUbSMFWiqmdWB+3tXaijcrWmzF+PNiPKyi+MV6RTZ6npPwTmTD6lUfqeH?= =?iso-8859-1?Q?8JcO4JA1gvDOS8drRU/Y7FFNr0HcCsCsQ2hUUeYdMElFeDkpBG8USNU+e4?= =?iso-8859-1?Q?IoyADKPx2lOeAEez5XAXkXPc1EiNgf+KtxQaNQEvEJmgGtATMstZPnRbVV?= =?iso-8859-1?Q?PCGzgM6a4/n011Qpr+h5qXxtDpQTJE6VDsT2bwDzlVVFfgowUUOM63IioE?= =?iso-8859-1?Q?7YyOBPHqhbueyeJVxVvwEpehnfaAgvQh5YHHrpJxpN4keGXvu376lUnC7O?= =?iso-8859-1?Q?93gWV22Gb6gGZL2hrbxfxQxKL6gF55AOqmw2wzO0AoLGnw++kd9/G2yG3n?= =?iso-8859-1?Q?9cMb3/bkrisqAM0Zxs9nTDSHZppNCwAEdrs2GlIuNbVAkrDcXmfzO6gnbI?= =?iso-8859-1?Q?QjbTrIFEVRLH8AHkBAWh23Tv0wCHW+AJp63jx0RCGoJG+L5gDtGxpE3hkM?= =?iso-8859-1?Q?AkS3/m8fwX1BJUAZxCFq0N/pNlE7xZeSeTS3CC/7dSX9C9D6t8eamNWFF1?= =?iso-8859-1?Q?CoTvEY86qMEvpNkyf44n4newXHSh9oJOPVL2GeHcQNkXx7g88x+a3j5RB8?= =?iso-8859-1?Q?fwwbyC6AFA5p9FyQjOnNx6OcuMm8nw3C6xvce63EF5MY5YTYelkRNz6JPK?= =?iso-8859-1?Q?GMeeIo895NirKuF7wf+PLVSnTZ8tSsIGgra711saOkSIeWxKJRRR/s3nx1?= =?iso-8859-1?Q?+hO66mu0906sh74lW8oDpFEEfI2OAA403wYArSIdrZVUzknK4IXKccJLpx?= =?iso-8859-1?Q?+IwAtIW9WKxNp1hX+OKkhdPuU9BZaxVKbpSIx9k9xFKZUJ0vdwtRmyFI6c?= =?iso-8859-1?Q?oIfVk/OzlVE1Wf5/otZD6/wbjkol4oagc0swoTkwGu7zHNz+aur9wBiTaM?= =?iso-8859-1?Q?EOVzVg6pFSRWYWM6WWDIKKdVpMtBrGVR8z1foCcrMg7paOzhQ7AU5AVj4m?= =?iso-8859-1?Q?QWgOVH3zdGRKOYnwvXnADIE/fONRdQuubhtXZx//IPe5KjZkxC8b8ghHgZ?= =?iso-8859-1?Q?6u4XyPfCZ0Jxi+MzNW/VcBCuGfa0M7D9nFeu9IQwoJXeWAOiWo773npw8u?= =?iso-8859-1?Q?jn7evUGREh1w0C0Ih3SqOGaAyrKHDrfRK9EScMMNkjUp/KL6B/yUtJlWV5?= =?iso-8859-1?Q?bGGB8Us0UtYbLwMMax+DaVZX9Tt4ee/ucSJ2XShbxWtoWi3Yngl5kD/wOo?= =?iso-8859-1?Q?MspqhnnwHk7jIdiULvO63C1zGUunQSLpVIm9KMCULR0OsgF42+HzsrvMTU?= =?iso-8859-1?Q?p025jEmMWq0PTdMutzoPJtVHcdHvNEyQhcQaZbxHb6dscDftqlXpNY+0IM?= =?iso-8859-1?Q?JITLUqA8JYgezQytiDqfNCQJN5Y8uljGUlyJEA1Ih+FWmBGYx+a8R9HTs/?= =?iso-8859-1?Q?+ZWH9j94PlIS6LVGb5GqjA80nX611xkdpr6AqRaqu5YnVsVLlisapBzC6+?= =?iso-8859-1?Q?XHwPw4r8prByERPK0vj8Eb5a0RuP2i5zkU03ARtkpndqMAEMtsN8v2560m?= =?iso-8859-1?Q?WeTz32ER1S+fXcfh66r9P7FnMOvcRDudBehxhKiYWjUSBbaBAPcniOszj4?= =?iso-8859-1?Q?UX0B2V1ODt+Jch67kh45M1bJjdJJEx1pfiDZh+vPJSclFT7VVsg/Ty2Uqy?= =?iso-8859-1?Q?XK4QUlJv6AZtNl931I5+YaE0fbBWOO5hVAxuSIoJWPLi9Lm8MH2pPaMezm?= =?iso-8859-1?Q?XNBNvHyfEg=3D=3D?= Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Exchange-RoutingPolicyChecked: eqyPG235XGQBjGAZNmntJVNW0Bz9lTlrvrdo0E++oRkSdHv6q7GO54OsacY5RSb+a0V8wtPFEYe7bpXQUAjSwQ5RhZoOszhiZxqJLQqB4D+ieBfma4vEaKiTHhsiTkOPQSPj8R3p/awenNiiQj3uUqTUWlfqXm71Jm44T9MORgLuN3WDObHoH/8TIW4EwCBqCka+n5FYSiemSZUgLA74KlWY5kLAf9eGuWQfd18cuLWUob/e1QgouI4MjMs4KztXMFlQs33q0eueE7XNaUZAsZxGz70XQAaEH1eWueZrRUTAH7G2DjKoDrdfs7vf++aV2kx5oF1tynq6YmwZ4webzw== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 78e52216-7be0-4cac-9297-08de94cc5b3e X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Apr 2026 17:37:35.7654 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: xD5e/9FAQZfmtHEkS+4eGYcoHCRlWA85wrtXfusF2fW2mN6dXXN+8uElCCvzfzUigoauxvUxnO0Bt9oefD0qQg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS4PR84MB4043 X-OriginatorOrg: hpe.com X-Proofpoint-GUID: t6ygkPr4IVD7o4ALl-GXZt0RBJ2oVrxm X-Proofpoint-ORIG-GUID: t6ygkPr4IVD7o4ALl-GXZt0RBJ2oVrxm X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA3MDE1NiBTYWx0ZWRfX3poBMDtoSLNR 48cy3AvfaBQYNbhxnaMVkdIZ2n6P3+dQc4gy9fpRLcSChdWT23jrBlVWYABkVBL3cUuP/FJE4sB wpPxlVWbJpSz0rOrcQKlL/Pf/uHFdT6g++Hm5xlVbkX92MxI17nVtlgKdZWhhyNyBwmY7LJbmJC 2mRIODnwoWnancLpaQtbXmPeX6hVTS08qjCPdz+dUSa77jjADhCPY7Kxv4Iwud2QH2VVxKBFela YkFsKnngJbB+RWklUhwObApCadsDOJrtz5jUUeJvKQXDK8qcXdT6J8guuyUPIucQV0de9l+1BMh +SvTqrroqDQcWl2NfySL5k977eAU5cwCP/Imx8Gfqrbghs+Krg2RGVdBjVXTxv5CK8L1C0p8BNl 1z5GIjHUWfT9b+a6M5l/77o7v4BkS1DKlmWCnj4afn9mcguxSgfaa66BRLyaS5WKnnbG8UrKTMQ doGmkp8lwzF0w2GET6g== X-Authority-Analysis: v=2.4 cv=Zojd7d7G c=1 sm=1 tr=0 ts=69d540f2 cx=c_pps a=FAnPgvRYq/vnBSvlTDCQOQ==:117 a=FAnPgvRYq/vnBSvlTDCQOQ==:17 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=8nJEP1OIZ-IA:10 a=A5OVakUREuEA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gQcMVamqm3wCPoSYhaRC:22 a=6XKncaru_qjgLvANlS_8:22 a=OUXY8nFuAAAA:8 a=VwQbUJbxAAAA:8 a=2miM9txUn0MiwXLCYL0A:9 a=wPNLvfGTeEIA:10 a=cAcMbU7R10T-QSRYIcO_:22 X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-07_03,2026-04-07_05,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 adultscore=0 clxscore=1015 suspectscore=0 spamscore=0 malwarescore=0 priorityscore=1501 phishscore=0 bulkscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604070156 Content-Type: text/plain; charset="utf-8" From: Sanman Pradhan Fix two bugs in pt5161l_read_block_data(): 1. Buffer overrun: The local buffer rbuf is declared as u8 rbuf[24], but i2c_smbus_read_block_data() can return up to I2C_SMBUS_BLOCK_MAX (32) bytes. The i2c-core copies the data into the caller's buffer before the return value can be checked, so the post-read length validation does not prevent a stack overrun if a device returns more than 24 bytes. Resize the buffer to I2C_SMBUS_BLOCK_MAX. 2. Unexpected positive return on length mismatch: When all three retries are exhausted because the device returns data with an unexpected length, i2c_smbus_read_block_data() returns a positive byte count. The function returns this directly, and callers treat any non-negative return as success, processing stale or incomplete buffer contents. Return -EIO when retries are exhausted with a positive return value, preserving the negative error code on I2C failure. Fixes: 1b2ca93cd0592 ("hwmon: Add driver for Astera Labs PT5161L retimer") Cc: stable@vger.kernel.org Signed-off-by: Sanman Pradhan --- v2: - Also fix unexpected positive return when retries are exhausted due to length mismatch drivers/hwmon/pt5161l.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/hwmon/pt5161l.c b/drivers/hwmon/pt5161l.c index 20e3cfa625f1..89d4da8aa4c0 100644 --- a/drivers/hwmon/pt5161l.c +++ b/drivers/hwmon/pt5161l.c @@ -121,7 +121,7 @@ static int pt5161l_read_block_data(struct pt5161l_data = *data, u32 address, int ret, tries; u8 remain_len =3D len; u8 curr_len; - u8 wbuf[16], rbuf[24]; + u8 wbuf[16], rbuf[I2C_SMBUS_BLOCK_MAX]; u8 cmd =3D 0x08; /* [7]:pec_en, [4:2]:func, [1]:start, [0]:end */ u8 config =3D 0x00; /* [6]:cfg_type, [4:1]:burst_len, [0]:address bit16 */ =20 @@ -151,7 +151,7 @@ static int pt5161l_read_block_data(struct pt5161l_data = *data, u32 address, break; } if (tries >=3D 3) - return ret; + return ret < 0 ? ret : -EIO; =20 memcpy(val, rbuf, curr_len); val +=3D curr_len; --=20 2.34.1 From nobody Mon Jun 15 02:48:43 2026 Received: from mx0a-002e3701.pphosted.com (mx0a-002e3701.pphosted.com [148.163.147.86]) (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 733CF2BE641; Tue, 7 Apr 2026 17:38:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=148.163.147.86 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775583527; cv=fail; b=rNRwqpuP5xTYViwX0IrFPXcGKpuOhIuGdp63EPY1Nbmv9geepeA4bt9RFC4uh7YUY5HbUd4kqNrQsx5gaAKafPNHwecwR6p8OIa5MgCR/8ZubiIiKIyCRx3j31luV8N4mzliVYOOpvDB46zM7j34d67bVRIR4NuKsl/PNjSx64I= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775583527; c=relaxed/simple; bh=HFrLt45J1UQp8h8ZrqGelFsxHOyM2rtfX2unLq+Y0a4=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=P3Q+vJDaQGB8O/96wfaC1mLVhtLtu4bk/TPPqvBzwns1qBi8FVquqMCjNUmsojF6o2uvVzsmduH4MCpRo3FQjKm1em15DDMnvr5HuiC7qrSpEXGMII6pF1NnVDiBynMRzE3VXMGjezx3cvlqbeRNg2SYpXiEApndL4c/vKjxo4w= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=hpe.com; spf=pass smtp.mailfrom=hpe.com; dkim=pass (2048-bit key) header.d=hpe.com header.i=@hpe.com header.b=KPdVNiOc; arc=fail smtp.client-ip=148.163.147.86 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=hpe.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=hpe.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=hpe.com header.i=@hpe.com header.b="KPdVNiOc" Received: from pps.filterd (m0134421.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 637H0ttI2551180; Tue, 7 Apr 2026 17:38:28 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps0720; bh=zp IwRPk4BQ6djUBerbiFOdc06K4jQoo7d/LaTFVO/6w=; b=KPdVNiOcsfp948A9YI bxr/P03Ppf0PF19q4s9QF6n/A0k/wZlusLtuDzSydpcGT7AHgcjuBFj5KWI7m/0W FC1naiDKM43QXKZ9Le+8Bb5+/MC9lEEAuAZXy/poxroVagCD+0PYY40J+gAU9hpk GyuyQ2h+pjucWUDSTUZktChMbA/9h1yO/U4XbOvbQjJeEzBcl5EBJSbofnr6+gcb vC4iYo6X9ujClmKv4FKrngwmXdyLDGnRBljFxuGQL7b4iDpUyt+nF6JthyvVixyZ R1aLDt0B0+L/K+DkgNpvhsloA2uAGazQDspQoyfRg5wMWmPpvY4FcWz5sqzPUyYY 64Fw== Received: from p1lg14881.it.hpe.com (p1lg14881.it.hpe.com [16.230.97.202]) by mx0b-002e3701.pphosted.com (PPS) with ESMTPS id 4dd58t12y0-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Tue, 07 Apr 2026 17:38:27 +0000 (GMT) Received: from p1wg14923.americas.hpqcorp.net (unknown [10.119.18.111]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by p1lg14881.it.hpe.com (Postfix) with ESMTPS id 60451801712; Tue, 7 Apr 2026 17:38:22 +0000 (UTC) Received: from p1wg14924.americas.hpqcorp.net (10.119.18.113) by p1wg14923.americas.hpqcorp.net (10.119.18.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 05:38:02 -1200 Received: from p1wg14920.americas.hpqcorp.net (16.230.19.123) by p1wg14924.americas.hpqcorp.net (10.119.18.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17 via Frontend Transport; Tue, 7 Apr 2026 05:38:02 -1200 Received: from DS2PR08CU001.outbound.protection.outlook.com (192.58.206.35) by edge.it.hpe.com (16.230.19.123) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 05:38:02 -1200 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=jO+/4yv9gls84f3QGCfZyZnW/W0DODFZus9Za9M3CaYPBlWzVJOU7pzqlmpXgRhG3Rm44GWW6NooXn82QifVAw8YSf89nDxYvnpBuNQVk2tcMn7xy9ynswD09NYzfFkz+SWUvWKaNaa9EDauOrF9VRVpCgYXIgtq3v4trBBW1UNi9wy83g7kQuphMKAY1xBuHPrW3jvUrOR6qhzUac2+WGQtEfQxbjauw+8i5g/xaTA/Af7YdgSaPoN2yQWucJKb2KAAEKeiM69t7AaVTqxGpaenv0y1hh8D5/bvVuNm4qyO096B+AUsk/8T86tw+/hWe9UZIUdlPCpe8u0pyXb3lQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zpIwRPk4BQ6djUBerbiFOdc06K4jQoo7d/LaTFVO/6w=; b=u0PlQMC7bJTu68bWn80+xTPfgUiMVvQue+xNL50op4G4l3wca4WgaTmzUJ8sX+veNOidSJ9FLwx29I5P+Ep0V1rTzT11uQGKpzbT4W3QKRyj534o6NDhTt4h+kAb0RC1mrrsxlAp9Y8ljdi8XEqdR9hORJEbK9V4riEODU1H39BT3aKw1alrztwHSf0cT88fJEEmJhvZSMELfvwNsS55U2CWFSMtRwloaNE6LSFZ4cP8fAoPCOJRmebxYuYgS43BdEeknAI8dDfaaJwXPKCSsFdmkzxo/0PoU5II3/wGsylUE6EoQqjBmGKeK2cG+dgOQkJZbfCYTYmNwUvguzlYjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hpe.com; dmarc=pass action=none header.from=hpe.com; dkim=pass header.d=hpe.com; arc=none Received: from CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:610:1cc::7) by DS4PR84MB4043.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:8:29d::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.17; Tue, 7 Apr 2026 17:38:01 +0000 Received: from CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM ([fe80::2c54:3534:122f:e74f]) by CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM ([fe80::2c54:3534:122f:e74f%4]) with mapi id 15.20.9769.020; Tue, 7 Apr 2026 17:38:01 +0000 From: "Pradhan, Sanman" To: "linux-hwmon@vger.kernel.org" CC: "linux@roeck-us.net" , "linux@weissschuh.net" , "cosmo.chou@quantatw.com" , "mail@carsten-spiess.de" , "linux-kernel@vger.kernel.org" , Sanman Pradhan , "stable@vger.kernel.org" Subject: [PATCH v2 2/3] hwmon: (isl28022) Fix integer overflow in power calculation on 32-bit Thread-Topic: [PATCH v2 2/3] hwmon: (isl28022) Fix integer overflow in power calculation on 32-bit Thread-Index: AQHcxrVHoCgEpn0KpUWpNGAfFRFIfw== Date: Tue, 7 Apr 2026 17:38:01 +0000 Message-ID: <20260407173624.247803-3-sanman.pradhan@hpe.com> References: <20260407173624.247803-1-sanman.pradhan@hpe.com> In-Reply-To: <20260407173624.247803-1-sanman.pradhan@hpe.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH3PR84MB3523:EE_|DS4PR84MB4043:EE_ x-ms-office365-filtering-correlation-id: 454e7814-6be0-48ab-0c8e-08de94cc6a57 x-ld-processed: 105b2061-b669-4b31-92ac-24d304d195dc,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|366016|376014|18002099003|22082099003|56012099003|38070700021; x-microsoft-antispam-message-info: +N+IeAQr9oZuhoHTWTCYTK8y39Ob6gxiMSBIsjRDP2e18QlwoB9fnVv4E8kV3RpedhMIBlzfpO8vNt/WRiHUt6N/9yg9us/7PdmpNut90lSecy2jyxsaFyO8YqiAQCkDz+HmLOVcFejfg6lJjBHq74UskmxaZG+HYLPFnNzr6w2o7GP/xheys6F6enCTzQbvF+3DWhj17tFon9JX0M2K/udxkomEoBI/OmymNctt7lkPfaWlIv2JsfYLO9Bv/0lA+QWpOCafGZnC/vhhyovfs3+qWDuNixM7g/SNRRgjeDjso9mwl3YKQx4sQd/qIZeQYGsxrm51A38LOncWuoNaCF4/mXBNHz09qfvW51nuZPQPoQUV3yo4zB63TN6ODxHMWlJBun1xWS8wTwWBRn2CqNTuJatMwzCvk5lZ5jlEoUIqR5lyZVStLGLTRcP1uRFMYIVfWxgXzyd12Il1/xi4mnjotao5LChd50KHd4nh2aIEv3NAAC4Oi9mgOwmosxbNi5l1C4aMriie9Yf99k6rqrPb/olxXoAA4/N14RbZiyBnVR2jlKMcmVYc9IGzRfV7np+OEjxZWQfgQBJTO+sxk9pscXY5f8WQeVAbXXCujHXEe/EIp+F/048B3P4hzmk7NpXAWsBkOpleandogBd8m+pvAtVEeXaYRgafvA/hui9LdiNZNFwV92u0tclt2LPt9Tlq2j2SongbEYZjVvz0FOAJghQ+7Ni2cktMJ3/3qPhcsKSc7UCNU761n/KbMfd/wRyIEC6rfIFvkDLpHdO9GcsqUUyZNBv7XnyAYxP4kzA= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(18002099003)(22082099003)(56012099003)(38070700021);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?cAILaHk+cHI1RH0SMZ+5EMWS+Xx1FwxIsvMPUh0sl2tz47vUJ8MPK4YLf0?= =?iso-8859-1?Q?7S/w0I7jIosuI8BH+jBSiDx+TRM26sQuC9BSqjlhcT6D4jdITXWFd9E6UF?= =?iso-8859-1?Q?SaNZIiAmmgbJ0pA3zRQRedyniaXvK6nzLpfgOZvxlRZ+cIDj80wPxWabVf?= =?iso-8859-1?Q?QLvsXKjdbbuNKonjaSJRYuZTzdoWQHFs0LDh0oD5Sv2BsTPXJTGTxey2X+?= =?iso-8859-1?Q?+3wEP23FL9kMxCw+XqRZtcnNDRSqYPOgwSo5u6Tjzz7cm1pvMcng3PRDKH?= =?iso-8859-1?Q?pC1CvqAXjjQ9zmsrduchPFM2b0PHHK9Pb6IX9kNFtvaTS5oWGBFuhRDbxL?= =?iso-8859-1?Q?Clohgd73klg3mknXgqv6yc4c5dig3b1YXKYcZPnbj3O0/GOzmclFxkyB7l?= =?iso-8859-1?Q?tM8eW+BbUsWSuk9gN6QP/Z4YESWYcMbp1qAiOCMWkPX9R5w8mMME9E5etA?= =?iso-8859-1?Q?2fdMa/WrN+FWL+K1cyhLCrPhzoVQ+x7N+eYVEsyHmxRqYrp0QI9pCU7ZVn?= =?iso-8859-1?Q?qf1nu5+HfxmSt82ewT+ZSubu4XMvTxN3P1YLvd/o8I37dYr3G30Pwzshp4?= =?iso-8859-1?Q?GXFOlffRUuQJVXZieCjW86I2PHFO+m5iYVQlVOSeCP3fIMp0EB9nemyLHh?= =?iso-8859-1?Q?2tsgv8vQQX7ml+eKOTlMPZqfFZfu75rCuNI8sYCrFZP7UtE1Z9KGN1txMP?= =?iso-8859-1?Q?VYAb9NLfiz0Xxfy9HhKTEckmLGyny7bcMjioCyzCsmH083ajjT5CFxG58H?= =?iso-8859-1?Q?eSqasmdGl5ex5Y9/sDa5U6THOC+l0XfzhFpGYyM7iKHaFiIgXAR1Bv3VVC?= =?iso-8859-1?Q?buPj5h5P/K/1nlhLOW6theMadt5PJ93PCZCU0YveuIue56UkV9XiX7Vucx?= =?iso-8859-1?Q?4QE4q2FNVd8KBmf9dOTb0hnekzswuW8e8xl1QC7WHB+BCjao+9LtvTMp6K?= =?iso-8859-1?Q?f7UQ6RZ7VhZYSEVjokDyWynoYoLl1mv64LoqNew1pB5aTTdFkX07KjIS6z?= =?iso-8859-1?Q?omA9Uxxlz8Taeel32BVGux5jodVUyUEEswpURfroyx743NNa8hY41vhYyN?= =?iso-8859-1?Q?N4oVCpCg2hlAxytbnuBkASWSNk1MUg72zPoPjBOCuFWEjHQT2H+X6Mdqin?= =?iso-8859-1?Q?YJR8Y4W4wy2HZvr7h6g+fW1VdV99bXrWcSyM6GyF7fWvBNK+AKpg8It5C0?= =?iso-8859-1?Q?pcVTKYJ3dHfSl45HmMhgdtWkr3v5jU1yFwEqaYz9QAMaJ5wdF6VV6cKOir?= =?iso-8859-1?Q?mqjodbBiXNenU3J44bAtO6R9YyIJV4xw/1Sch2dLiFEvTQFvZoHRYDOM0c?= =?iso-8859-1?Q?yvfrv2aDRviybE61Q+A2KYu4Zw0cixqWGZ+zkWBTplqmrtIa+ZLfqMpBi3?= =?iso-8859-1?Q?IEySBabAuVTbf5c5g8bMGoK+Wzbr2R3VKgMVNNDqaYlkQgvfiVcWJTeAkD?= =?iso-8859-1?Q?/WXdzkU7k3h2rxEp+TOk+5lQRqutuL0yGhGtYZTPE6kmMIzym33m10/JDJ?= =?iso-8859-1?Q?F+R7QDy9ypABFIMwqwwK8nyc/VFJFRW5NJRCrGfCtU/+7ZaL2Jx/w6Sowb?= =?iso-8859-1?Q?Uo3IuDqQwAuhA7RJuc/p/5CQbSeRwngR5WxLAt6WOvsf/PI/hHa3nRkMNI?= =?iso-8859-1?Q?z4SW5MC14lZ8TZD7B/OOTXexIGmWBsvu06zKrbBIU5B/yFqVL8ygt7l+Hq?= =?iso-8859-1?Q?J6b5guMEyT5dAGEetz6qs9WzGkGSM35YUPEQjvQ/Rnbz39daxrBH7xHAmo?= =?iso-8859-1?Q?uk+cRJypEeuf8JFtzEXOZZFWj3xVlAkF+l+qTmMZs/qchUSZnfOLB1E6Z5?= =?iso-8859-1?Q?acG8ZtTMdA=3D=3D?= Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Exchange-RoutingPolicyChecked: Td3CQGK+jJhw5wPHPZx+lW1KoYXJ9MxmcHrpPoX1qvDEo02KeSaQsA2Aidqn5IIW2v9u557mtyxb96gmotZ85zy/SpVAXK1HWmva0+VMLnScDDdtfhCmmvnGowaI7r2TT9w/awWopcLj8GXGYvXji7kRCdbK72M/pW8k65tUjfg2GB4by/o8qyU3T/ISByMBOiMoA1OZldtSokv9ujqR8CY9cKacT8LZ23kXdznR3QanXhA1AELv35/BWZU7rRVAW+c1PUbu649j222CGnJNSdNI8mHEtief3dy5Qcj/iXEacssxVzLy9g1D7frBPDAW5Ae1n1qZwp6amc2QbqdhPA== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 454e7814-6be0-48ab-0c8e-08de94cc6a57 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Apr 2026 17:38:01.1329 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: VKg2gcxpof72jlk0vPxUlslJ0OLhUSmqo6u5ov9krZALsXoBhMFhN4Lw33FMStLtaY0pEkF6RxU7KGqbdvyH5Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS4PR84MB4043 X-OriginatorOrg: hpe.com X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA3MDE1NiBTYWx0ZWRfX9XvAApaWFQdH wUssvXM9lFZ8sXAVQOnCfHYoKn2qZkyeAAlJ/usUu85jxMOszLIWcU5wBOnjBZsjAeKut0NoJx5 Nb5/Xo9sh6lawQQ3hEdCIWdQNLzwOcmhy+aHB8eitf1hQcFy84x/s4APyOjgKQ9+VZvAhDUTY3K wpkte14DRLqL0dmLc5NvXVyPX82VGmHmpOKKpop3N44ybinCziotyzPtUVbqDbr26nJlY6mtJum lT1tGUGIKg0dfHKvC01fX/gSn4c6XNSVDXghw6NqsC/MPYikcEU3Ep1IwaCP7qwdZOo7WIRTjL+ HcEMVUqDRpBOWCmJDq/1Hy9vuVP1iACE4Mcym8Zx8w422HDttOEo7VyBW67deziKkHTLTIOgVaf qmoSPN0/xWQEq4VV2bYoEKRByHyz5ri2ULkcd/94dPyGxeaI9HuVwmeMCQc9qTWTCSZ2kfiikuF GyFl/mDX+bUeVhzjudQ== X-Authority-Analysis: v=2.4 cv=dbWwG3Xe c=1 sm=1 tr=0 ts=69d54113 cx=c_pps a=FAnPgvRYq/vnBSvlTDCQOQ==:117 a=FAnPgvRYq/vnBSvlTDCQOQ==:17 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=8nJEP1OIZ-IA:10 a=A5OVakUREuEA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gQcMVamqm3wCPoSYhaRC:22 a=ay80y3fxfMS_JZZz1qJy:22 a=OUXY8nFuAAAA:8 a=VwQbUJbxAAAA:8 a=kT2SCdrF01qjGp29COUA:9 a=wPNLvfGTeEIA:10 a=cAcMbU7R10T-QSRYIcO_:22 X-Proofpoint-ORIG-GUID: QPO30WnwNOdzP5OJ9Uurnfw9dW9dADym X-Proofpoint-GUID: QPO30WnwNOdzP5OJ9Uurnfw9dW9dADym X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-07_03,2026-04-07_05,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 bulkscore=0 adultscore=0 phishscore=0 priorityscore=1501 impostorscore=0 suspectscore=0 clxscore=1015 malwarescore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604070156 Content-Type: text/plain; charset="utf-8" From: Sanman Pradhan isl28022_read_power() computes: *val =3D ((51200000L * ((long)data->gain)) / (long)data->shunt) * (long)regval; On 32-bit platforms, 'long' is 32 bits. With gain=3D8 and shunt=3D10000 (the default configuration): (51200000 * 8) / 10000 =3D 40960 40960 * 65535 =3D 2,684,313,600 This exceeds LONG_MAX (2,147,483,647), resulting in signed integer overflow. Additionally, dividing before multiplying by regval loses precision unnecessarily. Use u64 intermediates with div_u64() and multiply before dividing to retain precision. Power is inherently non-negative, so unsigned types are the natural fit. Clamp the result to LONG_MAX before returning it through the hwmon callback, following the pattern used by ina238. Fixes: 39671a14df4f2 ("hwmon: (isl28022) new driver for ISL28022 power moni= tor") Cc: stable@vger.kernel.org Signed-off-by: Sanman Pradhan --- v2: - Switch from s64/div_s64() to u64/div_u64() since power is inherently non-negative, avoiding implicit u32-to-s32 narrowing of the shunt divisor drivers/hwmon/isl28022.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/hwmon/isl28022.c b/drivers/hwmon/isl28022.c index c2e559dde63f..d233a7b3f327 100644 --- a/drivers/hwmon/isl28022.c +++ b/drivers/hwmon/isl28022.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include =20 @@ -178,6 +179,7 @@ static int isl28022_read_power(struct device *dev, u32 = attr, long *val) struct isl28022_data *data =3D dev_get_drvdata(dev); unsigned int regval; int err; + u64 tmp; =20 switch (attr) { case hwmon_power_input: @@ -185,8 +187,9 @@ static int isl28022_read_power(struct device *dev, u32 = attr, long *val) ISL28022_REG_POWER, ®val); if (err < 0) return err; - *val =3D ((51200000L * ((long)data->gain)) / - (long)data->shunt) * (long)regval; + tmp =3D (u64)51200000 * data->gain * regval; + tmp =3D div_u64(tmp, data->shunt); + *val =3D clamp_val(tmp, 0, LONG_MAX); break; default: return -EOPNOTSUPP; --=20 2.34.1 From nobody Mon Jun 15 02:48:43 2026 Received: from mx0a-002e3701.pphosted.com (mx0a-002e3701.pphosted.com [148.163.147.86]) (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 E55CA30F7F3; Tue, 7 Apr 2026 17:39:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=148.163.147.86 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775583573; cv=fail; b=YlzROGG8g412o/KtaccTHtz97g/0yF9hdq3zi7YgWkKyWZeeMXjsKf7wYFcmrB5lG2chLmBce1LdT/Zoy+oEXTvq/YGGH+8whzlqbZf/LjDstI2WbPLoExg3blM3RiInt+yefgkPXMfdfMHgYTvKbCgfV6VOll0DoFhttwcFOaI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775583573; c=relaxed/simple; bh=wRv9o/J4lD8q1KbPRc2180WUsiLFK3wk1xCtsLb1m74=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=lDK58HieewG7uSWzWDUjrOpvobqzy9p/m0Os0OEeWbFuopEcMChAgqoskx8VMW6tZw2UgJaxDIsBERg9L6sphCCokVl79y+mby/ctUcjxwM91Kqou6cwm/nh5wQI1dmg6n82+eZfWvuXb6QknbinTtNjhiHcXzB5x4JeaS6wcbY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=hpe.com; spf=pass smtp.mailfrom=hpe.com; dkim=pass (2048-bit key) header.d=hpe.com header.i=@hpe.com header.b=BnOO6I0S; arc=fail smtp.client-ip=148.163.147.86 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=hpe.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=hpe.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=hpe.com header.i=@hpe.com header.b="BnOO6I0S" Received: from pps.filterd (m0134422.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 637H0oXj2113087; Tue, 7 Apr 2026 17:38:59 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps0720; bh=Pr H7YtZZMfMrgiMHLjvp09TwZi0T5a/gzc29R89p/Yw=; b=BnOO6I0SEHWXcyV8kw bAv9Uo5vMdYan+CQUgPWYHjIFAKMGIfmYhQMRNndF7TQzorSKxH+Y+nxOjee+Zqa M+wdxjED+HSLDK/gfeqKhMjxbMFb7KFY3dO44BJnQpocZTDYTjbai2KycFZUDOh4 puEmlQiqhI9Cy+qQSVAbr0kZx3sx86X/aVnQpmpcpfC8iwS7agIlSo2rEejo10JA skRFGDJUstXTJ+cAd7ahaLtgAfjsxPcqbLqjQT+TjQg0nWIejQDkGZz1BIWtbAK7 Mmgt+7QDMv/8GLDpn2wSjmi2VQDdgBUKSptIjHKhDnifdrYuI4GBc3TFS/+yFDnw gAOQ== Received: from p1lg14880.it.hpe.com (p1lg14880.it.hpe.com [16.230.97.201]) by mx0b-002e3701.pphosted.com (PPS) with ESMTPS id 4dd494t2bj-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Tue, 07 Apr 2026 17:38:59 +0000 (GMT) Received: from p1wg14923.americas.hpqcorp.net (unknown [10.119.18.111]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by p1lg14880.it.hpe.com (Postfix) with ESMTPS id F325480171E; Tue, 7 Apr 2026 17:38:58 +0000 (UTC) Received: from p1wg14928.americas.hpqcorp.net (10.119.18.116) by p1wg14923.americas.hpqcorp.net (10.119.18.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 05:38:38 -1200 Received: from p1wg14928.americas.hpqcorp.net (10.119.18.116) by p1wg14928.americas.hpqcorp.net (10.119.18.116) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 05:38:33 -1200 Received: from P1WG14918.americas.hpqcorp.net (16.230.19.121) by p1wg14928.americas.hpqcorp.net (10.119.18.116) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17 via Frontend Transport; Tue, 7 Apr 2026 05:38:28 -1200 Received: from DS2PR08CU001.outbound.protection.outlook.com (192.58.206.38) by edge.it.hpe.com (16.230.19.121) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 7 Apr 2026 17:38:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JYi9ywRIIJhAes720tjooctPEZzBJvNawkedEnNmzeZpJnRQECXKl5hMmsXimRn6S20CCASKndahHJ7wIGaOBvi1j7PGFIaAVXxxBDaQhgCEr2RwrNChvEsxCac4z491msShWgx3gjTEPrkeXXEWyX1KZdK/tqJDwpbO/Um4istauvTlesfGf+tq3CwqIPFJGV3auIEkCQXbFMQgofYqCoK4fSCYF0l8I5s0arLBzlxn87DKTSQEx4WbV+SDNwugJ985beW2CVXoKphUh3vVgwhFYfgUPYMfA5tx4dFAnlCJyct5qu28q97T67hKkBC8kepc6xmromiZMzbFsINFbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=PrH7YtZZMfMrgiMHLjvp09TwZi0T5a/gzc29R89p/Yw=; b=Hp/H2Sm3HBcrAzGWpdUenSesSlN1fcJ+tu6/e4UBYdixbInxDdSRlqhJOAdA3sqUFrRfo0EpyfTI/LXyiF4JQYOmocKSJp3xogYowXR6rBoYR57PxJ5XQinBVf9eu0E0IHsHfbBMsrFysp3DKF6Kz7RyPx8tX3t5JzxavzqDRkbwZN4X7hhXbeqv88Y/TSddxXXA4u+YpvPbQSKtf+BNMK9nzdyIkojx74CFUflgDeeYkr4r6Cc9M6STurkITAl8OBR5+Zhjl6WHedztaMuTJAPAxLEG73fXHD8Ix4z8b8PW8ue/fwdwIAoCBDLqJZlCc33THNan0xRvSQcu/Gs1qA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hpe.com; dmarc=pass action=none header.from=hpe.com; dkim=pass header.d=hpe.com; arc=none Received: from CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:610:1cc::7) by DS4PR84MB4043.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:8:29d::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.17; Tue, 7 Apr 2026 17:38:26 +0000 Received: from CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM ([fe80::2c54:3534:122f:e74f]) by CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM ([fe80::2c54:3534:122f:e74f%4]) with mapi id 15.20.9769.020; Tue, 7 Apr 2026 17:38:26 +0000 From: "Pradhan, Sanman" To: "linux-hwmon@vger.kernel.org" CC: "linux@roeck-us.net" , "linux@weissschuh.net" , "cosmo.chou@quantatw.com" , "mail@carsten-spiess.de" , "linux-kernel@vger.kernel.org" , Sanman Pradhan , "stable@vger.kernel.org" Subject: [PATCH v2 3/3] hwmon: (powerz) Fix use-after-free and signal handling on USB disconnect Thread-Topic: [PATCH v2 3/3] hwmon: (powerz) Fix use-after-free and signal handling on USB disconnect Thread-Index: AQHcxrVWLd/rOXZi8kyE8kQP654q7A== Date: Tue, 7 Apr 2026 17:38:26 +0000 Message-ID: <20260407173624.247803-4-sanman.pradhan@hpe.com> References: <20260407173624.247803-1-sanman.pradhan@hpe.com> In-Reply-To: <20260407173624.247803-1-sanman.pradhan@hpe.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH3PR84MB3523:EE_|DS4PR84MB4043:EE_ x-ms-office365-filtering-correlation-id: 9c57c20c-847c-4949-9ab5-08de94cc7946 x-ld-processed: 105b2061-b669-4b31-92ac-24d304d195dc,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|366016|376014|18002099003|22082099003|56012099003|38070700021; x-microsoft-antispam-message-info: uTMWD654WTo4SGdM5EBZbyYJDcjcHuaM5u9T8pcwz2xu0q4hnAZZZkqiDI2JaM82PGdXnGuAiRehKdkGow6QrvMqo/Y039QKh15p1eVb7xxPcDh5k/xe8UJIBjxeheLRZtH9ed1HyRj4NKMdBg0gIGCuTbEm2M8Bn1uaWMD9/pvlcm7AwnEYXTK/68CSyduSQDwmdhevdBlAwMccy0BqAa34qjDk+zm9ahQNrP7L+IVNUMkcMgMkKzHj0+7I9ebAdYu2NwhVQXGfEgYpN/0oB73duiQzUEmXsiwlzbWxBYSokzBe5gPux0TwO9d45B5dvDHghhInwePcRQ9EfO5zoti9i87JYDWeYtrMq/L1fBxfUILi3Fvpl+n2Nu4n9nEQkyXNZpjrhYaRjia2mhEy09J++EKQg4MGLKs2oITukEVeVGJcHjuACMAxa3x+gM6A07nj07Bst+rbnHh/IRWF/j273pwkWz0km8xCu+jCepbROhkshZROqcC1kqQeKM1oyS+1NJzsUQCcGeDmMCtKHX2+PtMuErsA+VDlmrRLJSLc9eLgF8G9WI00DzZmxHuo4xJHjxKzxxgWYvKYVKGkjdZ0SZ3kJ1GDhcpodbTtkPTQBL8QI7OVmlElWjyeA8HIy4v+aJNjukpkcUwKdNh/xzn9HwUkAj9YP6T1HHPYe43d+kFYXHJwE8dkI1vSf8r/tFWd2iw9y+92obmgScUp0DhOGux/70fFKJEcmOtpW3lbT0ZJvgstvOSnkkpso3i+sEHVDlmGLrEnTWUoU0WkAIAq0i6N7w9owNucovV7NpA= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(18002099003)(22082099003)(56012099003)(38070700021);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?tVxcJk0jDojmftqPtN+gPo4kK7T76q7goNJ5XxiWL+di0mPWzy0Y21Ahfa?= =?iso-8859-1?Q?5HOTUaRRDPvd4h7z/Qt0gtrr010b9islY2m7lBW8OHdBI6Sg72R6bspxDe?= =?iso-8859-1?Q?sRmrlTXnLBX99dRHMH13BabWzhYOvHq/5e3bfUMf8Vr85DsL5CztRX8M11?= =?iso-8859-1?Q?iLxBcslOi5yq4uJS68WCj7luCdtuQoFf59DwIW/5hkjw9ExkOPf39bdtJ2?= =?iso-8859-1?Q?7vzRgw2l4KLMKJKgoxcW2ne8luY5yiXoq01wshuefi8tsEAdqvwHEk1C3t?= =?iso-8859-1?Q?8KQB6t4XRY5mWHBUgdL+A0CfyfZ2J7evkZHvKG8wOdug1ih4Op43d64E2X?= =?iso-8859-1?Q?VShkeRFBOK3NFV59phYsigRQaCvYbPX3qvIq8fM0+GPfsDfkobamQhNhxN?= =?iso-8859-1?Q?HHZXqW62MyfssbnMG1WOotuQDNIlzeF385juDKdHwNO6B+tZ+89BphTqse?= =?iso-8859-1?Q?5sOoj01ySLagcPcOCmHPI7hhi+mH36xw6zKe2Aul67T+rN6a0IVNEX614e?= =?iso-8859-1?Q?kulSK8HqYmm4W7EgIUL8Yhn4hGhlnohuXU4qXXw+y+QBUKXQKxEobbKKNp?= =?iso-8859-1?Q?P4wVrKzhSRpy7En2dy/rWHcHuoMuPVPBHUwJoA47TukfKsK3xczXT/NNoQ?= =?iso-8859-1?Q?oH6GYeBd36Yx2v5xE+MoX7+Gs4zW51stpfyNFz9144ST8npGl7KoNr08aY?= =?iso-8859-1?Q?4ndPwEydC3dkSLNwiBxgNDTkGCxRn99u1OzeKgX0N5Kb922e6S3KGPPgso?= =?iso-8859-1?Q?3FtCRycMarLC+auyWyhmjvStm5HJe4JQuS1MJHrwn4aAS8sJC+uvIHKWmf?= =?iso-8859-1?Q?i/phP8dBSGz8N6lKe353OeE1oPQDBXlh4VKahbgpRFzYrEQzyisXjODmd1?= =?iso-8859-1?Q?9pnfMNrzcFuoYrbxgSzJFMmJIMMY/TvcSS56AiIhdPDd/FPiT1Pkf2jPvI?= =?iso-8859-1?Q?ObnjbNQf30WH/8cWLFUeS03sWnXAPkZkD3gBq3G1OU7xQNZV8Xu7QQ+IXh?= =?iso-8859-1?Q?/uMQcQEgFI6kmBEKO2dXjovQYYw2eXIdMmDQ6i7pdvNgvOczQk/lVjXFh6?= =?iso-8859-1?Q?QaL8o2X+nF1HTbsTLJlbXZVEhkQQaF3L4mV7dHdKf7/o2J/BTH4WZcaxfi?= =?iso-8859-1?Q?asR7JikT0BLfyZXVnO7CkqqoX24ZXbAsVRwdUeX2C6iflOICDoz6azOblW?= =?iso-8859-1?Q?QpRYuI8DU5ejW2sbSj4BhU+/IHp3DfzrbOBrXl3eTQ7oljAAuDRxNDyCPO?= =?iso-8859-1?Q?oQuKuR9A7LhdeDTpfaSEsKBbhFInJp16ojgEZZy0UQ77RywSGHSEq/24Po?= =?iso-8859-1?Q?vxDIv9njBJ/n+8CDbYz5wEGz0hR9zrkpqvpeMkjg/WnrGlB0jPiqkfPbgw?= =?iso-8859-1?Q?kjdskkeH8XobgpjKtjIea/egG3pjloA2QUuSfgG+1nKPd6BLpY8CnzbAJv?= =?iso-8859-1?Q?t/49u84lV+Hf9BAnkTOyH2q50GlXmtZLQ93y05xAKLPprLDvJHUV05BzIS?= =?iso-8859-1?Q?0v9rjlhOOSOznzs+R38WgLxc3jDlyHIAqEiU7QSA5JP6N3NEkd6k1yG6ww?= =?iso-8859-1?Q?/G3qLm64IsVKblHn04RywP9xSCUNzirepO1FGw3mYAAGTa1sLuYvxg85sV?= =?iso-8859-1?Q?h4EPTGUMwI9XItAbfefWMRhgsLVpsz2ZdRdJjvnVQfmMklIldncNL+zVVF?= =?iso-8859-1?Q?f1cta1q3W7XsdaSC8x6cmznfSGG2kJLw/9qJnjCOGDCOusSkwaDOzv8TBS?= =?iso-8859-1?Q?ZeQOohWJ39RhgA1QTAntooaOSZVsIrUkqc/3kBYdaMZJLoXu/GzdG9S9iJ?= =?iso-8859-1?Q?Tgi3Ab0p4w=3D=3D?= Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Exchange-RoutingPolicyChecked: pLNG3ctS6JKH9o6m/rSzHLcOJpkJC/f0jC+m2cp1pYUt2CjdKHCqVHqN7qjNKPt7QfXZHqC9kgHQVWRgD3L6wkAuHKj0aNadwFOUG2ck0zT/a0LS/hKIG6idwzvEWTWNv5NAEaeiRJWve4DcXbNuATbrjfQelL39T/hXy6MXhmKlI87o6wVJjltHczBuuakhAkdc5E8dUc/CVe2AwQe//GtTV18vjlHHgaPmyndSH+H/AH/jT8nok+4EXlgVR+PB69XhnOzNWwWG0bA0Kh9Wbrt+H9zLQ0SCpnGlTTccHNsY+ixpF/dNhWhwt+dLr00iA9cvMXsPkLzkNTsPwisSDA== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH3PR84MB3523.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 9c57c20c-847c-4949-9ab5-08de94cc7946 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Apr 2026 17:38:26.1269 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: tCNnbfg5rJC6EDD+HLj1IaD58w6zgIY17BBea0y9cSNmo7EugN6Q3MJQfYs5gtPXv+fREvPD7e/6oz4aymAmOg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS4PR84MB4043 X-OriginatorOrg: hpe.com X-Proofpoint-ORIG-GUID: U6q2tonWT9CQWeUDgFb1js-EKe3kI9Pi X-Proofpoint-GUID: U6q2tonWT9CQWeUDgFb1js-EKe3kI9Pi X-Authority-Analysis: v=2.4 cv=aoCCzyZV c=1 sm=1 tr=0 ts=69d54133 cx=c_pps a=A+SOMQ4XYIH4HgQ50p3F5Q==:117 a=A+SOMQ4XYIH4HgQ50p3F5Q==:17 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=8nJEP1OIZ-IA:10 a=A5OVakUREuEA:10 a=VkNPw1HP01LnGYTKEx00:22 a=gQcMVamqm3wCPoSYhaRC:22 a=ModqzXLkJJ0tFyq98apW:22 a=OUXY8nFuAAAA:8 a=VwQbUJbxAAAA:8 a=BpGXxSgqvIGdrXJJSgAA:9 a=wPNLvfGTeEIA:10 a=cAcMbU7R10T-QSRYIcO_:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA3MDE1NiBTYWx0ZWRfX6WbkdMZPRAYo h2eNT0oHe5+v853ads64wVI/kBzDijgJ3atXpRNEy8LWLeDQAvnNST7ALtHg9kAYckuQuibCXMG touy6DWe9DeKqP35zo6THFUu8bFy4wTayVavlF8BvTma1Z8dp+o/S1Ux52yMAxx6bjk/YmVsWwT vh+ktrvxz12g+Yfmn0jscarHVq0YfP7bNJYcPpTQecvc3YmyQPSrOr5GiXjROhV1LU5mdVYOYrn v0cIGOCdcrj7kD7ry0P+4wqKDGSODBpFIENjhQbX767UsLVOdOkXZwgi2dy8k70AerGCr1fPJ9Y 0ks4BwEot0Xmr5W7wWCcqHeh6H7i5tdPqgbU90x6lWMdorVc/X+t5TzpX0zIhxK7tUBr3NL0mja 0T7F39v0guhqmd6iCsYC4GAqC3s5kCCfPFZr87wJWSsz4q8XC51pPvcffPRFo/ZOB1GYBWfMpSE qMn5hHMbBVMz2SbJHAg== X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-07_03,2026-04-07_05,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 impostorscore=0 spamscore=0 clxscore=1015 priorityscore=1501 adultscore=0 phishscore=0 lowpriorityscore=0 bulkscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604070156 Content-Type: text/plain; charset="utf-8" From: Sanman Pradhan Fix several issues in the powerz driver related to USB disconnect races and signal handling: 1. Use-after-free: When hwmon sysfs attributes are read concurrently with USB disconnect, powerz_read() obtains a pointer to the private data via usb_get_intfdata(), then powerz_disconnect() runs and frees the URB while powerz_read_data() may still reference it. Fix by: - Moving usb_set_intfdata() before hwmon registration so the disconnect handler can always find the priv pointer. - Clearing intfdata and NULLing the URB pointer in disconnect under the mutex. - Guarding powerz_read_data() with a !priv->urb check. 2. Signal handling: wait_for_completion_interruptible_timeout() returns -ERESTARTSYS on signal, 0 on timeout, or positive on completion. The original code tests !ret, which only catches timeout. On signal delivery (-ERESTARTSYS), !ret is false so the function skips usb_kill_urb() and falls through, accessing potentially stale URB data. Capture the return value and handle both the signal (negative) and timeout (zero) cases explicitly. Fixes: 4381a36abdf1c ("hwmon: add POWER-Z driver") Cc: stable@vger.kernel.org Signed-off-by: Sanman Pradhan --- v2: - Also fix signal handling in wait_for_completion_interruptible_timeout(); original code only handled timeout (ret=3D=3D0) but not signals (ret=3D=3D-ERESTARTSYS) - Return -ENODEV instead of -EIO for disconnected device drivers/hwmon/powerz.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/drivers/hwmon/powerz.c b/drivers/hwmon/powerz.c index 4e663d5b4e33..0b38fdf42ddb 100644 --- a/drivers/hwmon/powerz.c +++ b/drivers/hwmon/powerz.c @@ -108,6 +108,9 @@ static int powerz_read_data(struct usb_device *udev, st= ruct powerz_priv *priv) { int ret; =20 + if (!priv->urb) + return -ENODEV; + priv->status =3D -ETIMEDOUT; reinit_completion(&priv->completion); =20 @@ -124,10 +127,11 @@ static int powerz_read_data(struct usb_device *udev, = struct powerz_priv *priv) if (ret) return ret; =20 - if (!wait_for_completion_interruptible_timeout - (&priv->completion, msecs_to_jiffies(5))) { + ret =3D wait_for_completion_interruptible_timeout(&priv->completion, + msecs_to_jiffies(5)); + if (ret <=3D 0) { usb_kill_urb(priv->urb); - return -EIO; + return ret ? ret : -EIO; } =20 if (priv->urb->actual_length < sizeof(struct powerz_sensor_data)) @@ -224,16 +228,17 @@ static int powerz_probe(struct usb_interface *intf, mutex_init(&priv->mutex); init_completion(&priv->completion); =20 + usb_set_intfdata(intf, priv); + hwmon_dev =3D devm_hwmon_device_register_with_info(parent, DRIVER_NAME, priv, &powerz_chip_info, NULL); if (IS_ERR(hwmon_dev)) { + usb_set_intfdata(intf, NULL); usb_free_urb(priv->urb); return PTR_ERR(hwmon_dev); } =20 - usb_set_intfdata(intf, priv); - return 0; } =20 @@ -241,9 +246,12 @@ static void powerz_disconnect(struct usb_interface *in= tf) { struct powerz_priv *priv =3D usb_get_intfdata(intf); =20 + usb_set_intfdata(intf, NULL); + mutex_lock(&priv->mutex); usb_kill_urb(priv->urb); usb_free_urb(priv->urb); + priv->urb =3D NULL; mutex_unlock(&priv->mutex); } =20 --=20 2.34.1