Search Linux Wireless

Re: at76_usb development

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

 



Am Wednesday 04 February 2009 16:48:11 schrieb Kalle Valo:
> > AFAIK you should be sending patches to Greg against the version in
> > drivers/staging.  Kalle may want to be copied.
> 
> Yes, please cc also me. I try to keep up-to-date what's happening with
> at76-usb so that the same fixes will be fixed in at76c50x-usb as well.

Here is what I found with at76-usb as it is in the current kernel:

 static int at76_wait_completion(struct at76_priv *priv, int cmd)
 {
        int status = 0;

        unsigned long timeout = jiffies + CMD_COMPLETION_TIMEOUT;

        do {

This can go wrong in a preemptible kernel. You have no guarantee the full
timeout is granted.

@@ -1631,7 +1633,7 @@ static void at76_rx_tasklet(unsigned long param)
        buf = (struct at76_rx_buffer *)priv->rx_skb->data;

        if (urb->status != 0) {
-               if (urb->status != -ENOENT && urb->status != -ECONNRESET)
+               if (urb->status != -ENOENT && urb->status != -ECONNRESET && urb->status != -ESHUTDOWN)

Should also check for ESHUTDOWN, also in at76_mac80211_tx_callback()

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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux