Message ID | 20161013212844.GA23230@gofer.mess.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thursday, October 13, 2016 10:28:44 PM CEST Sean Young wrote: > When receiving a nec repeat, ensure the correct scancode is repeated > rather than a random value from the stack. This removes the need > for the bogus uninitialized_var() and also fixes the warnings: > > drivers/media/usb/dvb-usb/dib0700_core.c: In function ‘dib0700_rc_urb_completion’: > drivers/media/usb/dvb-usb/dib0700_core.c:679: warning: ‘protocol’ may be used uninitialized in this function > > Signed-off-by: Sean Young <sean@mess.org> > --- > drivers/media/usb/dvb-usb/dib0700_core.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) Acked-by: Arnd Bergmann <arnd@arndb.de> Cc: stable@vger.kernel.org Fixes: 2ceeca0499d7 ("[media] rc: split nec protocol into its three variants") Fixes: d3c501d1938c ("V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5") The warning is gone for me too, so this obsoletes both https://patchwork.linuxtv.org/patch/37494/ and https://patchwork.kernel.org/patch/9380747/ Can we get this patch merged into v4.9 soonish? The warning is currently disabled, but I'd like to make sure it gets turned on again by default, and we should fix all the actual bugs in the process. Arnd [I replied to Mauro's other address here as mchehab@s-opensource.com bounced with "Failed to transport message. Message sending failed since the following recipients were rejected by the server: mchehab@s-opensource.com (The server responded: Requested action not taken: mailbox unavailable invalid DNS MX or A/AAAA resource record)"] -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, Oct 29, 2016 at 11:04:32PM +0200, Arnd Bergmann wrote: > On Thursday, October 13, 2016 10:28:44 PM CEST Sean Young wrote: > > When receiving a nec repeat, ensure the correct scancode is repeated > > rather than a random value from the stack. This removes the need > > for the bogus uninitialized_var() and also fixes the warnings: > > > > drivers/media/usb/dvb-usb/dib0700_core.c: In function ‘dib0700_rc_urb_completion’: > > drivers/media/usb/dvb-usb/dib0700_core.c:679: warning: ‘protocol’ may be used uninitialized in this function > > > > Signed-off-by: Sean Young <sean@mess.org> > > --- > > drivers/media/usb/dvb-usb/dib0700_core.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > Acked-by: Arnd Bergmann <arnd@arndb.de> > Cc: stable@vger.kernel.org > Fixes: 2ceeca0499d7 ("[media] rc: split nec protocol into its three variants") > Fixes: d3c501d1938c ("V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5") > > > The warning is gone for me too, so this obsoletes both > https://patchwork.linuxtv.org/patch/37494/ and > https://patchwork.kernel.org/patch/9380747/ > > Can we get this patch merged into v4.9 soonish? The warning > is currently disabled, but I'd like to make sure it gets turned > on again by default, and we should fix all the actual bugs in > the process. So after writing the patch and submitting it, I've bought the hardware on ebay. Without this patch you get random scancodes on nec repeats, which the patch indeed fixes. Tested-by: Sean Young <sean@mess.org> Note that this has been broken forever, so it is not a regression, so does it belong in stable? Sean -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wednesday, November 2, 2016 4:45:09 PM CET Sean Young wrote: > On Sat, Oct 29, 2016 at 11:04:32PM +0200, Arnd Bergmann wrote: > > On Thursday, October 13, 2016 10:28:44 PM CEST Sean Young wrote: > > > When receiving a nec repeat, ensure the correct scancode is repeated > > > rather than a random value from the stack. This removes the need > > > for the bogus uninitialized_var() and also fixes the warnings: > > > > > > drivers/media/usb/dvb-usb/dib0700_core.c: In function ‘dib0700_rc_urb_completion’: > > > drivers/media/usb/dvb-usb/dib0700_core.c:679: warning: ‘protocol’ may be used uninitialized in this function > > > > > > Signed-off-by: Sean Young <sean@mess.org> > > > --- > > > drivers/media/usb/dvb-usb/dib0700_core.c | 5 +++-- > > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > Acked-by: Arnd Bergmann <arnd@arndb.de> > > Cc: stable@vger.kernel.org > > Fixes: 2ceeca0499d7 ("[media] rc: split nec protocol into its three variants") > > Fixes: d3c501d1938c ("V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5") > > > > > > The warning is gone for me too, so this obsoletes both > > https://patchwork.linuxtv.org/patch/37494/ and > > https://patchwork.kernel.org/patch/9380747/ > > > > Can we get this patch merged into v4.9 soonish? The warning > > is currently disabled, but I'd like to make sure it gets turned > > on again by default, and we should fix all the actual bugs in > > the process. > > So after writing the patch and submitting it, I've bought the hardware on > ebay. Without this patch you get random scancodes on nec repeats, which > the patch indeed fixes. > > Tested-by: Sean Young <sean@mess.org> Awesome, thanks for testing! > Note that this has been broken forever, so it is not a regression, so > does it belong in stable? I think it does, it doesn't have to be a regression to qualify for stable kernels, and it is clearly a bugfix. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/media/usb/dvb-usb/dib0700_core.c b/drivers/media/usb/dvb-usb/dib0700_core.c index f319665..5bb23ef 100644 --- a/drivers/media/usb/dvb-usb/dib0700_core.c +++ b/drivers/media/usb/dvb-usb/dib0700_core.c @@ -677,7 +677,7 @@ static void dib0700_rc_urb_completion(struct urb *purb) struct dvb_usb_device *d = purb->context; struct dib0700_rc_response *poll_reply; enum rc_type protocol; - u32 uninitialized_var(keycode); + u32 keycode; u8 toggle; deb_info("%s()\n", __func__); @@ -718,7 +718,8 @@ static void dib0700_rc_urb_completion(struct urb *purb) poll_reply->nec.data == 0x00 && poll_reply->nec.not_data == 0xff) { poll_reply->data_state = 2; - break; + rc_repeat(d->rc_dev); + goto resubmit; } if ((poll_reply->nec.data ^ poll_reply->nec.not_data) != 0xff) {
When receiving a nec repeat, ensure the correct scancode is repeated rather than a random value from the stack. This removes the need for the bogus uninitialized_var() and also fixes the warnings: drivers/media/usb/dvb-usb/dib0700_core.c: In function ‘dib0700_rc_urb_completion’: drivers/media/usb/dvb-usb/dib0700_core.c:679: warning: ‘protocol’ may be used uninitialized in this function Signed-off-by: Sean Young <sean@mess.org> --- drivers/media/usb/dvb-usb/dib0700_core.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)