All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Kazior <michal.kazior@tieto.com>
To: ath10k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org, Michal Kazior <michal.kazior@tieto.com>
Subject: [PATCH v2 4/9] ath10k: remove is_offchan
Date: Tue, 10 Nov 2015 14:10:50 +0100	[thread overview]
Message-ID: <1447161055-2283-5-git-send-email-michal.kazior@tieto.com> (raw)
In-Reply-To: <1447161055-2283-1-git-send-email-michal.kazior@tieto.com>

It was wasteful to keep it in the struct.

Signed-off-by: Michal Kazior <michal.kazior@tieto.com>
---
 drivers/net/wireless/ath/ath10k/core.h | 1 -
 drivers/net/wireless/ath/ath10k/mac.c  | 4 +---
 drivers/net/wireless/ath/ath10k/mac.h  | 1 +
 drivers/net/wireless/ath/ath10k/txrx.c | 7 ++++++-
 4 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h
index 2f48772418ec..344849dd93c8 100644
--- a/drivers/net/wireless/ath/ath10k/core.h
+++ b/drivers/net/wireless/ath/ath10k/core.h
@@ -89,7 +89,6 @@ struct ath10k_skb_cb {
 	struct {
 		u8 tid;
 		u16 freq;
-		bool is_offchan;
 		bool nohwcrypt;
 		struct ath10k_htt_txbuf *txbuf;
 		u32 txbuf_paddr;
diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index dd4770ec7ecc..f7e4fba63b44 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -3297,7 +3297,7 @@ static void ath10k_tx_h_add_p2p_noa_ie(struct ath10k *ar,
 	}
 }
 
-static bool ath10k_mac_need_offchan_tx_work(struct ath10k *ar)
+bool ath10k_mac_need_offchan_tx_work(struct ath10k *ar)
 {
 	/* FIXME: Not really sure since when the behaviour changed. At some
 	 * point new firmware stopped requiring creation of peer entries for
@@ -3679,7 +3679,6 @@ static void ath10k_tx(struct ieee80211_hw *hw,
 
 	txmode = ath10k_mac_tx_h_get_txmode(ar, vif, sta, skb);
 
-	ATH10K_SKB_CB(skb)->htt.is_offchan = false;
 	ATH10K_SKB_CB(skb)->htt.freq = 0;
 	ATH10K_SKB_CB(skb)->htt.tid = ath10k_tx_h_get_tid(hdr);
 	ATH10K_SKB_CB(skb)->htt.nohwcrypt = !ath10k_tx_h_use_hwcrypto(vif, skb);
@@ -3711,7 +3710,6 @@ static void ath10k_tx(struct ieee80211_hw *hw,
 
 		if (ath10k_mac_need_offchan_tx_work(ar)) {
 			ATH10K_SKB_CB(skb)->htt.freq = 0;
-			ATH10K_SKB_CB(skb)->htt.is_offchan = true;
 
 			ath10k_dbg(ar, ATH10K_DBG_MAC, "queued offchannel skb %p\n",
 				   skb);
diff --git a/drivers/net/wireless/ath/ath10k/mac.h b/drivers/net/wireless/ath/ath10k/mac.h
index e3cefe4c7cfd..ff09d6986fae 100644
--- a/drivers/net/wireless/ath/ath10k/mac.h
+++ b/drivers/net/wireless/ath/ath10k/mac.h
@@ -58,6 +58,7 @@ bool ath10k_mac_is_peer_wep_key_set(struct ath10k *ar, const u8 *addr,
 				    u8 keyidx);
 int ath10k_mac_vif_chan(struct ieee80211_vif *vif,
 			struct cfg80211_chan_def *def);
+bool ath10k_mac_need_offchan_tx_work(struct ath10k *ar);
 
 void ath10k_mac_handle_beacon(struct ath10k *ar, struct sk_buff *skb);
 void ath10k_mac_handle_beacon_miss(struct ath10k *ar, u32 vdev_id);
diff --git a/drivers/net/wireless/ath/ath10k/txrx.c b/drivers/net/wireless/ath/ath10k/txrx.c
index 6d1105ab4592..655947bef6cc 100644
--- a/drivers/net/wireless/ath/ath10k/txrx.c
+++ b/drivers/net/wireless/ath/ath10k/txrx.c
@@ -23,7 +23,12 @@
 
 static void ath10k_report_offchan_tx(struct ath10k *ar, struct sk_buff *skb)
 {
-	if (!ATH10K_SKB_CB(skb)->htt.is_offchan)
+	struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
+
+	if (likely(!(info->flags & IEEE80211_TX_CTL_TX_OFFCHAN)))
+		return;
+
+	if (!ath10k_mac_need_offchan_tx_work(ar))
 		return;
 
 	/* If the original wait_for_completion() timed out before
-- 
2.1.4


WARNING: multiple messages have this Message-ID (diff)
From: Michal Kazior <michal.kazior@tieto.com>
To: ath10k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org, Michal Kazior <michal.kazior@tieto.com>
Subject: [PATCH v2 4/9] ath10k: remove is_offchan
Date: Tue, 10 Nov 2015 14:10:50 +0100	[thread overview]
Message-ID: <1447161055-2283-5-git-send-email-michal.kazior@tieto.com> (raw)
In-Reply-To: <1447161055-2283-1-git-send-email-michal.kazior@tieto.com>

It was wasteful to keep it in the struct.

Signed-off-by: Michal Kazior <michal.kazior@tieto.com>
---
 drivers/net/wireless/ath/ath10k/core.h | 1 -
 drivers/net/wireless/ath/ath10k/mac.c  | 4 +---
 drivers/net/wireless/ath/ath10k/mac.h  | 1 +
 drivers/net/wireless/ath/ath10k/txrx.c | 7 ++++++-
 4 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h
index 2f48772418ec..344849dd93c8 100644
--- a/drivers/net/wireless/ath/ath10k/core.h
+++ b/drivers/net/wireless/ath/ath10k/core.h
@@ -89,7 +89,6 @@ struct ath10k_skb_cb {
 	struct {
 		u8 tid;
 		u16 freq;
-		bool is_offchan;
 		bool nohwcrypt;
 		struct ath10k_htt_txbuf *txbuf;
 		u32 txbuf_paddr;
diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index dd4770ec7ecc..f7e4fba63b44 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -3297,7 +3297,7 @@ static void ath10k_tx_h_add_p2p_noa_ie(struct ath10k *ar,
 	}
 }
 
-static bool ath10k_mac_need_offchan_tx_work(struct ath10k *ar)
+bool ath10k_mac_need_offchan_tx_work(struct ath10k *ar)
 {
 	/* FIXME: Not really sure since when the behaviour changed. At some
 	 * point new firmware stopped requiring creation of peer entries for
@@ -3679,7 +3679,6 @@ static void ath10k_tx(struct ieee80211_hw *hw,
 
 	txmode = ath10k_mac_tx_h_get_txmode(ar, vif, sta, skb);
 
-	ATH10K_SKB_CB(skb)->htt.is_offchan = false;
 	ATH10K_SKB_CB(skb)->htt.freq = 0;
 	ATH10K_SKB_CB(skb)->htt.tid = ath10k_tx_h_get_tid(hdr);
 	ATH10K_SKB_CB(skb)->htt.nohwcrypt = !ath10k_tx_h_use_hwcrypto(vif, skb);
@@ -3711,7 +3710,6 @@ static void ath10k_tx(struct ieee80211_hw *hw,
 
 		if (ath10k_mac_need_offchan_tx_work(ar)) {
 			ATH10K_SKB_CB(skb)->htt.freq = 0;
-			ATH10K_SKB_CB(skb)->htt.is_offchan = true;
 
 			ath10k_dbg(ar, ATH10K_DBG_MAC, "queued offchannel skb %p\n",
 				   skb);
diff --git a/drivers/net/wireless/ath/ath10k/mac.h b/drivers/net/wireless/ath/ath10k/mac.h
index e3cefe4c7cfd..ff09d6986fae 100644
--- a/drivers/net/wireless/ath/ath10k/mac.h
+++ b/drivers/net/wireless/ath/ath10k/mac.h
@@ -58,6 +58,7 @@ bool ath10k_mac_is_peer_wep_key_set(struct ath10k *ar, const u8 *addr,
 				    u8 keyidx);
 int ath10k_mac_vif_chan(struct ieee80211_vif *vif,
 			struct cfg80211_chan_def *def);
+bool ath10k_mac_need_offchan_tx_work(struct ath10k *ar);
 
 void ath10k_mac_handle_beacon(struct ath10k *ar, struct sk_buff *skb);
 void ath10k_mac_handle_beacon_miss(struct ath10k *ar, u32 vdev_id);
diff --git a/drivers/net/wireless/ath/ath10k/txrx.c b/drivers/net/wireless/ath/ath10k/txrx.c
index 6d1105ab4592..655947bef6cc 100644
--- a/drivers/net/wireless/ath/ath10k/txrx.c
+++ b/drivers/net/wireless/ath/ath10k/txrx.c
@@ -23,7 +23,12 @@
 
 static void ath10k_report_offchan_tx(struct ath10k *ar, struct sk_buff *skb)
 {
-	if (!ATH10K_SKB_CB(skb)->htt.is_offchan)
+	struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
+
+	if (likely(!(info->flags & IEEE80211_TX_CTL_TX_OFFCHAN)))
+		return;
+
+	if (!ath10k_mac_need_offchan_tx_work(ar))
 		return;
 
 	/* If the original wait_for_completion() timed out before
-- 
2.1.4


_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

  parent reply	other threads:[~2015-11-10 13:13 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-02 14:03 [PATCH 0/8] ath10k: clean up ath10k_skb_cb Michal Kazior
2015-11-02 14:03 ` Michal Kazior
2015-11-02 14:03 ` [PATCH 1/8] ath10k: merge is_protected with nohwcrypt Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-02 14:03 ` [PATCH 2/8] ath10k: rename function to adhere to naming convention Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-02 14:03 ` [PATCH 3/8] ath10k: remove txmode from skb_cb Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-02 14:03 ` [PATCH 4/8] ath10k: remove is_offchan Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-02 14:03 ` [PATCH 5/8] ath10k: remove freq from skb_cb Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-02 14:03 ` [PATCH 6/8] ath10k: pack up flags in skb_cb Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-02 14:03 ` [PATCH 7/8] ath10k: replace vdev_id and tid in skb cb Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-03  9:37   ` Michal Kazior
2015-11-03  9:37     ` Michal Kazior
2015-11-02 14:03 ` [PATCH 8/8] ath10k: store msdu_id instead of txbuf pointers Michal Kazior
2015-11-02 14:03   ` Michal Kazior
2015-11-10 13:10 ` [PATCH v2 0/9] ath10k: clean up ath10k_skb_cb Michal Kazior
2015-11-10 13:10   ` Michal Kazior
2015-11-10 13:10   ` [PATCH v2 1/9] ath10k: merge is_protected with nohwcrypt Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-10 13:10   ` [PATCH v2 2/9] ath10k: rename function to adhere to naming convention Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-10 13:10   ` [PATCH v2 3/9] ath10k: remove txmode from skb_cb Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-10 13:10   ` Michal Kazior [this message]
2015-11-10 13:10     ` [PATCH v2 4/9] ath10k: remove is_offchan Michal Kazior
2015-11-10 13:10   ` [PATCH v2 5/9] ath10k: remove freq from skb_cb Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-10 13:10   ` [PATCH v2 6/9] ath10k: pack up flags in skb_cb Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-10 13:10   ` [PATCH v2 7/9] ath10k: fix tx header parsing Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-10 13:10   ` [PATCH v2 8/9] ath10k: replace vdev_id and tid in skb cb Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-10 13:10   ` [PATCH v2 9/9] ath10k: store msdu_id instead of txbuf pointers Michal Kazior
2015-11-10 13:10     ` Michal Kazior
2015-11-12 19:29   ` [PATCH v2 0/9] ath10k: clean up ath10k_skb_cb Kalle Valo
2015-11-12 19:29     ` Kalle Valo
2015-11-13  6:20     ` Michal Kazior
2015-11-13  6:20       ` Michal Kazior
2015-11-18  5:59     ` [PATCH v3 " Michal Kazior
2015-11-18  5:59       ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 1/9] ath10k: merge is_protected with nohwcrypt Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 2/9] ath10k: rename function to adhere to naming convention Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 3/9] ath10k: remove txmode from skb_cb Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 4/9] ath10k: remove is_offchan Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 5/9] ath10k: remove freq from skb_cb Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 6/9] ath10k: pack up flags in skb_cb Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 7/9] ath10k: fix tx header parsing Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 8/9] ath10k: replace vdev_id and tid in skb cb Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-18  5:59       ` [PATCH v3 9/9] ath10k: store msdu_id instead of txbuf pointers Michal Kazior
2015-11-18  5:59         ` Michal Kazior
2015-11-19 15:10         ` QCA998X not working at all Sebastian Gottschall
2015-11-19 15:33           ` Ben Greear
2015-11-19 15:35             ` Sebastian Gottschall
2015-11-19 16:13               ` Ben Greear
2015-11-19 17:12                 ` Sebastian Gottschall
2015-11-19 18:21                   ` Sebastian Gottschall
2015-11-20 11:53                     ` Kalle Valo
2015-11-20 15:55                       ` Sebastian Gottschall
2015-11-20 16:46                         ` Ben Greear
2016-04-13 15:36                     ` Ben Greear
2016-04-13 17:05                       ` Alexis Green
2016-04-14 14:13                         ` Sebastian Gottschall
2016-04-14 14:12                       ` Sebastian Gottschall
2015-11-19 15:35             ` Sebastian Gottschall
2015-11-23 15:21       ` [PATCH v3 0/9] ath10k: clean up ath10k_skb_cb Kalle Valo
2015-11-23 15:21         ` 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=1447161055-2283-5-git-send-email-michal.kazior@tieto.com \
    --to=michal.kazior@tieto.com \
    --cc=ath10k@lists.infradead.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.