diff --git a/net/9p/trans_usbg.c b/net/9p/trans_usbg.c index 3304986cf136..a214d0b6d875 100644 --- a/net/9p/trans_usbg.c +++ b/net/9p/trans_usbg.c @@ -765,6 +765,10 @@ static void usb9pfs_disable(struct usb_function *f) usb9pfs->client->status = Disconnected; spin_unlock_irqrestore(&usb9pfs->lock, flags); usb9pfs_clear_tx(usb9pfs); + + if (usb9pfs->in_ep->enabled) + disable_usb9pfs(usb9pfs); + reinit_completion(&usb9pfs->send); }