Как остановить / отключить IPI(межпроцессное прерывание) в Linux?

Я пытаюсь отключить вызовы irq из ядра при выполнении какого-либо приложения, я вызываю local_irq_disable(), прежде чем выполнить мое приложение, достаточно ли для отключения флагов IRQ. Любой другой способ отключить IRQ, пожалуйста, предложите мне.

1 ответ

Если вы используете процессор для работы не в ядре, то лучшим подходом было бы пометить его в автономном режиме (т.е. очистить соответствующий бит в cpu_online_mask). Конечно, вы должны убедиться, что нет ожидающих работ, которые могли бы заблокировать другие процессоры в системе, прежде чем сделать это...

Другими словами, пройдите весь путь через автономный режим (горячее отключение) без самого последнего шага фактической остановки процессора. Вместо этого позвольте ему делать особую работу. Когда вы закончите, выполните онлайн-действия (снова подключите процессор).

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