Re: [RFC][PATCH] Cleanup misunderstandings regarding usb_anchor_urb() and URB refs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 13 Jun 2012, [windows-1252] Hans Petter Selasky wrote:

> Hi,
> 
>
> 
> It appears that several USB drivers are not dropping the additional ref done by usb_anchor_urb() when URBs are anchored temporarily as a result of the device being suspended or temporarily offline.
> 
>
> 
> I've done a quick grep and tried to fix the issues I could find. Unfortunately I cannot test all the hardware which this change affects. Linux USB developers of:
> 
>
> 
> diff --git a/drivers/net/can/usb/ems_usb.c b/drivers/net/can/usb/ems_usb.c
> diff --git a/drivers/net/usb/usbnet.c b/drivers/net/usb/usbnet.c
> diff --git a/drivers/net/wireless/ath/carl9170/usb.c b/drivers/net/wireless/ath/carl9170/usb.c
> diff --git a/drivers/usb/core/urb.c b/drivers/usb/core/urb.c
> diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
> diff --git a/drivers/usb/serial/sierra.c b/drivers/usb/serial/sierra.c
> diff --git a/drivers/usb/serial/usb_wwan.c b/drivers/usb/serial/usb_wwan.c
>
> 
> Please test the following and also attached patch:

The documentation you added to urb.c looks good.

I can't test the new changes.  But:

> --- a/drivers/net/wireless/ath/carl9170/usb.c
> +++ b/drivers/net/wireless/ath/carl9170/usb.c
> @@ -153,6 +153,10 @@ static void carl9170_usb_submit_data_urb(struct ar9170 *ar)
> ��� ��� �usb_anchor_urb(urb, &ar->tx_err);
> ��� �}
>
> +�� �/* release additonal ref done by previous anchor */
> +�� �usb_free_urb(urb);
> +
> +�� �/* release additonal ref done by current anchor */
> ��� �usb_free_urb(urb);

Here and in lots of other places, you misspelled "additional".

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux