On 2020/08/12 20:19, Oliver Neukum wrote: > Am Mittwoch, den 12.08.2020, 19:09 +0900 schrieb Tetsuo Handa: >> On 2020/08/12 17:02, Oliver Neukum wrote: >>> Am Mittwoch, den 12.08.2020, 08:26 +0900 schrieb Tetsuo Handa: >>>> syzbot is reporting hung task at wdm_flush() [1], for there is a circular >>>> dependency that wdm_flush() from flip_close() for /dev/cdc-wdm0 forever >>>> waits for /dev/raw-gadget to be closed while close() for /dev/raw-gadget >>>> cannot be called unless close() for /dev/cdc-wdm0 completes. >>>> >>>> It turned out that wdm_flush() is broken in multiple aspects. >>> >>> Sorry, >>> >>> this seems to be a miscommunication. I was under the impression that >>> you were testing patches. I will push them upstream. You >>> cannot just remove flush() without impairing error handling. >> >> Then, will you check >> >> https://lore.kernel.org/linux-usb/254939d4-f3a1-8c7e-94e5-9862c02774fa@xxxxxxxxxxxxxxxxxxx/ >> >> and >> >> https://lore.kernel.org/linux-usb/c85331fc-874c-6e46-a77f-0ef1dc075308@xxxxxxxxxxxxxxxxxxx/ >> >> before pushing upstream? > > Hi, > > sure, yes, thank you for the pointers. I shall post an RFC in a few > minutes. Oliver, are you there? Did you get my comment at https://lkml.kernel.org/r/ee0af733-903f-8e8f-8027-b5490a37032f@xxxxxxxxxxxxxxxxxxx ? I think that we cannot avoid impairing error handling unless we change wdm_write() to wait for response with some timeout.