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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191204172042.GE3627415@kroah.com>
Date:   Wed, 4 Dec 2019 18:20:42 +0100
From:   Greg KH <gregkh@...uxfoundation.org>
To:     "Enrico Weigelt, metux IT consult" <info@...ux.net>
Cc:     linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org
Subject: Re: [PATCH] usb: make usb_interrupt_msg() a static inline

On Wed, Dec 04, 2019 at 03:30:35PM +0100, Enrico Weigelt, metux IT consult wrote:
> usb_interrupt_msg() effectively is just an alias for usb_bulk_msg(),
> no need for being an real function, thus converting it to an
> inline function.

Why?  What did you just save/help with here?

This actually made the code worse:

>  /**
> - * usb_interrupt_msg - Builds an interrupt urb, sends it off and waits for completion
> - * @usb_dev: pointer to the usb device to send the message to
> - * @pipe: endpoint "pipe" to send the message to
> - * @data: pointer to the data to send
> - * @len: length in bytes of the data to send
> - * @actual_length: pointer to a location to put the actual length transferred
> - *	in bytes
> - * @timeout: time in msecs to wait for the message to complete before
> - *	timing out (if 0 the wait is forever)
> - *
> - * Context: !in_interrupt ()
> - *
> - * This function sends a simple interrupt message to a specified endpoint and
> - * waits for the message to complete, or timeout.
> - *
> - * Don't use this function from within an interrupt context. If you need
> - * an asynchronous message, or need to send a message from within interrupt
> - * context, use usb_submit_urb() If a thread in your driver uses this call,
> - * make sure your disconnect() method can wait for it to complete. Since you
> - * don't have a handle on the URB used, you can't cancel the request.
> - *
> - * Return:
> - * If successful, 0. Otherwise a negative error number. The number of actual
> - * bytes transferred will be stored in the @actual_length parameter.
> - */
> -int usb_interrupt_msg(struct usb_device *usb_dev, unsigned int pipe,
> -		      void *data, int len, int *actual_length, int timeout)
> -{
> -	return usb_bulk_msg(usb_dev, pipe, data, len, actual_length, timeout);
> -}
> -EXPORT_SYMBOL_GPL(usb_interrupt_msg);

You now lost all of that wonderful documentation on how to use this
function, makeing the kernel harder to use instead of easier.

So this is a net-loss overall, ick, why???

greg k-h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ