Re: [PATCH v3 05/12] usb: otg-fsm: Fix hrtimer list corruption

From: Dmitry Osipenko
Date: Mon Jul 05 2021 - 21:15:46 EST


06.07.2021 03:57, Peter Chen пишет:
> On 21-07-05 01:54:26, Dmitry Osipenko wrote:
>> The HNP work can be re-scheduled while it's still in-fly. This results in
>> re-initialization of the busy work, resetting the hrtimer's list node of
>> the work and crashing kernel with null dereference within kernel/timer
>> once work's timer is expired. It's very easy to trigger this problem by
>> re-plugging USB cable quickly. Initialize HNP work only once to fix this
>> trouble.
>>
>> Cc: stable@xxxxxxxxxxxxxxx
>> Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx>
>
> Acked-by: Peter Chen <peter.chen@xxxxxxxxxx>
>
> It is better to append kernel dump if you have v4 patchset.

The stacktrace isn't very useful because it crashes within a hrtimer
code from a work thread, i.e. it doesn't point at usb at all. It
actually took me some effort to find where the bug was.