carl9170: Remove redundant protection check
The carl9170_op_ampdu_action() function is used only by the mac80211 framework. Since the mac80211 already takes care of checks and properly serializing calls to the driver's function there is no need for the driver to do the same thing. Signed-off-by: Andreea-Cristina Bernat <bernat.ada@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
这个提交包含在:

提交者
John W. Linville

父节点
499afaccf6
当前提交
69e2a77170
@@ -1430,18 +1430,10 @@ static int carl9170_op_ampdu_action(struct ieee80211_hw *hw,
|
||||
if (!sta_info->ht_sta)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
rcu_read_lock();
|
||||
if (rcu_dereference(sta_info->agg[tid])) {
|
||||
rcu_read_unlock();
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
tid_info = kzalloc(sizeof(struct carl9170_sta_tid),
|
||||
GFP_ATOMIC);
|
||||
if (!tid_info) {
|
||||
rcu_read_unlock();
|
||||
if (!tid_info)
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
tid_info->hsn = tid_info->bsn = tid_info->snx = (*ssn);
|
||||
tid_info->state = CARL9170_TID_STATE_PROGRESS;
|
||||
@@ -1460,7 +1452,6 @@ static int carl9170_op_ampdu_action(struct ieee80211_hw *hw,
|
||||
list_add_tail_rcu(&tid_info->list, &ar->tx_ampdu_list);
|
||||
rcu_assign_pointer(sta_info->agg[tid], tid_info);
|
||||
spin_unlock_bh(&ar->tx_ampdu_list_lock);
|
||||
rcu_read_unlock();
|
||||
|
||||
ieee80211_start_tx_ba_cb_irqsafe(vif, sta->addr, tid);
|
||||
break;
|
||||
|
在新工单中引用
屏蔽一个用户