for_each_mvm_vif_valid_link(mvmvif, link_id) {
struct ieee80211_bss_conf *conf =
- rcu_dereference_protected(vif->link_conf[link_id], 1);
+ link_conf_dereference_protected(vif, link_id);
struct ieee80211_link_sta *link_sta =
- rcu_dereference_protected(sta->link[link_id], 1);
+ link_sta_dereference_protected(sta, link_id);
if (!conf || !link_sta || !mvmvif->link[link_id]->phy_ctxt)
continue;
for_each_set_bit(i, (unsigned long *)&sta->valid_links,
IEEE80211_MLD_MAX_NUM_LINKS) {
struct ieee80211_link_sta *link_sta =
- rcu_dereference_protected(sta->link[i], 1);
+ link_sta_dereference_protected(sta, i);
struct ieee80211_bss_conf *link_conf =
- rcu_dereference_protected(vif->link_conf[i], 1);
+ link_conf_dereference_protected(vif, i);
if (!link_conf || !link_sta)
continue;
for_each_set_bit(i, (unsigned long *)&sta->valid_links,
IEEE80211_MLD_MAX_NUM_LINKS) {
struct ieee80211_link_sta *link_sta =
- rcu_dereference_protected(sta->link[i], 1);
+ link_sta_dereference_protected(sta, i);
struct ieee80211_bss_conf *link_conf =
- rcu_dereference_protected(vif->link_conf[i], 1);
+ link_conf_dereference_protected(vif, i);
if (!link_conf || !link_sta || !mvmvif->link[i])
continue;
for_each_set_bit(i, (unsigned long *)&sta->valid_links,
IEEE80211_MLD_MAX_NUM_LINKS) {
struct ieee80211_bss_conf *link_conf =
- rcu_dereference_protected(vif->link_conf[i], 1);
+ link_conf_dereference_protected(vif, i);
if (WARN_ON(!link_conf))
return -EINVAL;
if (added & BIT(i)) {
struct ieee80211_bss_conf *link_conf;
- /* FIXME: allow use of sdata_dereference()? */
- link_conf = rcu_dereference_protected(vif->link_conf[i],
- 1);
+ link_conf = link_conf_dereference_protected(vif, i);
if (WARN_ON(!link_conf))
continue;
unsigned int link_id)
{
struct ieee80211_link_sta *link_sta =
- rcu_dereference_protected(sta->link[link_id], 1);
+ link_sta_dereference_protected(sta, link_id);
struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta);
struct iwl_mvm_link_sta *link;
u32 sta_id = iwl_mvm_find_free_sta_id(mvm,
for_each_sta_active_link(vif, sta, link_sta, link_id) {
struct ieee80211_bss_conf *link_conf =
- rcu_dereference_protected(vif->link_conf[link_id], 1);
+ link_conf_dereference_protected(vif, link_id);
struct iwl_mvm_link_sta *mvm_link_sta =
rcu_dereference_protected(mvm_sta->link[link_id],
lockdep_is_held(&mvm->mutex));
for_each_sta_active_link(vif, sta, link_sta, link_id) {
struct ieee80211_bss_conf *link_conf =
- rcu_dereference_protected(vif->link_conf[link_id], 1);
+ link_conf_dereference_protected(vif, link_id);
struct iwl_mvm_link_sta *mvm_link_sta =
rcu_dereference_protected(mvm_sta->link[link_id],
lockdep_is_held(&mvm->mutex));
for_each_set_bit(link_id, &links_to_add, IEEE80211_MLD_MAX_NUM_LINKS) {
struct ieee80211_bss_conf *link_conf =
- rcu_dereference_protected(vif->link_conf[link_id], 1);
+ link_conf_dereference_protected(vif, link_id);
struct ieee80211_link_sta *link_sta =
- rcu_dereference_protected(sta->link[link_id], 1);
+ link_sta_dereference_protected(sta, link_id);
mvm_vif_link = mvm_vif->link[link_id];
if (WARN_ON(!mvm_vif_link || !link_conf || !link_sta ||