Linux Interrupt vs. Polling

Я разрабатываю систему с DSP и ARM. На ARM есть ОС Linux. У меня есть DSP, отправляющий данные в ARM (Linux) - в Linux есть модуль ядра, который считывает данные, полученные из DSP. Модуль ядра просыпается, чтобы прочитать данные, используя аппаратное прерывание между DSP и ARM.

Я хочу написать приложение пользовательского пространства, которое будет считывать данные из пространства ядра (модуля ядра) каждый раз, когда поступают новые данные из DSP.
Вопрос в том:

Что лучше для этого сделать: программное прерывание из ядра в пользовательское пространство или опрос из пользовательского пространства (чтение известного адреса памяти с помощью ядра) каждые 10 мс ..?

Знаю это:

Данные из DSP в ядро ​​должны поступить в очень короткие сроки - 100 мкс.Данные из ядра в пользовательское пространство могут занимать от 10 до 30 мс.Считываемые данные считаются небольшими - около 100 байт.