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

Commit 703a4e55 authored by Dan Carpenter's avatar Dan Carpenter Committed by John W. Linville
Browse files

ath9k: use GFP_ATOMIC under spinlock



This is called with spinlocks held so we have to use GFP_ATOMIC.  It's
the sc_pcu_lock in ath9k_stop() that's the issue.  The call tree looks
like this:

ath9k_stop()
ath_prepare_reset()
ath_stoprecv()
ath_flushrecv()
ath_rx_tasklet()
ath9k_dfs_process_phyerr()
pd->add_pulse() => dpd_add_pulse()
channel_detector_get()
channel_detector_create()
pri_detector_init()

channel_detector_create() uses GFP_ATOMIC as well.

Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Tested-by: default avatarZefir Kurtisi <zefir.kurtisi@neratec.com>
Acked-by: default avatarZefir Kurtisi <zefir.kurtisi@neratec.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent ca21cfde
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -406,7 +406,8 @@ static struct pri_sequence *pri_detector_add_pulse(struct pri_detector *de,
struct pri_detector *pri_detector_init(const struct radar_detector_specs *rs)
{
	struct pri_detector *de;
	de = kzalloc(sizeof(*de), GFP_KERNEL);

	de = kzalloc(sizeof(*de), GFP_ATOMIC);
	if (de == NULL)
		return NULL;
	de->exit = pri_detector_exit;