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

Commit 5078b2e3 authored by Luis R. Rodriguez's avatar Luis R. Rodriguez Committed by John W. Linville
Browse files

cfg80211: fix race between core hint and driver's custom apply



Its possible for cfg80211 to have scheduled the work and for
the global workqueue to not have kicked in prior to a cfg80211
driver's regulatory hint or wiphy_apply_custom_regulatory().

Although this is very unlikely its possible and should fix
this race. When this race would happen you are expected to have
hit a null pointer dereference panic.

Cc: stable@kernel.org
Signed-off-by: default avatarLuis R. Rodriguez <lrodriguez@atheros.com>
Tested-by: default avatarAlan Jenkins <alan-jenkins@tuffmail.co.uk>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 267d493b
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1551,6 +1551,13 @@ static int regulatory_hint_core(const char *alpha2)

	queue_regulatory_request(request);

	/*
	 * This ensures last_request is populated once modules
	 * come swinging in and calling regulatory hints and
	 * wiphy_apply_custom_regulatory().
	 */
	flush_scheduled_work();

	return 0;
}