Skip to content

Commit fbb1461

Browse files
jmberg-intelKalle Valo
authored andcommitted
iwlwifi: mvm: don't call iwl_mvm_free_inactive_queue() under RCU
iwl_mvm_free_inactive_queue() will sleep in synchronize_net() under some circumstances, so don't call it under RCU. There doesn't appear to be a need for RCU protection around this particular call. Cc: [email protected] # v5.4+ Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: Luca Coelho <[email protected]> Signed-off-by: Kalle Valo <[email protected]> Link: https://lore.kernel.org/r/iwlwifi.20200403112332.0f49448c133d.I17fd308bc4a9491859c9b112f4eb5d2c3fc18d7d@changeid
1 parent b3a9e3b commit fbb1461

File tree

1 file changed

+3
-5
lines changed
  • drivers/net/wireless/intel/iwlwifi/mvm

1 file changed

+3
-5
lines changed

drivers/net/wireless/intel/iwlwifi/mvm/sta.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1189,17 +1189,15 @@ static int iwl_mvm_inactivity_check(struct iwl_mvm *mvm, u8 alloc_for_sta)
11891189
for_each_set_bit(i, &changetid_queues, IWL_MAX_HW_QUEUES)
11901190
iwl_mvm_change_queue_tid(mvm, i);
11911191

1192+
rcu_read_unlock();
1193+
11921194
if (free_queue >= 0 && alloc_for_sta != IWL_MVM_INVALID_STA) {
11931195
ret = iwl_mvm_free_inactive_queue(mvm, free_queue, queue_owner,
11941196
alloc_for_sta);
1195-
if (ret) {
1196-
rcu_read_unlock();
1197+
if (ret)
11971198
return ret;
1198-
}
11991199
}
12001200

1201-
rcu_read_unlock();
1202-
12031201
return free_queue;
12041202
}
12051203

0 commit comments

Comments
 (0)