Search Linux Wireless

Re: [PATCH 02/10] wl12xx: AP-mode - fix race condition on sta connection

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

 



On Wed, 2011-01-26 at 21:04 +0100, Arik Nemtsov wrote:
> >> @@ -238,6 +254,9 @@ static int wl1271_prepare_tx_frame(struct
> wl1271 *wl, struct sk_buff *skb,
> >>       if (ret < 0)
> >>               return ret;
> >>
> >> +     if (wl->bss_type == BSS_TYPE_AP_BSS)
> >> +             wl1271_tx_ap_update_inconnection_sta(wl, skb);
> >> +
> >>       wl1271_tx_fill_hdr(wl, skb, extra, info);
> >
> > Isn't there any other place where you can put this? Doesn't it add
> too
> > much overhead if you do it for every TX frame?
> 
> At this stage the STA has not been officially added yet, so this is
> just a packet. In fact it won't be added unless authenticated. When
> the STA is added its too late. If we failed to mark it in-connection,
> sometimes the FW will disconnect it.
> 
> Performance wise - its just another "compare + jmp" statement
> basically (checking the packet header). Didn't see any effect on
> throughput. 

No, it's not just a cmp + jmp.  You actually call
wl1271_tx_ap_update_inconnection_sta() and there you dig out the header
and call ieee80211_is_auth(), so you're actually parsing the header of
every frame you transmit if you're an AP.  Isn't there a way to avoid
this only when necessary?

-- 
Cheers,
Luca.

--
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