Re: [PATCH] iio: hid-sensors: Fix an error handling path in _hid_sensor_set_report_latency()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 08 Oct 2024 10:21:50 -0700
srinivas pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx> wrote:

> On Sat, 2024-10-05 at 19:06 +0100, Jonathan Cameron wrote:
> > On Thu,  3 Oct 2024 20:41:12 +0200
> > Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> wrote:
> >   
> > > If hid_sensor_set_report_latency() fails, the error code should be
> > > returned
> > > instead of a value likely to be interpreted as 'success'.
> > > 
> > > Fixes: 138bc7969c24 ("iio: hid-sensor-hub: Implement batch mode")
> > > Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> > > ---
> > > This patch is speculative.
> > > 
> > > The code just *looks* wrong to me. No strong opinion, if it is done
> > > on
> > > purpose or not.  
> > Agreed it smells :)  But I'd like more eyes on this before I take the
> > fix
> > as maybe there is something subtle going on.
> >   
> The original HID sensor spec HUTRR39 didn't have this property (usage
> ID 0x31B). This was added by update "HUTRR59" to support batch mode to
> improve power. 
> This attribute will not be present on non batch mode supported system
> and on supported system this attribute writes will not fail unless some
> hardware error.
> 
> Returning error is fine.
> 
>     Acked-by: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx>
> 
> Thanks,
> Srinivas
> 
Thanks and applied to the fixes-togreg branch of iio.git + marked
for stable.

Jonathan

> 
> 
> 
> 
> > J  
> > > ---
> > >  drivers/iio/common/hid-sensors/hid-sensor-trigger.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> > > b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> > > index ad8910e6ad59..abb09fefc792 100644
> > > --- a/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> > > +++ b/drivers/iio/common/hid-sensors/hid-sensor-trigger.c
> > > @@ -32,7 +32,7 @@ static ssize_t
> > > _hid_sensor_set_report_latency(struct device *dev,
> > >  	latency = integer * 1000 + fract / 1000;
> > >  	ret = hid_sensor_set_report_latency(attrb, latency);
> > >  	if (ret < 0)
> > > -		return len;
> > > +		return ret;
> > >  
> > >  	attrb->latency_ms = hid_sensor_get_report_latency(attrb);
> > >    
> >   
> 






[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux