On Tue, May 11, 2021 at 10:11:41AM +0200, Oliver Neukum wrote: > Am Dienstag, den 11.05.2021, 14:48 +0900 schrieb Tetsuo Handa: > > On 2021/05/11 12:31, qiang.zhang@xxxxxxxxxxxxx wrote: > > > This warning is generated because when kfree wdm_device, > > > it is found that there is still an active work in workqueue, > > > This phenomenon may be due to the following reasons. > > > when the devices disconnect, although the work was cancelled, > > > but the schedule_work still may be called, therefore, before > > > scheduling work, we need to detect the status of the device. > > > > > > Reported-by: syzbot < > > > syzbot+7da71853830ac3289474@xxxxxxxxxxxxxxxxxxxxxxxxx> > > > Signed-off-by: Zqiang <qiang.zhang@xxxxxxxxxxxxx> > > > --- > > > drivers/usb/class/cdc-wdm.c | 13 ++++++++----- > > > 1 file changed, 8 insertions(+), 5 deletions(-) > > > > > > > Oliver Neukum is aware of this problem, and is considering poisoning > > approach than > > checking WDM_SUSPENDING/WDM_RESETTING/WDM_DISCONNECTING approach. I > > guess we could > > replace three test_bit() tests into OR'ed-bits test (something like > > test_bits()) ? > > > > > > https://lkml.kernel.org/r/2db36d52015b644cc1891fcffc87ef09c2b728b7.camel@xxxxxxxx > > > > Oliver, how do we want to fix this problem? > > Hi, > > I was under the assumption that Greg had already merged the fix > 18abf874367456540846319574864e6ff32752e2 > Am I wrong? That is in my usb-linus branch and is not in Linus's tree yet. Give it a week or so to get there... thanks, greg k-h