2023-10-29 14:37:00

by Ghanshyam Agrawal

[permalink] [raw]
Subject: [PATCH] media: stk1160: Fixed high volume of stk1160_dbg messages

The function stk1160_dbg gets called too many times, which causes
the output to get flooded with messages. Since stk1160_dbg uses
printk, it is now replaced with printk_ratelimited directly.

Signed-off-by: Ghanshyam Agrawal <[email protected]>
---
drivers/media/usb/stk1160/stk1160-video.c | 13 +------------
1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/media/usb/stk1160/stk1160-video.c b/drivers/media/usb/stk1160/stk1160-video.c
index 4e966f6bf608..f5b75f380c19 100644
--- a/drivers/media/usb/stk1160/stk1160-video.c
+++ b/drivers/media/usb/stk1160/stk1160-video.c
@@ -105,17 +105,6 @@ void stk1160_copy_video(struct stk1160 *dev, u8 *src, int len)
u8 *dst = buf->mem;
int remain;

- /*
- * TODO: These stk1160_dbg are very spammy!
- * We should 1) check why we are getting them
- * and 2) add ratelimit.
- *
- * UPDATE: One of the reasons (the only one?) for getting these
- * is incorrect standard (mismatch between expected and configured).
- * So perhaps, we could add a counter for errors. When the counter
- * reaches some value, we simply stop streaming.
- */
-
len -= 4;
src += 4;

@@ -151,7 +140,7 @@ void stk1160_copy_video(struct stk1160 *dev, u8 *src, int len)

/* Let the bug hunt begin! sanity checks! */
if (lencopy < 0) {
- stk1160_dbg("copy skipped: negative lencopy\n");
+ printk_ratelimited("copy skipped: negative lencopy\n");
return;
}

--
2.25.1


2023-10-29 18:56:50

by Phillip Potter

[permalink] [raw]
Subject: Re: [PATCH] media: stk1160: Fixed high volume of stk1160_dbg messages

On Sun, Oct 29, 2023 at 08:06:04PM +0530, Ghanshyam Agrawal wrote:
> The function stk1160_dbg gets called too many times, which causes
> the output to get flooded with messages. Since stk1160_dbg uses
> printk, it is now replaced with printk_ratelimited directly.
>
> Signed-off-by: Ghanshyam Agrawal <[email protected]>
> ---
> drivers/media/usb/stk1160/stk1160-video.c | 13 +------------
> 1 file changed, 1 insertion(+), 12 deletions(-)
>
> diff --git a/drivers/media/usb/stk1160/stk1160-video.c b/drivers/media/usb/stk1160/stk1160-video.c
> index 4e966f6bf608..f5b75f380c19 100644
> --- a/drivers/media/usb/stk1160/stk1160-video.c
> +++ b/drivers/media/usb/stk1160/stk1160-video.c
> @@ -105,17 +105,6 @@ void stk1160_copy_video(struct stk1160 *dev, u8 *src, int len)
> u8 *dst = buf->mem;
> int remain;
>
> - /*
> - * TODO: These stk1160_dbg are very spammy!
> - * We should 1) check why we are getting them
> - * and 2) add ratelimit.
> - *
> - * UPDATE: One of the reasons (the only one?) for getting these
> - * is incorrect standard (mismatch between expected and configured).
> - * So perhaps, we could add a counter for errors. When the counter
> - * reaches some value, we simply stop streaming.
> - */
> -
> len -= 4;
> src += 4;
>
> @@ -151,7 +140,7 @@ void stk1160_copy_video(struct stk1160 *dev, u8 *src, int len)
>
> /* Let the bug hunt begin! sanity checks! */
> if (lencopy < 0) {
> - stk1160_dbg("copy skipped: negative lencopy\n");
> + printk_ratelimited("copy skipped: negative lencopy\n");
> return;
> }
>
> --
> 2.25.1
>
> _______________________________________________
> Linux-kernel-mentees mailing list
> [email protected]
> https://lists.linuxfoundation.org/mailman/listinfo/linux-kernel-mentees

Hi Ghanshyam,

As we've conversed about this via other comms channels, thought I'd
offer my comments here for what they are worth. Thanks for the patch
firstly.

Few things I would change though:
(1) Keep the comment around perhaps, but modify/move it, to specify the
reason for the ratelimiting is caused by standard mismatches.
Perhaps also leave a note about the possibility of it being due to
other problems also, given the comment says "the only one?" posed as
a question.
(2) For consistency, probably worth making use of KERN_WARNING in your
new printk_ratelimited call.

All the best.

Regards,
Phil