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] [day] [month] [year] [list]
Date:   Thu, 25 Aug 2022 10:19:26 -0400
From:   Alan Stern <stern@...land.harvard.edu>
To:     Khalid Masum <khalid.masum.92@...il.com>
Cc:     linux-kernel@...r.kernel.org,
        linux-kernel-mentees@...ts.linuxfoundation.org,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Kishon Vijay Abraham I <kishon@...com>,
        Sergey Shtylyov <s.shtylyov@....ru>,
        Matthias Kaehlcke <mka@...omium.org>,
        Weitao Wang <WeitaoWang-oc@...oxin.com>,
        Arnd Bergmann <arnd@...db.de>, linux-usb@...r.kernel.org
Subject: Re: [PATCH v2] usb: host: Initiate urb ep with udev ep0

On Thu, Aug 25, 2022 at 02:31:07AM +0600, Khalid Masum wrote:
> Currently we look up for endpoint in a table and initate urb endpoint
> with it. This is unnecessary because the lookup will always result in
> endpoint 0.
> 
> Suggested-by: Alan Stern <stern@...land.harvard.edu>
> Signed-off-by: Khalid Masum <khalid.masum.92@...il.com>
> ---
> Changes since v1:
>  - Remove endpoint lookup and NULL check
>  - Remove unnecessary variable *ep
>  - Initiate urb ep with udev ep0
>  - Update commit message
>  - v1 Link: https://lore.kernel.org/lkml/20220824130702.10912-1-khalid.masum.92@gmail.com/ 
> 
>  drivers/usb/core/hcd.c | 9 +--------
>  1 file changed, 1 insertion(+), 8 deletions(-)
> 
> diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
> index 94b305bbd621..05f30ae5570b 100644
> --- a/drivers/usb/core/hcd.c
> +++ b/drivers/usb/core/hcd.c
> @@ -2158,21 +2158,14 @@ static struct urb *request_single_step_set_feature_urb(
>  {
>  	struct urb *urb;
>  	struct usb_hcd *hcd = bus_to_hcd(udev->bus);
> -	struct usb_host_endpoint *ep;
>  
>  	urb = usb_alloc_urb(0, GFP_KERNEL);
>  	if (!urb)
>  		return NULL;
>  
>  	urb->pipe = usb_rcvctrlpipe(udev, 0);
> -	ep = (usb_pipein(urb->pipe) ? udev->ep_in : udev->ep_out)
> -				[usb_pipeendpoint(urb->pipe)];
> -	if (!ep) {
> -		usb_free_urb(urb);
> -		return NULL;
> -	}
>  
> -	urb->ep = ep;
> +	urb->ep = &udev->ep0;
>  	urb->dev = udev;
>  	urb->setup_packet = (void *)dr;
>  	urb->transfer_buffer = buf;

Acked-by: Alan Stern <stern@...land.harvard.edu>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ