Search Linux Wireless

Re: [RFC 1/2] wireless: add ieee80211_asmdu_to_8023s

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

 



On Thu, 2009-11-26 at 14:03 +0800, Zhu Yi wrote:
> Move the A-MSDU handling code from mac80211 to cfg80211 so that more
> drivers can use it. The new created function ieee80211_asmdu_to_8023s
> converts an A-MSDU frame to a list of 802.3 frames.
> 
> Signed-off-by: Zhu Yi <yi.zhu@xxxxxxxxx>
> ---
>  include/net/cfg80211.h |   12 +++++
>  net/mac80211/rx.c      |  107 ++++++++++-------------------------------------
>  net/wireless/util.c    |  105 +++++++++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 140 insertions(+), 84 deletions(-)
> 
> diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
> index 0884b9a..ad31b55 100644
> --- a/include/net/cfg80211.h
> +++ b/include/net/cfg80211.h
> @@ -1593,6 +1593,18 @@ int ieee80211_data_from_8023(struct sk_buff *skb, u8 *addr,
>  			     enum nl80211_iftype iftype, u8 *bssid, bool qos);
>  
>  /**
> + * ieee80211_asmdu_to_8023s - decode an IEEE 802.11n A-MSDU frame
                 ^ typo

> +	skb->dev = dev;
> +	skb_queue_head_init(&frame_list);

^ use __ versions please, no need for locking since it's on stack
 
> +	dev->stats.rx_packets++;
> +	dev->stats.rx_bytes += skb->len;

Shouldn't rx_packets be per sub-frame?

> +	while (!skb_queue_empty(&frame_list)) {
> +		rx->skb = skb_dequeue(&frame_list);

__skb_dequeue
 
> +/**
> + * ieee80211_asmdu_to_8023s - decode an IEEE 802.11n A-MSDU frame
                 ^ copy/paste :)

Why do you have the kernel-doc twice anyway?


> +		skb_queue_tail(list, frame);

__

> + purge:
> +	skb_queue_purge(list);

__ (does that exist? guess it must?)

johannes

Attachment: signature.asc
Description: This is a digitally signed message part


[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