On Tue, 21 Jan 2020 08:45:21 +0000 Eugene Zaikonnikov <eugene.zaikonnikov@xxxxxxxxxxxxx> wrote: > Hi Jonathan, > > > On 23.12.2019 18:16, Jonathan Cameron wrote: > > > > As below. Why change the existing return value? > > > >> + } > >> + return ret; > >> + } > >> + case IIO_CHAN_INFO_PEAK: { > >> + int ret; > >> + > >> + ret = iio_device_claim_direct_mode(indio_dev); > >> + if (ret) > >> + return ret; > >> + mutex_lock(&data->lock); > >> + ret = hdc2010_get_measurement_byte(data, chan); > >> + mutex_unlock(&data->lock); > >> + iio_device_release_direct_mode(indio_dev); > >> + if (ret >= 0) { > >> + /* Scaling up the value so we can use same offset as RAW */ > >> + *val = ret * 256; > >> + ret = IIO_VAL_INT; > >> + } else > > Why overwrite ret? That might provide better information > > on what went wrong. > > As with the other stylistic notes before, no good reason other than how it was handled in other drivers in the tree. So I assumed it was the practice. Will tidy up later this week I hope and send a new patchset. We should look to clean up any cases where a valid error code is overwritten with no good reason. I thought we were pretty good on that generally but there may be some still hiding in various drivers. Thanks, Jonathan