From: Eduardo Valentin <edubezval@gmail.com>
To: Rui Zhang <rui.zhang@intel.com>
Cc: Linux PM <linux-pm@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
Eduardo Valentin <edubezval@gmail.com>
Subject: [PATCHv2 20/40] thermal: core: treat correctly the return value of *scanf calls
Date: Mon, 30 May 2016 14:27:39 -0700 [thread overview]
Message-ID: <1464643679-2733-21-git-send-email-edubezval@gmail.com> (raw)
In-Reply-To: <1464643679-2733-1-git-send-email-edubezval@gmail.com>
This patch checks the return value of all calls to *scanf.
The check is to simply match the number of expect inputs.
The current code does not do any recovery in case the
number of treated inputs are different than the expected.
Therefore, keeping the same behavior.
Cc: Zhang Rui <rui.zhang@intel.com>
Cc: linux-pm@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
---
drivers/thermal/thermal_core.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c
index cfa74e6..98aa7d5 100644
--- a/drivers/thermal/thermal_core.c
+++ b/drivers/thermal/thermal_core.c
@@ -817,7 +817,7 @@ trip_point_type_show(struct device *dev, struct device_attribute *attr,
if (!tz->ops->get_trip_type)
return -EPERM;
- if (!sscanf(attr->attr.name, "trip_point_%d_type", &trip))
+ if (sscanf(attr->attr.name, "trip_point_%d_type", &trip) != 1)
return -EINVAL;
result = tz->ops->get_trip_type(tz, trip, &type);
@@ -849,7 +849,7 @@ trip_point_temp_store(struct device *dev, struct device_attribute *attr,
if (!tz->ops->set_trip_temp)
return -EPERM;
- if (!sscanf(attr->attr.name, "trip_point_%d_temp", &trip))
+ if (sscanf(attr->attr.name, "trip_point_%d_temp", &trip) != 1)
return -EINVAL;
if (kstrtoint(buf, 10, &temperature))
@@ -875,7 +875,7 @@ trip_point_temp_show(struct device *dev, struct device_attribute *attr,
if (!tz->ops->get_trip_temp)
return -EPERM;
- if (!sscanf(attr->attr.name, "trip_point_%d_temp", &trip))
+ if (sscanf(attr->attr.name, "trip_point_%d_temp", &trip) != 1)
return -EINVAL;
ret = tz->ops->get_trip_temp(tz, trip, &temperature);
@@ -897,7 +897,7 @@ trip_point_hyst_store(struct device *dev, struct device_attribute *attr,
if (!tz->ops->set_trip_hyst)
return -EPERM;
- if (!sscanf(attr->attr.name, "trip_point_%d_hyst", &trip))
+ if (sscanf(attr->attr.name, "trip_point_%d_hyst", &trip) != 1)
return -EINVAL;
if (kstrtoint(buf, 10, &temperature))
@@ -924,7 +924,7 @@ trip_point_hyst_show(struct device *dev, struct device_attribute *attr,
if (!tz->ops->get_trip_hyst)
return -EPERM;
- if (!sscanf(attr->attr.name, "trip_point_%d_hyst", &trip))
+ if (sscanf(attr->attr.name, "trip_point_%d_hyst", &trip) != 1)
return -EINVAL;
ret = tz->ops->get_trip_hyst(tz, trip, &temperature);
@@ -939,7 +939,7 @@ passive_store(struct device *dev, struct device_attribute *attr,
struct thermal_zone_device *tz = to_thermal_zone(dev);
int state;
- if (!sscanf(buf, "%d\n", &state))
+ if (sscanf(buf, "%d\n", &state) != 1)
return -EINVAL;
/* sanity check: values below 1000 millicelcius don't make sense
@@ -1381,7 +1381,7 @@ thermal_cooling_device_cur_state_store(struct device *dev,
unsigned long state;
int result;
- if (!sscanf(buf, "%ld\n", &state))
+ if (sscanf(buf, "%ld\n", &state) != 1)
return -EINVAL;
if ((long)state < 0)
--
2.1.4
next prev parent reply other threads:[~2016-05-30 21:27 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-30 21:27 [PATCHv2 00/40] Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 01/40] thermal: core: prevent zones with no types to be registered Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 02/40] thermal: core: group thermal_zone DEVICE_ATTR's declarations Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 03/40] thermal: core: group device_create_file() calls that are always created Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 04/40] thermal: core: use dev.groups to manage always present tz attributes Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 05/40] thermal: core: move emul_temp creation to tz->device.groups Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 06/40] thermal: core: move mode attribute " Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 07/40] thermal: core: move passive attr " Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 08/40] thermal: core: improve power actor documentation Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 09/40] thermal: core: move power actor code out of sysfs I/F section Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 10/40] thermal: core: remove useless empty line Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 11/40] thermal: core: fix style on remove_trip_attrs() Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 12/40] thermal: core: move the trip attrs to the tz sysfs I/F section Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 13/40] thermal: core: create tz->device.groups dynamically Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 14/40] thermal: core: move trips attributes to tz->device.groups Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 15/40] thermal: core: remove unnecessary device_remove() calls Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 16/40] thermal: core: split passive_store Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 17/40] thermal: core: split policy_store Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 18/40] thermal: core: split available_policies_show() Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 19/40] thermal: core: move to_thermal_zone() macro to header file Eduardo Valentin
2016-05-30 21:27 ` Eduardo Valentin [this message]
2016-05-30 21:27 ` [PATCHv2 21/40] thermal: core: match parenthesis on code alignment Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 22/40] thermal: core: move thermal_zone sysfs to thermal_sysfs.c Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 23/40] thermal: core: move to_cooling_device macro to header file Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 24/40] thermal: core: move cooling device sysfs to thermal_sysfs.c Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 25/40] thermal: core: remove a couple of style issues on helpers Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 26/40] thermal: core: introduce thermal_helpers.c Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 27/40] thermal: core: group functions related to governor handling Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 28/40] thermal: core: move idr handling to device management section Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 29/40] thermal: core: small style fix on __unbind() helper Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 30/40] thermal: core: move __unbind() helper to where it is used Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 31/40] thermal: core: move bind_cdev() " Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 32/40] thermal: core: move bind_tz() " Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 33/40] thermal: core: fix couple of style issues on __bind() helper Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 34/40] thermal: core: move __bind() to where it is used Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 35/40] thermal: core: add inline to print_bind_err_msg() Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 36/40] thermal: core: move notify to the zone update section Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 37/40] thermal: core: add a comment describing the main update loop Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 38/40] thermal: core: add a comment describing the power actor section Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 39/40] thermal: core: add a comment describing the device management section Eduardo Valentin
2016-05-30 21:27 ` [PATCHv2 40/40] thermal: sysfs: remove symbols of emul_temp when config is disabled Eduardo Valentin
2016-05-30 22:16 ` [PATCHv2 00/40] Eduardo Valentin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1464643679-2733-21-git-send-email-edubezval@gmail.com \
--to=edubezval@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rui.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).