summaryrefslogtreecommitdiffstats
path: root/fs/bfs
diff options
context:
space:
mode:
authorOliver Neukum <oneukum@suse.com>2019-08-27 12:34:36 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-08-28 22:48:38 +0200
commit1426bd2c9f7e3126e2678e7469dca9fd9fc6dd3e (patch)
treec48d407e0d789e6022d0003c0312de7d08fe5960 /fs/bfs
parentusb: host: xhci: rcar: Fix typo in compatible string matching (diff)
downloadlinux-1426bd2c9f7e3126e2678e7469dca9fd9fc6dd3e.tar.xz
linux-1426bd2c9f7e3126e2678e7469dca9fd9fc6dd3e.zip
USB: cdc-wdm: fix race between write and disconnect due to flag abuse
In case of a disconnect an ongoing flush() has to be made fail. Nevertheless we cannot be sure that any pending URB has already finished, so although they will never succeed, they still must not be touched. The clean solution for this is to check for WDM_IN_USE and WDM_DISCONNECTED in flush(). There is no point in ever clearing WDM_IN_USE, as no further writes make sense. The issue is as old as the driver. Fixes: afba937e540c9 ("USB: CDC WDM driver") Reported-by: syzbot+d232cca6ec42c2edb3fc@syzkaller.appspotmail.com Signed-off-by: Oliver Neukum <oneukum@suse.com> Cc: stable <stable@vger.kernel.org> Link: https://lore.kernel.org/r/20190827103436.21143-1-oneukum@suse.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs/bfs')
0 files changed, 0 insertions, 0 deletions