usbip: vudc synchronize sysfs code paths
authorShuah Khan <skhan@linuxfoundation.org>
Tue, 30 Mar 2021 01:36:50 +0000 (19:36 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 5 Apr 2021 07:05:42 +0000 (09:05 +0200)
commitbd8b82042269a95db48074b8bb400678dbac1815
tree43af66f344afc0a2222eaad8cf7b1b99642e3f9b
parent9dbf34a834563dada91366c2ac266f32ff34641a
usbip: vudc synchronize sysfs code paths

Fuzzing uncovered race condition between sysfs code paths in usbip
drivers. Device connect/disconnect code paths initiated through
sysfs interface are prone to races if disconnect happens during
connect and vice versa.

Use sysfs_lock to protect sysfs paths in vudc.

Cc: stable@vger.kernel.org
Reported-and-tested-by: syzbot+a93fba6d384346a761e3@syzkaller.appspotmail.com
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Link: https://lore.kernel.org/r/caabcf3fc87bdae970509b5ff32d05bb7ce2fb15.1616807117.git.skhan@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/usbip/vudc_dev.c
drivers/usb/usbip/vudc_sysfs.c