Убить тасклет во время холдинга spin_lock_irqsave
Я использую следующий API для уничтожения тасклета:
tasklet_kill();
Убивая тасклет, я отключил локальные прерывания, используя spin_lock_irqsave
, Почему ядро выдает следующее сообщение (предупреждение?):
Attempt to kill tasklet from interrupt
Не рекомендуется ли использовать tasklet_kill()
удерживая spin_lock?
1 ответ
Если вы посмотрите на сам функционал, то обнаружите, что у него есть вызов yield, который может отказаться от процессора. но это запрещено с отключенными прерываниями и / или удерживанием блокировки вращения.