2017-12-06 09:02:28

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] staging: pi433: Fixes issue with bit shift in rf69_get_modulation

On Wed, Nov 08, 2017 at 07:13:56PM +0200, Marcus Wolf wrote:
> Fixes issue with bit shift in rf69_get_modulation

What "issue"?

>
> Signed-off-by: Marcus Wolf <[email protected]>
> ---
> drivers/staging/pi433/rf69.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c
> index 290b419..c945b4b 100644
> --- a/drivers/staging/pi433/rf69.c
> +++ b/drivers/staging/pi433/rf69.c
> @@ -102,7 +102,7 @@ enum modulation rf69_get_modulation(struct spi_device *spi)
>
> currentValue = READ_REG(REG_DATAMODUL);
>
> - switch (currentValue & MASK_DATAMODUL_MODULATION_TYPE >> 3) { // TODO improvement: change 3 to define
> + switch (currentValue & MASK_DATAMODUL_MODULATION_TYPE) {

Doesn't this change the logic here?

thanks,

greg k-h


2017-12-06 10:02:25

by Marcus Wolf

[permalink] [raw]
Subject: Re: [PATCH] staging: pi433: Fixes issue with bit shift in rf69_get_modulation



Am 06.12.2017 um 11:02 schrieb Greg KH:
> On Wed, Nov 08, 2017 at 07:13:56PM +0200, Marcus Wolf wrote:
>> Fixes issue with bit shift in rf69_get_modulation
>
> What "issue"?
>
>>
>> Signed-off-by: Marcus Wolf <[email protected]>
>> ---
>> drivers/staging/pi433/rf69.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c
>> index 290b419..c945b4b 100644
>> --- a/drivers/staging/pi433/rf69.c
>> +++ b/drivers/staging/pi433/rf69.c
>> @@ -102,7 +102,7 @@ enum modulation rf69_get_modulation(struct spi_device *spi)
>>
>> currentValue = READ_REG(REG_DATAMODUL);
>>
>> - switch (currentValue & MASK_DATAMODUL_MODULATION_TYPE >> 3) { // TODO improvement: change 3 to define
>> + switch (currentValue & MASK_DATAMODUL_MODULATION_TYPE) {
>
> Doesn't this change the logic here?
>
> thanks,
>
> greg k-h
>

Hi Greg,

yes, it does.

This is one of the very few changes to pi433 driver, that does not
modify the architecture or optics of the code, but really fixes a bug.
This function wasn't working from the very beginning, and we had already
several reports and patches (from me and otheres), announcing or trying
to fix the bug. But so far all patches were skipped for some reason.


Please take the patch.

Marcus

2017-12-06 14:23:00

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] staging: pi433: Fixes issue with bit shift in rf69_get_modulation

On Wed, Dec 06, 2017 at 12:02:13PM +0200, Marcus Wolf wrote:
>
>
> Am 06.12.2017 um 11:02 schrieb Greg KH:
> > On Wed, Nov 08, 2017 at 07:13:56PM +0200, Marcus Wolf wrote:
> > > Fixes issue with bit shift in rf69_get_modulation
> >
> > What "issue"?
> >
> > >
> > > Signed-off-by: Marcus Wolf <[email protected]>
> > > ---
> > > drivers/staging/pi433/rf69.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c
> > > index 290b419..c945b4b 100644
> > > --- a/drivers/staging/pi433/rf69.c
> > > +++ b/drivers/staging/pi433/rf69.c
> > > @@ -102,7 +102,7 @@ enum modulation rf69_get_modulation(struct spi_device *spi)
> > > currentValue = READ_REG(REG_DATAMODUL);
> > > - switch (currentValue & MASK_DATAMODUL_MODULATION_TYPE >> 3) { // TODO improvement: change 3 to define
> > > + switch (currentValue & MASK_DATAMODUL_MODULATION_TYPE) {
> >
> > Doesn't this change the logic here?
> >
> > thanks,
> >
> > greg k-h
> >
>
> Hi Greg,
>
> yes, it does.
>
> This is one of the very few changes to pi433 driver, that does not modify
> the architecture or optics of the code, but really fixes a bug. This
> function wasn't working from the very beginning, and we had already several
> reports and patches (from me and otheres), announcing or trying to fix the
> bug. But so far all patches were skipped for some reason.
>
>
> Please take the patch.

Ok, then this should go into 4.15-final, I'll queue it up to that tree.

thanks,

greg k-h