Re: [PATCH V2] HID: i2c-hid: fix race condition reading reports

From: Jiri Kosina
Date: Tue Nov 25 2014 - 09:26:50 EST


On Mon, 24 Nov 2014, Benjamin Tissoires wrote:

> > Current driver uses a common buffer for reading reports either
> > synchronously in i2c_hid_get_raw_report() and asynchronously in
> > the interrupt handler.
> > There is race condition if an interrupt arrives immediately after
> > the report is received in i2c_hid_get_raw_report(); the common
> > buffer is modified by the interrupt handler with the new report
> > and then i2c_hid_get_raw_report() proceed using wrong data.
> >
> > Fix it by using a separate buffers for synchronous reports.
> >
> > Signed-off-by: Jean-Baptiste Maneyrol <jmaneyrol@xxxxxxxxxxxxxx>
> > [Antonio Borneo: cleanup, rebase to v3.17, submit mainline]
> > Signed-off-by: Antonio Borneo <borneo.antonio@xxxxxxxxx>
> > Cc: stable@xxxxxxxxxxxxxxx
> > ---
> > V1 -> V2
> > rename the synchronous buffer as rawbuf (instead of the
> > asynchronous one)
>
> Sorry for the lag and thanks for resubmitting.
>
> This one is reviewed-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>

Applied, thanks.


--
Jiri Kosina
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/