From: Kalle Valo <kvalo@qca.qualcomm.com>
To: Joe Perches <joe@perches.com>
Cc: <linux-wireless@vger.kernel.org>, <devel@linuxdriverproject.org>,
<gregkh@suse.de>
Subject: Re: [PATCH 17/24] ath6kl: add main.c
Date: Wed, 13 Jul 2011 11:18:16 +0300 [thread overview]
Message-ID: <4E1D54C8.8020304@qca.qualcomm.com> (raw)
In-Reply-To: <1310531456.1143.30.camel@Joe-Laptop>
On 07/13/2011 07:30 AM, Joe Perches wrote:
> On Wed, 2011-07-13 at 04:35 +0300, Kalle Valo wrote:
>> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
>> ---
>> drivers/net/wireless/ath/ath6kl/main.c | 1337 ++++++++++++++++++++++++++++++++
>
>> +static void ath6kl_add_new_sta(struct ath6kl *ar, u8 *mac, u16 aid, u8 *wpaie,
>> + u8 ielen, u8 keymgmt, u8 ucipher, u8 auth)
>> +{
>> + u8 free_slot;
>> +
>> + free_slot = aid - 1;
>> + memcpy(ar->sta_list[free_slot].mac, mac, ETH_ALEN);
>> + memcpy(ar->sta_list[free_slot].wpa_ie, wpaie, ielen);
>
>
> Many versions of gcc do not optimize these repeated dereferences.
> It's better to use a temporary local.
>
> struct ath6kl_sta *sta = &ar->sta_list[free_slot];
>
> memcpy(sta->mac, mac, ETH_ALEN);
> memcpy(sta->wpa_ie, wpaie, ielen);
>
> etc..
Fixed.
>> +static void ath6kl_sta_cleanup(struct ath6kl *ar, u8 i)
>> +{
>> + /* empty the queued pkts in the PS queue if any */
>> + spin_lock_bh(&ar->sta_list[i].psq_lock);
>> + skb_queue_purge(&ar->sta_list[i].psq);
>> + spin_unlock_bh(&ar->sta_list[i].psq_lock);
>> +
>> + memset(&ar->ap_stats.sta[ar->sta_list[i].aid - 1], 0,
>
> here too.
Fixed.
>> +void ath6kl_tgt_stats_event(struct ath6kl *ar, u8 *ptr, u32 len)
>> +{
>> + struct wmi_ap_mode_stat *p = (struct wmi_ap_mode_stat *) ptr;
>> + struct wmi_ap_mode_stat *ap = &ar->ap_stats;
>> + u8 ac;
>> +
>> + if (ar->nw_type == AP_NETWORK) {
>> + if (len < sizeof(*p))
>> + return;
>> +
>> + for (ac = 0; ac < AP_MAX_NUM_STA; ac++) {
>> + ath6kl_add_le32(&ap->sta[ac].tx_bytes,
>> + p->sta[ac].tx_bytes);
>
> maybe better here to use temporaries too.
>
> struct ath6kl_sta *st_ap = &ap->sta[ac];
> struct ath6kl_sta *st_p = &p->sta[ac];
>
>> + ath6kl_add_le32(&ap->sta[ac].tx_pkts,
>> + p->sta[ac].tx_pkts);
>> + ath6kl_add_le32(&ap->sta[ac].tx_error,
>> + p->sta[ac].tx_error);
>
> ath6kl_add_le32(st_ap->tx_pkts, st_p->tx_pkts);
> ath6kl_add_le32(st_ap->tx_error, st_p->tx_error);
>
> etc.
Fixed.
Kalle
next prev parent reply other threads:[~2011-07-13 8:18 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-13 1:32 [PATCH 00/24] ath6kl cleaned up driver Kalle Valo
2011-07-13 1:33 ` [PATCH 01/24] ath6kl: add bmi.c Kalle Valo
2011-07-13 4:28 ` Joe Perches
2011-07-13 7:08 ` Kalle Valo
2011-07-13 12:19 ` Joe Perches
2011-07-14 6:46 ` Kalle Valo
2011-07-14 7:33 ` Joe Perches
2011-07-14 7:38 ` Kalle Valo
2011-07-13 1:33 ` [PATCH 02/24] ath6kl: add bmi.h Kalle Valo
2011-07-13 1:33 ` [PATCH 03/24] ath6kl: add cfg80211.c Kalle Valo
2011-07-13 4:29 ` Joe Perches
2011-07-13 7:22 ` Kalle Valo
2011-07-13 1:33 ` [PATCH 04/24] ath6kl: add cfg80211.h Kalle Valo
2011-07-13 1:33 ` [PATCH 05/24] ath6kl: add common.h Kalle Valo
2011-07-13 1:33 ` [PATCH 06/24] ath6kl: add core.h Kalle Valo
2011-07-13 4:29 ` Joe Perches
2011-07-13 7:41 ` Kalle Valo
2011-07-13 1:34 ` [PATCH 07/24] ath6kl: add debug.c Kalle Valo
2011-07-13 4:29 ` Joe Perches
2011-07-13 1:34 ` [PATCH 08/24] ath6kl: add debug.h Kalle Valo
2011-07-13 1:34 ` [PATCH 09/24] ath6kl: add hif-ops.h Kalle Valo
2011-07-13 1:34 ` [PATCH 10/24] ath6kl: add hif.h Kalle Valo
2011-07-13 1:34 ` [PATCH 11/24] ath6kl: add htc.c Kalle Valo
2011-07-13 4:30 ` Joe Perches
2011-07-13 7:46 ` Kalle Valo
2011-07-13 12:33 ` Joe Perches
2011-07-13 13:38 ` Vasanthakumar Thiagarajan
2011-07-13 1:34 ` [PATCH 12/24] ath6kl: add htc.h Kalle Valo
2011-07-13 1:35 ` [PATCH 13/24] ath6kl: add htc_hif.c Kalle Valo
2011-07-13 1:35 ` [PATCH 14/24] ath6kl: add htc_hif.h Kalle Valo
2011-07-13 1:35 ` [PATCH 15/24] ath6kl: add ieee80211.h Kalle Valo
2011-07-13 7:29 ` Johannes Berg
2011-07-13 8:25 ` Kalle Valo
2011-07-13 1:35 ` [PATCH 16/24] ath6kl: add init.c Kalle Valo
2011-07-13 1:35 ` [PATCH 17/24] ath6kl: add main.c Kalle Valo
2011-07-13 4:30 ` Joe Perches
2011-07-13 8:18 ` Kalle Valo [this message]
2011-07-13 1:35 ` [PATCH 18/24] ath6kl: add node.c Kalle Valo
2011-07-13 1:36 ` [PATCH 19/24] ath6kl: add sdio.c Kalle Valo
2011-07-13 1:36 ` [PATCH 20/24] ath6kl: add target.h Kalle Valo
2011-07-13 1:36 ` [PATCH 21/24] ath6kl: add txrx.c Kalle Valo
2011-07-13 4:31 ` Joe Perches
2011-07-13 8:21 ` Kalle Valo
2011-07-13 8:23 ` Kalle Valo
2011-07-13 1:36 ` [PATCH 22/24] ath6kl: add wmi.c Kalle Valo
2011-07-13 1:36 ` [PATCH 23/24] ath6kl: add wmi.h Kalle Valo
2011-07-13 1:37 ` [PATCH 24/24] ath6kl: add Kconfig and Makefile Kalle Valo
2011-07-13 8:34 ` [PATCH 00/24] ath6kl cleaned up driver Kalle Valo
2011-07-13 9:22 ` Dan Carpenter
2011-07-13 9:28 ` Johannes Berg
2011-07-13 9:34 ` Dan Carpenter
2011-07-13 9:41 ` Johannes Berg
2011-07-13 9:33 ` Dan Carpenter
2011-07-13 10:04 ` Vasanthakumar Thiagarajan
2011-07-14 10:06 ` Dan Carpenter
2011-07-14 10:35 ` Kalle Valo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E1D54C8.8020304@qca.qualcomm.com \
--to=kvalo@qca.qualcomm.com \
--cc=devel@linuxdriverproject.org \
--cc=gregkh@suse.de \
--cc=joe@perches.com \
--cc=linux-wireless@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).