diff options
author | Johannes Berg <johannes.berg@intel.com> | 2012-03-05 14:24:24 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-03-06 15:16:08 -0500 |
commit | 015c15e1067c988fc87fb550b222f075c8d3f47c (patch) | |
tree | 20ebc3c951e8d9e531410d3f0a116ea39405f752 /drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h | |
parent | 9451ca1a31be44f8235c3f8f998ff27fc7a8395e (diff) |
iwlwifi: introduce per-queue locks
Instead of (ab)using the sta_lock, make the
transport layer lock its own TX queue data
structures with a lock per queue. This also
unifies with the cmd queue lock.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h index 5b26b71ae3d5..b1029468ccbd 100644 --- a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h +++ b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h | |||
@@ -169,6 +169,7 @@ struct iwl_queue { | |||
169 | * @meta: array of meta data for each command/tx buffer | 169 | * @meta: array of meta data for each command/tx buffer |
170 | * @dma_addr_cmd: physical address of cmd/tx buffer array | 170 | * @dma_addr_cmd: physical address of cmd/tx buffer array |
171 | * @txb: array of per-TFD driver data | 171 | * @txb: array of per-TFD driver data |
172 | * lock: queue lock | ||
172 | * @time_stamp: time (in jiffies) of last read_ptr change | 173 | * @time_stamp: time (in jiffies) of last read_ptr change |
173 | * @need_update: indicates need to update read/write index | 174 | * @need_update: indicates need to update read/write index |
174 | * @sched_retry: indicates queue is high-throughput aggregation (HT AGG) enabled | 175 | * @sched_retry: indicates queue is high-throughput aggregation (HT AGG) enabled |
@@ -187,6 +188,7 @@ struct iwl_tx_queue { | |||
187 | struct iwl_device_cmd **cmd; | 188 | struct iwl_device_cmd **cmd; |
188 | struct iwl_cmd_meta *meta; | 189 | struct iwl_cmd_meta *meta; |
189 | struct sk_buff **skbs; | 190 | struct sk_buff **skbs; |
191 | spinlock_t lock; | ||
190 | unsigned long time_stamp; | 192 | unsigned long time_stamp; |
191 | u8 need_update; | 193 | u8 need_update; |
192 | u8 sched_retry; | 194 | u8 sched_retry; |