[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Mon, 03 Apr 2017 21:11:25 -0500
From: "Gustavo A. R. Silva" <garsilva@...eddedor.com>
To: Alan Stern <stern@...land.harvard.edu>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Felipe Balbi <felipe.balbi@...ux.intel.com>,
Peter Chen <peter.chen@....com>,
Chunfeng Yun <chunfeng.yun@...iatek.com>,
Mathias Nyman <mathias.nyman@...ux.intel.com>,
linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org,
Peter Senna Tschudin <peter.senna@...il.com>
Subject: Re: [PATCH 2/2] usb: misc: refactor code
Hi Alan,
Quoting Alan Stern <stern@...land.harvard.edu>:
> On Mon, 3 Apr 2017, Gustavo A. R. Silva wrote:
>
>> Code refactoring to make the flow easier to follow.
>>
>> Cc: Alan Stern <stern@...loand.harvard.edu>
>> Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
>> Signed-off-by: Gustavo A. R. Silva <garsilva@...eddedor.com>
>> ---
>> drivers/usb/misc/usbtest.c | 67
>> +++++++++++++++++++++-------------------------
>> 1 file changed, 30 insertions(+), 37 deletions(-)
>>
>> diff --git a/drivers/usb/misc/usbtest.c b/drivers/usb/misc/usbtest.c
>> index 7bfb6b78..382491e 100644
>> --- a/drivers/usb/misc/usbtest.c
>> +++ b/drivers/usb/misc/usbtest.c
>> @@ -124,18 +124,32 @@ static struct usb_device
>> *testdev_to_usbdev(struct usbtest_dev *test)
>>
>>
>> /*-------------------------------------------------------------------------*/
>>
>> +static inline void endpoint_update(int edi,
>> + struct usb_host_endpoint **in,
>> + struct usb_host_endpoint **out,
>> + struct usb_host_endpoint *e)
>> +{
>> + if (edi) {
>> + if (!*in)
>> + *in = e;
>> + } else {
>> + if (!*out)
>> + *out = e;
>> + }
>> +}
>> +
>> static int
>> get_endpoints(struct usbtest_dev *dev, struct usb_interface *intf)
>> {
>> - int tmp;
>> - struct usb_host_interface *alt;
>> - struct usb_host_endpoint *in, *out;
>> - struct usb_host_endpoint *iso_in, *iso_out;
>> - struct usb_host_endpoint *int_in, *int_out;
>> - struct usb_device *udev;
>> + int tmp;
>> + struct usb_host_interface *alt;
>> + struct usb_host_endpoint *in, *out;
>> + struct usb_host_endpoint *iso_in, *iso_out;
>> + struct usb_host_endpoint *int_in, *int_out;
>> + struct usb_device *udev;
>
> What's the difference between these 6 lines you added and the 6 lines
> that were there originally?
>
Yeah, well, certainly none at all. This is what happened: I created a
local copy of my changes(this piece of code included) and fixed some
issues in a previous patch, then I did a git revert and moved my
changes back to the original file. During this process the tabs were
replaced with spaces in the original file, then I had to add the tabs
again and this was the resulting patch.
>> for (tmp = 0; tmp < intf->num_altsetting; tmp++) {
>> - unsigned ep;
>> + unsigned ep;
>
> And here?
>
Same as above.
>>
>> in = out = NULL;
>> iso_in = iso_out = NULL;
>> @@ -150,48 +164,27 @@ get_endpoints(struct usbtest_dev *dev, struct
>> usb_interface *intf)
>> * ignore other endpoints and altsettings.
>> */
>> for (ep = 0; ep < alt->desc.bNumEndpoints; ep++) {
>> - struct usb_host_endpoint *e;
>> + struct usb_host_endpoint *e;
>
> And here?
>
Same as above.
>> + int edi;
>>
>> e = alt->endpoint + ep;
>> + edi = usb_endpoint_dir_in(&e->desc);
>> +
>> switch (usb_endpoint_type(&e->desc)) {
>> case USB_ENDPOINT_XFER_BULK:
>> - break;
>> + endpoint_update(edi, &in, &out, e);
>> + continue;
>> case USB_ENDPOINT_XFER_INT:
>> if (dev->info->intr)
>> - goto try_intr;
>> + endpoint_update(edi, &int_in, &int_out, e);
>> continue;
>> case USB_ENDPOINT_XFER_ISOC:
>> if (dev->info->iso)
>> - goto try_iso;
>> - /* FALLTHROUGH */
>> + endpoint_update(edi, &iso_in, &iso_out, e);
>> + /* fall through */
>
> Why change the comment?
>
Oh, I based this change in the following comment to another patch I
sent some weeks ago:
https://lkml.org/lkml/2017/2/10/293
It is due to Coding Style.
> Alan Stern
>
>> default:
>> continue;
>> }
>> - if (usb_endpoint_dir_in(&e->desc)) {
>> - if (!in)
>> - in = e;
>> - } else {
>> - if (!out)
>> - out = e;
>> - }
>> - continue;
>> -try_intr:
>> - if (usb_endpoint_dir_in(&e->desc)) {
>> - if (!int_in)
>> - int_in = e;
>> - } else {
>> - if (!int_out)
>> - int_out = e;
>> - }
>> - continue;
>> -try_iso:
>> - if (usb_endpoint_dir_in(&e->desc)) {
>> - if (!iso_in)
>> - iso_in = e;
>> - } else {
>> - if (!iso_out)
>> - iso_out = e;
>> - }
>> }
>> if ((in && out) || iso_in || iso_out || int_in || int_out)
>> goto found;
>>
Thanks for your comments.
--
Gustavo A. R. Silva
Powered by blists - more mailing lists