Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp558180ybz; Fri, 24 Apr 2020 05:24:41 -0700 (PDT) X-Google-Smtp-Source: APiQypL7cXmqnRsZtpJcgHaVCjpsDwQkHw4PZtoURv2sZ+cG0SHXgGPbTLCIGNRomExgAk4eQvus X-Received: by 2002:a17:906:1d4c:: with SMTP id o12mr7091324ejh.357.1587731081187; Fri, 24 Apr 2020 05:24:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587731081; cv=none; d=google.com; s=arc-20160816; b=b2BNTCMCQbHStP/E8pe6BfdekBOzHEHVL35mY62z6fpshWCl7fJR0nqXWrLSiDnvb6 HzFSiR4GUEAuZt3dnK4lUsIpp//a2+WEZ+wW3FvPwyFXRz7nwSwVRXfnKPhAUmvcJSn7 WJmIl+j4Wc5rGpBrZNTW4+gA6aOpm2rFsPxg2vLaQcQUZz3D+5nAqArdJjmEhb19dgp7 cLZMbj3VihXL3BwQxH54CE6eQ5fPsqeXWuWwBIi5x474JMqwMCto19UsbkaoyeTiF2w3 gWgomYL0axWl912OjIciC15Q5UmEd7FkZV0XAKBXpA8t2yX9KuEgPvUP0zJe6cp8WOhl 2yjw== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=jDL5GgswJXP/FoZf8nXbesFyg17rVuavND0kivD4+l0=; b=srWjxc+yVV20n2syyDWoXDaxn5bS1nAAvgTw6dGsJ4O67x+onNJax/XkRUrQ7FUma6 x77LX52WTqrdaLu6wMZbK6J2FJ7RJi/Gk+KIRfuG/KzuOsffrQ+8q/b57q6cZ5Mo5ps5 6SsTngFgZ5TzWelM0ZbWfxxRFCtwsbxrg2xvyVVcCT9Rn2ZnVipQLz1DV7ka75P0mbm8 US8TjK/FWLu8uf1mNqfrgLd6ikodtfLEKoksIAG0M9yeUO/zrn5UGVFjqqbqy2qyEigB Em9A/rdJVtkilCGfZ60mVlw0E5usGrhv+7Oln8AnRrYOHbN9AC+Sy2AdYjDqHqyttCQN Wr3Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=k8GQxksp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id lw9si2878849ejb.175.2020.04.24.05.24.16; Fri, 24 Apr 2020 05:24:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=k8GQxksp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727065AbgDXMWr (ORCPT + 99 others); Fri, 24 Apr 2020 08:22:47 -0400 Received: from mail.kernel.org ([198.145.29.99]:51892 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727044AbgDXMWp (ORCPT ); Fri, 24 Apr 2020 08:22:45 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id D06582084D; Fri, 24 Apr 2020 12:22:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1587730964; bh=nvnmc9IWtdg9lfERc6tpzSUdwZC6kN8jrbfQLWlzrAQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=k8GQxkspDXN7+axftHJEclU4Bfj82tipL2VaT/3/ErdfYrkp8f57DFCj1yvrXcwJj iYf2F7sXt9tS20+m44Dx0CLmn1GgGE7RuIEMJcVIoQTXROvZ4uu21v609ZtssUeAdt J8YeKovPRuc6WkE0gGpXoCeN6jTqDXpSPTTKjJe0= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Guenter Roeck , =?UTF-8?q?Holger=20Hoffst=C3=A4tte?= , Sasha Levin , linux-hwmon@vger.kernel.org Subject: [PATCH AUTOSEL 5.6 06/38] hwmon: (drivetemp) Return -ENODATA for invalid temperatures Date: Fri, 24 Apr 2020 08:22:04 -0400 Message-Id: <20200424122237.9831-6-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200424122237.9831-1-sashal@kernel.org> References: <20200424122237.9831-1-sashal@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Guenter Roeck [ Upstream commit ed08ebb7124e90a99420bb913d602907d377d03d ] Holger Hoffstätte observed that Samsung 850 Pro may return invalid temperatures for a short period of time after resume. Return -ENODATA to userspace if this is observed. Fixes: 5b46903d8bf3 ("hwmon: Driver for disk and solid state drives with temperature sensors") Reported-by: Holger Hoffstätte Cc: Holger Hoffstätte Signed-off-by: Guenter Roeck Signed-off-by: Sasha Levin --- drivers/hwmon/drivetemp.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/hwmon/drivetemp.c b/drivers/hwmon/drivetemp.c index 370d0c74eb012..9179460c2d9d5 100644 --- a/drivers/hwmon/drivetemp.c +++ b/drivers/hwmon/drivetemp.c @@ -264,12 +264,18 @@ static int drivetemp_get_scttemp(struct drivetemp_data *st, u32 attr, long *val) return err; switch (attr) { case hwmon_temp_input: + if (!temp_is_valid(buf[SCT_STATUS_TEMP])) + return -ENODATA; *val = temp_from_sct(buf[SCT_STATUS_TEMP]); break; case hwmon_temp_lowest: + if (!temp_is_valid(buf[SCT_STATUS_TEMP_LOWEST])) + return -ENODATA; *val = temp_from_sct(buf[SCT_STATUS_TEMP_LOWEST]); break; case hwmon_temp_highest: + if (!temp_is_valid(buf[SCT_STATUS_TEMP_HIGHEST])) + return -ENODATA; *val = temp_from_sct(buf[SCT_STATUS_TEMP_HIGHEST]); break; default: -- 2.20.1