Check and propagate the return value of adp8870_write() when it fails, which is possible when SMBus writing byte fails. Signed-off-by: Li Zhong <floridsleeves@xxxxxxxxx> --- drivers/video/backlight/adp8870_bl.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/video/backlight/adp8870_bl.c b/drivers/video/backlight/adp8870_bl.c index 8b5213a39527..0eb4ae2ff592 100644 --- a/drivers/video/backlight/adp8870_bl.c +++ b/drivers/video/backlight/adp8870_bl.c @@ -567,9 +567,13 @@ static ssize_t adp8870_store(struct device *dev, const char *buf, return ret; mutex_lock(&data->lock); - adp8870_write(data->client, reg, val); + ret = adp8870_write(data->client, reg, val); mutex_unlock(&data->lock); + if (ret) { + return ret; + } + return count; } -- 2.25.1