Что происходит, когда тасклет прерывается аппаратным прерыванием?

Я хотел знать эту часть. Мы знаем, что тасклеты не могут спать, тогда, если происходит прерывание HW, что происходит с тасклетами?

Я сталкиваюсь с аварией, в которой тасклет прерывается прерыванием hW. Я использовал спинлок в моем тасклете.

Должен ли я использовать spinlock_irq_save?

Пожалуйста, дайте мне знать.

1 ответ

Да ты прав. Тасклеты могут быть прерваны прерываниями HW, и вы должны это предотвратить. Используя spin_lock_irqsave() и семья.

См. https://www.kernel.org/pub/linux/kernel/people/rusty/kernel-locking/c188.html

Если вы этого не сделаете и если тасклеты прерваны, вы видели, что происходит (сбой)

Другие вопросы по тегам