Skip to content

Commit 4232ec4

Browse files
egrumbachgregkh
authored andcommitted
wifi: iwlwifi: mvm: don't wake up rx_sync_waitq upon RFKILL
commit e715c93 upstream. Since we now want to sync the queues even when we're in RFKILL, we shouldn't wake up the wait queue since we still expect to get all the notifications from the firmware. Fixes: 4d08c0b ("wifi: iwlwifi: mvm: handle BA session teardown in RF-kill") Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20240703064027.be7a9dbeacde.I5586cb3ca8d6e44f79d819a48a0c22351ff720c9@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 396dc11 commit 4232ec4

2 files changed

Lines changed: 4 additions & 8 deletions

File tree

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

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6189,11 +6189,9 @@ void iwl_mvm_sync_rx_queues_internal(struct iwl_mvm *mvm,
61896189
if (sync) {
61906190
lockdep_assert_held(&mvm->mutex);
61916191
ret = wait_event_timeout(mvm->rx_sync_waitq,
6192-
READ_ONCE(mvm->queue_sync_state) == 0 ||
6193-
iwl_mvm_is_radio_hw_killed(mvm),
6192+
READ_ONCE(mvm->queue_sync_state) == 0,
61946193
SYNC_RX_QUEUE_TIMEOUT);
6195-
WARN_ONCE(!ret && !iwl_mvm_is_radio_hw_killed(mvm),
6196-
"queue sync: failed to sync, state is 0x%lx, cookie %d\n",
6194+
WARN_ONCE(!ret, "queue sync: failed to sync, state is 0x%lx, cookie %d\n",
61976195
mvm->queue_sync_state,
61986196
mvm->queue_sync_cookie);
61996197
}

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

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1854,12 +1854,10 @@ static bool iwl_mvm_set_hw_rfkill_state(struct iwl_op_mode *op_mode, bool state)
18541854
bool rfkill_safe_init_done = READ_ONCE(mvm->rfkill_safe_init_done);
18551855
bool unified = iwl_mvm_has_unified_ucode(mvm);
18561856

1857-
if (state) {
1857+
if (state)
18581858
set_bit(IWL_MVM_STATUS_HW_RFKILL, &mvm->status);
1859-
wake_up(&mvm->rx_sync_waitq);
1860-
} else {
1859+
else
18611860
clear_bit(IWL_MVM_STATUS_HW_RFKILL, &mvm->status);
1862-
}
18631861

18641862
iwl_mvm_set_rfkill_state(mvm);
18651863

0 commit comments

Comments
 (0)