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: Dan Carpenter <dan.carpenter@oracle.com> Tested-by: Zefir Kurtisi <zefir.kurtisi@neratec.com> Acked-by: Zefir Kurtisi <zefir.kurtisi@neratec.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
ca21cfde84
commit
703a4e5521
1 changed files with 2 additions and 1 deletions
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue