Received: by 2002:a05:7412:b10a:b0:f3:1519:9f41 with SMTP id az10csp785591rdb; Thu, 30 Nov 2023 20:13:19 -0800 (PST) X-Google-Smtp-Source: AGHT+IHOZ4R6KquNs6a6d8n0TJupQB6dl5V0h74tQFsackI/yMHMhQAxrj1iJhKnagtRwjsNaTZD X-Received: by 2002:a05:6871:2309:b0:1e9:bb3a:9a89 with SMTP id sf9-20020a056871230900b001e9bb3a9a89mr28564960oab.47.1701403998766; Thu, 30 Nov 2023 20:13:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701403998; cv=none; d=google.com; s=arc-20160816; b=u3FZeuHnOuQ2plg3p4ufo05AZTh5JaSlkoti/kpeNZFJeLrI4ALxxkWRRSxSAHJPI8 GHbvKNC1/bOOMbWw9JAMkJcuUtOOgUD9JOwTZuPDZs7GqxjNoNys3t2SrNNrJKJxeZXm 3M/eUKQAZrznNdKyOT1eA59uuB8dwJBTWw43e1ne35I2YVFPYB1dXf1ZY5URPPvNtPfC q2RMDQGsqmiVgYEaRReGn6CoHOOEzr4Qe8DdQejN9KVvaZaa45OuZv8EiICh4XVkXLUx D4KlqB+r9n4k7zNqjyUhYMEipR6/OcZEwP3yqpoFZWHWJcpFz+TZ6rQL6gXZOXDaI5+u PgBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:sender:dkim-signature; bh=+DXWDIQ3qhI+UlY7b1G8hCKnQvk1vPVwzZNzUId0ohQ=; fh=KaMOSvSzwKlYYHpXOECRJD8lZHbi3bxHsNSGIEhnrf0=; b=MbHlfJI/00e6hj3yr8ZkDaCad69PLph5L4KhNNOvJf1wOEXcXBpUkgS4sHrI3BSYfb RLASDrhCDwhrMmtUliEVAErA87z/Aco2Fx8wvrqxrJeIqrW76wfNwK40YwBrF661x2UT Dhaf5zm5xMJp6RoQdslMXzNw9dSes1WFDxsDufGY9727TRq3WL/PiYUamOJJMJbk5iXJ n55hXNToIx8bwfRbsj0fvPL/Zvv7GxFsQ8t3pacmfQwm1K2amNShCWjHy8KTaMp3LXrS WmjQkjej7dqCyKjNPKmDR8Vk5vImiEgKFMSCj99JZUXj9tcfDmnRb1oGqGMkcyQCXjEN 6e5A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=FzoWflA7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id q17-20020a632a11000000b005c62aaed5acsi2240954pgq.889.2023.11.30.20.13.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Nov 2023 20:13:18 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=FzoWflA7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 9E83C85A6CE4; Thu, 30 Nov 2023 20:13:15 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230170AbjLAEMz (ORCPT + 99 others); Thu, 30 Nov 2023 23:12:55 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55530 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230210AbjLAEMx (ORCPT ); Thu, 30 Nov 2023 23:12:53 -0500 Received: from mail-oi1-x233.google.com (mail-oi1-x233.google.com [IPv6:2607:f8b0:4864:20::233]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6B16E1716; Thu, 30 Nov 2023 20:12:58 -0800 (PST) Received: by mail-oi1-x233.google.com with SMTP id 5614622812f47-3b2f4a5ccebso64912b6e.3; Thu, 30 Nov 2023 20:12:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701403977; x=1702008777; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:from:to:cc:subject:date:message-id :reply-to; bh=+DXWDIQ3qhI+UlY7b1G8hCKnQvk1vPVwzZNzUId0ohQ=; b=FzoWflA7JTWUQUWtGCiobdv7Vdzmt40mVtHzZxsWix5Zu00v7O110FxZcYpvMi1We2 9xdLsUyVLY4qC1QxVjjmkR05DTUtFiJ8/uiOJaJxrjff+ytm6ghKGz7H86+hX67b9NTU sT+1FsW8IQhqkNyg1YbTJAPp2duFhP0mFNld4j/iBtehLrl3cgCHDkHDQliLWaEn5uz9 gwIEjbVw/X8Eh8Rr/1gqprgBVa/zg1NOQBXv5GKlChsciX4+sZlpQ1R4QRhG9bH2Lt8D rkYd8RBvpsi9b02FRPw1JiIrB2dk/CGyS+F7Be4h+RIHKuiYSbR4YSpTBPzO0ZmapfZe zAew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701403977; x=1702008777; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+DXWDIQ3qhI+UlY7b1G8hCKnQvk1vPVwzZNzUId0ohQ=; b=HX+dEsBNOXZLAqiYPctmFuZ58fjyv7gu6PF0lYYkh/mvBYxxWtgTk6T0c5171nK1KU SITbRloQ2YbwgovtdIHFv0vp112sPoooqaDzXHa1mzlRjNLc2QUFYU2Vn1xpiexhVJfP E+gIpbuUdJIiFEKCHgG+bVHdkF0BR/rPZ6ELoLxF5Vil/R1sEjaMAHO96+MgdsF2xE7V CV27diIqfqmmS7fXuPSYrRn/UEjT0/XzjSwDYgZcFPXSdsASI96Zaj1ZGA3BNK5y37gN ArKqn8U6caxInNT6qz0KCI0ee74fB2f41DMe3o7N4f5lRolCTAUb1d54bw7PglXEDuKY gTLQ== X-Gm-Message-State: AOJu0YzZirte13cQyqH1veFOTRvEsjdaaCyH6OZ8xdhxs+VHu5Y2NwI6 1uEOwJUAxD88sFXfosmcn/B4fJKn6L8= X-Received: by 2002:a05:6870:c10f:b0:1fa:de51:f90c with SMTP id f15-20020a056870c10f00b001fade51f90cmr2404817oad.15.1701403977621; Thu, 30 Nov 2023 20:12:57 -0800 (PST) Received: from server.roeck-us.net ([2600:1700:e321:62f0:329c:23ff:fee3:9d7c]) by smtp.gmail.com with ESMTPSA id r3-20020a05683001c300b006cd099bb052sm374157ota.1.2023.11.30.20.12.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Nov 2023 20:12:57 -0800 (PST) Sender: Guenter Roeck Date: Thu, 30 Nov 2023 20:12:56 -0800 From: Guenter Roeck To: Armin Wolf Cc: jdelvare@suse.com, linux-hwmon@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] hwmon: (acpi_power_meter) Fix 4.29 MW bug Message-ID: References: <20231124182747.13956-1-W_Armin@gmx.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231124182747.13956-1-W_Armin@gmx.de> X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Thu, 30 Nov 2023 20:13:15 -0800 (PST) On Fri, Nov 24, 2023 at 07:27:47PM +0100, Armin Wolf wrote: > The ACPI specification says: > > "If an error occurs while obtaining the meter reading or if the value > is not available then an Integer with all bits set is returned" > > Since the "integer" is 32 bits in case of the ACPI power meter, > userspace will get a power reading of 2^32 * 1000 miliwatts (~4.29 MW) > in case of such an error. This was discovered due to a lm_sensors > bugreport (https://github.com/lm-sensors/lm-sensors/issues/460). > Fix this by returning -ENODATA instead. > > Tested-by: > Fixes: de584afa5e18 ("hwmon driver for ACPI 4.0 power meters") > Signed-off-by: Armin Wolf Applied. Thanks, Guenter > --- > drivers/hwmon/acpi_power_meter.c | 4 ++++ > 1 file changed, 4 insertions(+) > > -- > 2.39.2 > > diff --git a/drivers/hwmon/acpi_power_meter.c b/drivers/hwmon/acpi_power_meter.c > index 8db740214ffd..703666b95bf4 100644 > --- a/drivers/hwmon/acpi_power_meter.c > +++ b/drivers/hwmon/acpi_power_meter.c > @@ -31,6 +31,7 @@ > #define POWER_METER_CAN_NOTIFY (1 << 3) > #define POWER_METER_IS_BATTERY (1 << 8) > #define UNKNOWN_HYSTERESIS 0xFFFFFFFF > +#define UNKNOWN_POWER 0xFFFFFFFF > > #define METER_NOTIFY_CONFIG 0x80 > #define METER_NOTIFY_TRIP 0x81 > @@ -348,6 +349,9 @@ static ssize_t show_power(struct device *dev, > update_meter(resource); > mutex_unlock(&resource->lock); > > + if (resource->power == UNKNOWN_POWER) > + return -ENODATA; > + > return sprintf(buf, "%llu\n", resource->power * 1000); > }