[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YBGBg5ofIzUHxoYn@hovoldconsulting.com>
Date: Wed, 27 Jan 2021 16:06:43 +0100
From: Johan Hovold <johan@...nel.org>
To: Anant Thazhemadam <anant.thazhemadam@...il.com>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Lee Jones <lee.jones@...aro.org>, linux-usb@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 08/12] usb: misc: ldusb: update to use
usb_control_msg_send()
On Wed, Jan 27, 2021 at 12:03:59AM +0530, Anant Thazhemadam wrote:
> The newer usb_control_msg_{send|recv}() API are an improvement on the
> existing usb_control_msg() as it ensures that a short read/write is treated
> as an error, data can be used off the stack, and raw usb pipes need not be
> created in the calling functions.
> For this reason, the instance of usb_control_msg_send() has been replaced
> with usb_control_msg_send() appropriately.
>
> Signed-off-by: Anant Thazhemadam <anant.thazhemadam@...il.com>
> ---
> drivers/usb/misc/ldusb.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c
> index 670e4d91e9ca..259ead4edecb 100644
> --- a/drivers/usb/misc/ldusb.c
> +++ b/drivers/usb/misc/ldusb.c
> @@ -573,15 +573,13 @@ static ssize_t ld_usb_write(struct file *file, const char __user *buffer,
> }
>
> if (dev->interrupt_out_endpoint == NULL) {
> - /* try HID_REQ_SET_REPORT=9 on control_endpoint instead of interrupt_out_endpoint */
> - retval = usb_control_msg(interface_to_usbdev(dev->intf),
> - usb_sndctrlpipe(interface_to_usbdev(dev->intf), 0),
> - 9,
> + retval = usb_control_msg_send(interface_to_usbdev(dev->intf),
> + 0, 9,
> USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_DIR_OUT,
> 1 << 8, 0,
> dev->interrupt_out_buffer,
> bytes_to_write,
> - USB_CTRL_SET_TIMEOUT);
> + USB_CTRL_SET_TIMEOUT, GFP_KERNEL);
> if (retval < 0)
> dev_err(&dev->intf->dev,
> "Couldn't submit HID_REQ_SET_REPORT %d\n",
This would also only introduce a redundant allocation and memcpy() as
the buffer is already DMA-able and used for that purpose in other places
as well.
I suggest dropping this one too.
Johan
Powered by blists - more mailing lists