Search Linux Wireless

Re: ath6kl: pass only unicast frames for aggregation

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

 



Hi Dan,

On 10/05/2011 08:59 AM, Dan Carpenter wrote:
> Smatch complains that 5694f962964 "ath6kl: pass only unicast frames
> for aggregation"
> 
> drivers/net/wireless/ath/ath6kl/txrx.c
>   1241                          if (conn && ar->intra_bss) {
>   1242                                  skb1 = skb;
>   1243                                  skb = NULL;
>                                         ^^^^^^^^^^^
>   1244                          } else if (conn && !ar->intra_bss) {
>   1245                                  dev_kfree_skb(skb);
>   1246                                  skb = NULL;
>                                         ^^^^^^^^^^^
>   1247                          }
>   1248                  }
>   1249                  if (skb1)
>   1250                          ath6kl_data_tx(skb1, ar->net_dev);
>   1251          }
>   1252  
>   1253          datap = (struct ethhdr *) skb->data;
>                                           ^^^^^^^^^
> skb can be NULL.

Good catch, thanks! I should run smatch more, it's a really nice tool.

I think a fix like this would be appropriate. Jouni, what do you think?

(I have just copypasted the patch to thunderbird, I'm sure it's white
space damaged. Sorry about that.)

Kalle

--- a/drivers/net/wireless/ath/ath6kl/txrx.c
+++ b/drivers/net/wireless/ath/ath6kl/txrx.c
@@ -1247,6 +1247,10 @@ void ath6kl_rx(struct htc_target *target, struct
htc_packet *packet)
                }
                if (skb1)
                        ath6kl_data_tx(skb1, ar->net_dev);
+
+               if (skb == NULL)
+                       /* nothing to deliver up the stack */
+                       return;
        }

        datap = (struct ethhdr *) skb->data;
--
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