On Mon, 9 Sep 2024, Dmitry Torokhov wrote: > i2c-hid uses 2 shared buffers: command and "raw" input buffer for > sending requests to peripherals and read data from peripherals when > executing variety of commands. Such commands include reading of HID > registers, requesting particular power mode, getting and setting > reports and so on. Because all such requests use the same 2 buffers > they should not execute simultaneously. > > Fix this by introducing "cmd_lock" mutex and acquire it whenever > we needs to access ihid->cmdbuf or idid->rawbuf. > > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> Thanks for the fix, Dmitry. Out of curiosity, did you find it by code inspection, or have you actually seen it happening for real, making the driver misbehave? Thanks, -- Jiri Kosina SUSE Labs