Skip to content

Commit

Permalink
HID: hid-sensor-custom: Process failure of sensor_hub_set_feature()
Browse files Browse the repository at this point in the history
When user modifies a custom feature value and sensor_hub_set_feature()
fails, return error.

Reported-by: Abaci Robot <abaci@linux.alibaba.com>
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
  • Loading branch information
Srinivas Pandruvada authored and Jiri Kosina committed May 26, 2021
1 parent ca66a67 commit 3202f48
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions drivers/hid/hid-sensor-custom.c
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,7 @@ static ssize_t store_value(struct device *dev, struct device_attribute *attr,
struct hid_sensor_custom *sensor_inst = dev_get_drvdata(dev);
int index, field_index, usage;
char name[HID_CUSTOM_NAME_LENGTH];
int value;
int value, ret;

if (sscanf(attr->attr.name, "feature-%x-%x-%s", &index, &usage,
name) == 3) {
Expand All @@ -403,8 +403,10 @@ static ssize_t store_value(struct device *dev, struct device_attribute *attr,

report_id = sensor_inst->fields[field_index].attribute.
report_id;
sensor_hub_set_feature(sensor_inst->hsdev, report_id,
index, sizeof(value), &value);
ret = sensor_hub_set_feature(sensor_inst->hsdev, report_id,
index, sizeof(value), &value);
if (ret)
return ret;
} else
return -EINVAL;

Expand Down

0 comments on commit 3202f48

Please sign in to comment.