RE: [PATCH 1/1] mwifiex: add tx info to skb when forming mgmt frame

From: Bing Zhao
Date: Mon Jul 01 2013 - 15:34:27 EST


Hi Harvey,

Thanks for your patch.

> From: Huawei Yang <harvey.huawei.yang@xxxxxxxxx>
>
> In function 'mwifiex_write_data_complete' it need tx info to find the mwifiex_private to updates
> statistics and wake up tx queues. Or we may trigger tx queues timeout when transmitting lots of mgmt
> frames burstly.

Please shorten the commit log to less than 68 characters per line.

>
> Signed-off-by: Huawei Yang <harvey.huawei.yang@xxxxxxxxx>
> ---
> drivers/net/wireless/mwifiex/cfg80211.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/net/wireless/mwifiex/cfg80211.c b/drivers/net/wireless/mwifiex/cfg80211.c
> index e42b266..e8655f9 100644
> --- a/drivers/net/wireless/mwifiex/cfg80211.c
> +++ b/drivers/net/wireless/mwifiex/cfg80211.c
> @@ -166,6 +166,10 @@ mwifiex_form_mgmt_frame(struct sk_buff *skb, const u8 *buf, size_t len)
> memcpy(skb_put(skb, len - sizeof(struct ieee80211_hdr_3addr)),
> buf + sizeof(struct ieee80211_hdr_3addr),
> len - sizeof(struct ieee80211_hdr_3addr));
> +
> + tx_info = MWIFIEX_SKB_TXCB(skb);
> + tx_info->bss_num = priv->bss_num;
> + tx_info->bss_type = priv->bss_type;

This code doesn't compile because both tx_info and priv are undefined in this function.
Perhaps you meant to add it in mwifiex_cfg80211_mgmt_tx() instead?

@@ -216,6 +216,10 @@ mwifiex_cfg80211_mgmt_tx(struct wiphy *wiphy, struct wirele
return -ENOMEM;
}

+ tx_info = MWIFIEX_SKB_TXCB(skb);
+ tx_info->bss_num = priv->bss_num;
+ tx_info->bss_type = priv->bss_type;
+
mwifiex_form_mgmt_frame(skb, buf, len);
mwifiex_queue_tx_pkt(priv, skb);

>
> skb->priority = LOW_PRIO_TID;
> do_gettimeofday(&tv);

Thanks,
Bing
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/