* [PATCH] media: usb: ttusb-dec: reduce the number of memory reads in ttusb_dec_handle_irq()
@ 2020-05-07 10:25 Jia-Ju Bai
2020-05-07 11:15 ` Greg KH
0 siblings, 1 reply; 2+ messages in thread
From: Jia-Ju Bai @ 2020-05-07 10:25 UTC (permalink / raw)
To: mchehab, gregkh, allison, tglx, rfontana, tomasbortoli, sean
Cc: linux-media, linux-kernel, Jia-Ju Bai
In ttusb_dec_handle_irq(), buffer[4] is continuously read from memory
three times, without being modified.
To reduce the number of memory reads, buffer[4] is first assigned to a
local variable index, and then index is used to replace buffer[4].
Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
---
drivers/media/usb/ttusb-dec/ttusb_dec.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/media/usb/ttusb-dec/ttusb_dec.c b/drivers/media/usb/ttusb-dec/ttusb_dec.c
index 3198f9624b7c..8543c552515b 100644
--- a/drivers/media/usb/ttusb-dec/ttusb_dec.c
+++ b/drivers/media/usb/ttusb-dec/ttusb_dec.c
@@ -250,6 +250,7 @@ static void ttusb_dec_handle_irq( struct urb *urb)
struct ttusb_dec *dec = urb->context;
char *buffer = dec->irq_buffer;
int retval;
+ int index = buffer[4];
switch(urb->status) {
case 0: /*success*/
@@ -281,11 +282,11 @@ static void ttusb_dec_handle_irq( struct urb *urb)
* this should/could be added later ...
* for now lets report each signal as a key down and up
*/
- if (buffer[4] - 1 < ARRAY_SIZE(rc_keys)) {
- dprintk("%s:rc signal:%d\n", __func__, buffer[4]);
- input_report_key(dec->rc_input_dev, rc_keys[buffer[4] - 1], 1);
+ if (index - 1 < ARRAY_SIZE(rc_keys)) {
+ dprintk("%s:rc signal:%d\n", __func__, index);
+ input_report_key(dec->rc_input_dev, rc_keys[index - 1], 1);
input_sync(dec->rc_input_dev);
- input_report_key(dec->rc_input_dev, rc_keys[buffer[4] - 1], 0);
+ input_report_key(dec->rc_input_dev, rc_keys[index - 1], 0);
input_sync(dec->rc_input_dev);
}
}
--
2.17.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] media: usb: ttusb-dec: reduce the number of memory reads in ttusb_dec_handle_irq()
2020-05-07 10:25 [PATCH] media: usb: ttusb-dec: reduce the number of memory reads in ttusb_dec_handle_irq() Jia-Ju Bai
@ 2020-05-07 11:15 ` Greg KH
0 siblings, 0 replies; 2+ messages in thread
From: Greg KH @ 2020-05-07 11:15 UTC (permalink / raw)
To: Jia-Ju Bai
Cc: mchehab, allison, tglx, rfontana, tomasbortoli, sean,
linux-media, linux-kernel
On Thu, May 07, 2020 at 06:25:21PM +0800, Jia-Ju Bai wrote:
> In ttusb_dec_handle_irq(), buffer[4] is continuously read from memory
> three times, without being modified.
> To reduce the number of memory reads, buffer[4] is first assigned to a
> local variable index, and then index is used to replace buffer[4].
>
> Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
> ---
> drivers/media/usb/ttusb-dec/ttusb_dec.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/media/usb/ttusb-dec/ttusb_dec.c b/drivers/media/usb/ttusb-dec/ttusb_dec.c
> index 3198f9624b7c..8543c552515b 100644
> --- a/drivers/media/usb/ttusb-dec/ttusb_dec.c
> +++ b/drivers/media/usb/ttusb-dec/ttusb_dec.c
> @@ -250,6 +250,7 @@ static void ttusb_dec_handle_irq( struct urb *urb)
> struct ttusb_dec *dec = urb->context;
> char *buffer = dec->irq_buffer;
> int retval;
> + int index = buffer[4];
>
> switch(urb->status) {
> case 0: /*success*/
> @@ -281,11 +282,11 @@ static void ttusb_dec_handle_irq( struct urb *urb)
> * this should/could be added later ...
> * for now lets report each signal as a key down and up
> */
> - if (buffer[4] - 1 < ARRAY_SIZE(rc_keys)) {
> - dprintk("%s:rc signal:%d\n", __func__, buffer[4]);
> - input_report_key(dec->rc_input_dev, rc_keys[buffer[4] - 1], 1);
> + if (index - 1 < ARRAY_SIZE(rc_keys)) {
> + dprintk("%s:rc signal:%d\n", __func__, index);
> + input_report_key(dec->rc_input_dev, rc_keys[index - 1], 1);
> input_sync(dec->rc_input_dev);
> - input_report_key(dec->rc_input_dev, rc_keys[buffer[4] - 1], 0);
> + input_report_key(dec->rc_input_dev, rc_keys[index - 1], 0);
> input_sync(dec->rc_input_dev);
> }
> }
> --
> 2.17.1
>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-05-07 11:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-07 10:25 [PATCH] media: usb: ttusb-dec: reduce the number of memory reads in ttusb_dec_handle_irq() Jia-Ju Bai
2020-05-07 11:15 ` Greg KH
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).