Thread (3 messages) 3 messages, 2 authors, 2025-06-20

Re: [PATCH v2] HID: rate-limit hid_warn to prevent log flooding

From: Li Chen <hidden>
Date: 2025-06-20 11:46:40
Also in: lkml

Hi Jiri

 ---- On Fri, 20 Jun 2025 15:09:37 +0800  Jiri Kosina [off-list ref] wrote --- 
 > On Fri, 20 Jun 2025, Li Chen wrote:
 > 
 > > From: Li Chen [off-list ref]
 > > 
 > > Syzkaller can create many uhid devices that trigger
 > > repeated warnings like:
 > > 
 > >   "hid-generic xxxx: unknown main item tag 0x0"
 > > 
 > > These messages can flood the system log, especially if a crash occurs
 > > (e.g., with a slow UART console, leading to soft lockups). To mitigate
 > > this, convert `hid_warn()` to use `dev_warn_ratelimited()`.
 > > 
 > > This helps reduce log noise and improves system stability under fuzzing
 > > or faulty device scenarios.
 > > 
 > > Signed-off-by: Li Chen [off-list ref]
 > > ---
 > > Changelog:
 > > 
 > > v2: Introduce hid_warn_ratelimited to rate-limit the specified log.
 > > 
 > >  drivers/hid/hid-core.c | 2 +-
 > >  include/linux/hid.h    | 2 ++
 > >  2 files changed, 3 insertions(+), 1 deletion(-)
 > > 
 > > diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
 > > index b348d0464314c..aaba7164a8c9a 100644
 > > --- a/drivers/hid/hid-core.c
 > > +++ b/drivers/hid/hid-core.c
 > > @@ -661,7 +661,7 @@ static int hid_parser_main(struct hid_parser *parser, struct hid_item *item)
 > >              item->tag <= HID_MAIN_ITEM_TAG_RESERVED_MAX)
 > >              hid_warn(parser->device, "reserved main item tag 0x%x\n", item->tag);
 > >          else
 > > -            hid_warn(parser->device, "unknown main item tag 0x%x\n", item->tag);
 > > +            hid_warn_ratelimited(parser->device, "unknown main item tag 0x%x\n", item->tag);
 > >          ret = 0;
 > 
 > While I agree in principle that we shouldn't be flooding dmesg in case the 
 > report descriptor is completely bogus, I think we should be more 
 > consistent then.
 > 
 > I am pretty sure syzkaller produce report descriptors that will emit flood 
 > of "reserved main item tag", but you don't seem to be addresing that case?

Thanks for the suggestion. Perhaps the shorter "reserved main item tag" didn't corrupt my system, 
so I didn't notice. I'll ratelimit it in v3.

Regards,
Li
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help