lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 11 Aug 2021 12:30:51 +1000
From:   Michael <msbroadf@...il.com>
To:     Shuah Khan <skhan@...uxfoundation.org>
Cc:     valentina.manea.m@...il.com, shuah@...nel.org,
        gregkh@...uxfoundation.org, linux-usb@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] vhci_hcd: USB port can get stuck in the disabled state

On Wed, 11 Aug 2021 at 03:46, Shuah Khan <skhan@...uxfoundation.org> wrote:
>
> On 8/2/21 7:00 PM, Michael wrote:
> > On Tue, 3 Aug 2021 at 09:14, Shuah Khan <skhan@...uxfoundation.org> wrote:
> >>
> >> On 7/30/21 5:52 PM, Michael wrote:
> >>> Yes i think just adding the VDEV_ST_USED check in addition to the
> >>> VDEV_ST_NOT_ASSIGNED state is fine and would fix the issue.
> >>>
> >>
> >> Can you please confirm if this works?
> >>
> >>> After many years of writing virtualhere (a similar system to usb/ip
> >>> but cross-platform and different non-kernel way of doing it server
> >>> side) I've seen many drivers that issue reset at any time. Loading
> >>> firmware is usually the reason.  Also sometimes switching
> >>> configurations requires a reset also, for example some gaming wheels
> >>> do this. I don't think you should make this VDEV_ST_USED check
> >>> specific to Wifi devices, as a lot of devices don't follow too closely
> >>> to the USB protocol to begin with from my experience. They primarily
> >>> base their USB interactions assuming the windows platform and its
> >>> quirks.
> >>>
> >>
> >> When sending responses to Linux kernel mailing lists, please use bottom post.
> >> This check will be used for all drivers. We don't add checks for specific cases
> >> in the code.
> >>
> >> thanks,
> >> -- Shuah
> >>
> >
> > Yes it works with that change.
> >
>
> Would you like to send me a patch for this?
>
> thanks,
> -- Shuah

usbip: Allow port reset to occur when the port is also in the ST_USED state

 Signed-off-by: Michael <mail@...tualhere.com>
---
 drivers/usb/usbip/vhci_hcd.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/usbip/vhci_hcd.c b/drivers/usb/usbip/vhci_hcd.c
index 4ba6bcdaa8e9..300131ae5897 100644
--- a/drivers/usb/usbip/vhci_hcd.c
+++ b/drivers/usb/usbip/vhci_hcd.c
@@ -456,7 +456,9 @@ static int vhci_hub_control(struct usb_hcd *hcd,
u16 typeReq, u16 wValue,
                        vhci_hcd->re_timeout = 0;

                        if (vhci_hcd->vdev[rhport].ud.status ==
-                           VDEV_ST_NOTASSIGNED) {
+                           VDEV_ST_NOTASSIGNED ||
+                               vhci_hcd->vdev[rhport].ud.status ==
+                               VDEV_ST_USED) {
                                usbip_dbg_vhci_rh(
                                        " enable rhport %d (status %u)\n",
                                        rhport,
--
2.30.2

Powered by blists - more mailing lists