2010-03-26 10:51:20

by Valentin Longchamp

[permalink] [raw]
Subject: [PATCH] setup correct int pipe type in ar9170_usb_exec_cmd

An int urb is constructed but we fill it in with a bulk pipe type.

Commit f661c6f8c67bd55e93348f160d590ff9edf08904 implemented a pipe type
check when CONFIG_USB_DEBUG is enabled. The check failed for all the ar9170
usb transfers and the driver could not configure the wifi dongle.

This went unnoticed until now because most people don't have
CONFIG_USB_DEBUG enabled.

Signed-off-by: Valentin Longchamp <[email protected]>
---
drivers/net/wireless/ath/ar9170/usb.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/ath/ar9170/usb.c b/drivers/net/wireless/ath/ar9170/usb.c
index 4e30197..dbde2de 100644
--- a/drivers/net/wireless/ath/ar9170/usb.c
+++ b/drivers/net/wireless/ath/ar9170/usb.c
@@ -416,7 +416,7 @@ static int ar9170_usb_exec_cmd(struct ar9170 *ar, enum ar9170_cmd cmd,
spin_unlock_irqrestore(&aru->common.cmdlock, flags);

usb_fill_int_urb(urb, aru->udev,
- usb_sndbulkpipe(aru->udev, AR9170_EP_CMD),
+ usb_sndintpipe(aru->udev, AR9170_EP_CMD),
aru->common.cmdbuf, plen + 4,
ar9170_usb_tx_urb_complete, NULL, 1);

--
1.6.3.3



2010-03-27 12:22:15

by Christian Lamparter

[permalink] [raw]
Subject: Re: [PATCH] setup correct int pipe type in ar9170_usb_exec_cmd

On Friday 26 March 2010 11:44:33 Valentin Longchamp wrote:
> An int urb is constructed but we fill it in with a bulk pipe type.
>
> Commit f661c6f8c67bd55e93348f160d590ff9edf08904 implemented a pipe type
> check when CONFIG_USB_DEBUG is enabled. The check failed for all the ar9170
> usb transfers and the driver could not configure the wifi dongle.
>
> This went unnoticed until now because most people don't have
> CONFIG_USB_DEBUG enabled.
>
> Signed-off-by: Valentin Longchamp <[email protected]>
> ---
Cc: Stable <[email protected]>
Acked-by: Christian Lamparter <[email protected]>

2010-03-26 20:57:05

by Pavel Roskin

[permalink] [raw]
Subject: Re: [PATCH] setup correct int pipe type in ar9170_usb_exec_cmd

On Fri, 2010-03-26 at 11:44 +0100, Valentin Longchamp wrote:
> An int urb is constructed but we fill it in with a bulk pipe type.
>
> Commit f661c6f8c67bd55e93348f160d590ff9edf08904 implemented a pipe type
> check when CONFIG_USB_DEBUG is enabled. The check failed for all the ar9170
> usb transfers and the driver could not configure the wifi dongle.
>
> This went unnoticed until now because most people don't have
> CONFIG_USB_DEBUG enabled.

Actually, if the code was broken and nobody noticed, do we need it at
all? ar9170_usb_tx_urb_complete() is an empty function.

Suppose we need it, then maybe we could put some debug code there? I
think that function has a poor name, it should be something with "cmd",
like ar9170_usb_tx_urb_complete_cmd().

By the way, I think such fixes belong to stable.

--
Regards,
Pavel Roskin