[PATCH 08/14] staging: gasket: apex return error on sysfs show of missing attribute

From: Todd Poynor
Date: Sat Jul 21 2018 - 08:59:31 EST


From: Todd Poynor <toddpoynor@xxxxxxxxxx>

Apex sysfs show function return -ENODEV if the attribute is not present,
rather than silently failing from the standpoint of the userspace
accessor.

Reported-by: Guenter Roeck <groeck@xxxxxxxxxxxx>
Signed-off-by: Todd Poynor <toddpoynor@xxxxxxxxxx>
---
drivers/staging/gasket/apex_driver.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/gasket/apex_driver.c b/drivers/staging/gasket/apex_driver.c
index 3e76c4db5db2e..1c6f73b5a2a9e 100644
--- a/drivers/staging/gasket/apex_driver.c
+++ b/drivers/staging/gasket/apex_driver.c
@@ -710,14 +710,14 @@ static ssize_t sysfs_show(
gasket_dev = gasket_sysfs_get_device_data(device);
if (!gasket_dev) {
gasket_nodev_error("No Apex device sysfs mapping found");
- return 0;
+ return -ENODEV;
}

gasket_attr = gasket_sysfs_get_attr(device, attr);
if (!gasket_attr) {
gasket_nodev_error("No Apex device sysfs attr data found");
gasket_sysfs_put_device_data(device, gasket_dev);
- return 0;
+ return -ENODEV;
}

type = (enum sysfs_attribute_type)gasket_sysfs_get_attr(device, attr);
--
2.18.0.233.g985f88cf7e-goog