Re: [PATCH] vhci_hcd: Always re-enable a USB Port after reset

From: Greg KH
Date: Wed Jul 21 2021 - 06:10:53 EST


On Wed, Jul 21, 2021 at 07:49:22PM +1000, Michael Broadfoot wrote:
> A (virtual) usb port can getting stuck in a disabled state on reset

How can that happen?

> Always re-enable a usb port regardless of if its addressed or not

Are you sure? What causes this?

And what do you mean by "not" here?

Please write full sentences.

>
> Signed-off-by: Michael Broadfoot <msbroadf@xxxxxxxxx>
> ---
> drivers/usb/usbip/vhci_hcd.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/drivers/usb/usbip/vhci_hcd.c b/drivers/usb/usbip/vhci_hcd.c
> index 4ba6bcdaa8e9..cea3781d04e6 100644
> --- a/drivers/usb/usbip/vhci_hcd.c
> +++ b/drivers/usb/usbip/vhci_hcd.c
> @@ -455,15 +455,12 @@ static int vhci_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue,
> vhci_hcd->port_status[rhport] &= ~(1 << USB_PORT_FEAT_RESET);
> vhci_hcd->re_timeout = 0;
>
> - if (vhci_hcd->vdev[rhport].ud.status ==
> - VDEV_ST_NOTASSIGNED) {
> usbip_dbg_vhci_rh(
> " enable rhport %d (status %u)\n",
> rhport,
> vhci_hcd->vdev[rhport].ud.status);
> vhci_hcd->port_status[rhport] |=
> USB_PORT_STAT_ENABLE;
> - }

Coding style is now all messed up, this change isn't ok as-is, sorry.

thanks,

greg k-h