Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1d5e1266 authored by Johannes Berg's avatar Johannes Berg
Browse files

mac80211: simplify roc check in idle calculation



There's no need to start iterating the list only to break on the
first item, just use !list_empty() and also simplify the whole
conditional into a single expression.

Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 361c3e04
Loading
Loading
Loading
Loading
+3 −8
Original line number Original line Diff line number Diff line
@@ -101,9 +101,8 @@ static u32 __ieee80211_idle_on(struct ieee80211_local *local)
static u32 __ieee80211_recalc_idle(struct ieee80211_local *local,
static u32 __ieee80211_recalc_idle(struct ieee80211_local *local,
				   bool force_active)
				   bool force_active)
{
{
	bool working = false, scanning, active;
	bool working, scanning, active;
	unsigned int led_trig_start = 0, led_trig_stop = 0;
	unsigned int led_trig_start = 0, led_trig_stop = 0;
	struct ieee80211_roc_work *roc;


	lockdep_assert_held(&local->mtx);
	lockdep_assert_held(&local->mtx);


@@ -111,12 +110,8 @@ static u32 __ieee80211_recalc_idle(struct ieee80211_local *local,
		 !list_empty(&local->chanctx_list) ||
		 !list_empty(&local->chanctx_list) ||
		 local->monitors;
		 local->monitors;


	if (!local->ops->remain_on_channel) {
	working = !local->ops->remain_on_channel &&
		list_for_each_entry(roc, &local->roc_list, list) {
		  !list_empty(&local->roc_list);
			working = true;
			break;
		}
	}


	scanning = test_bit(SCAN_SW_SCANNING, &local->scanning) ||
	scanning = test_bit(SCAN_SW_SCANNING, &local->scanning) ||
		   test_bit(SCAN_ONCHANNEL_SCANNING, &local->scanning);
		   test_bit(SCAN_ONCHANNEL_SCANNING, &local->scanning);