LINUX.ORG.RU

Чем определяется количество свободных irq линий?

 ,


0

1

Есть модуль для тестирования наличия свободных irq линий (http://pastebin.com/jCneWU6P). Функционирует через can_request_irq (или же просто через request_irq).

На одной машине выдаёт, что свобоных линий дофига и больше (http://pastebin.com/ed6mxemG).
На другой, что их очень мало (http://pastebin.com/1XhkxvJa).

Какими конфигурационными опциями, параметрами ядра определяется количество свободных irq линий?

Для начала как минимум количеством PCI-устройств. В нормальных условиях, ядро по идее должно стремится разместить каждое устройство на отдельном IRQ, потому что это даёт максимальную производительность. С другой стороны многие IRQ распределяет BIOS и ОС часто не спорит с его выбором. Так что самые главные факторы: количество устройств, которые юзают IRQ и настройки BIOS.

KivApple ★★★★★
()
Ответ на: комментарий от KivApple

И это верно для второго листинга, но никак не может быть верным для первого. Иначе бы и самого вопроса не было.

dimorphus
() автор топика

Какими конфигурационными опциями, параметрами ядра определяется количество свободных irq линий?

CONFIG_ARCH

ttnl ★★★★★
()
Ответ на: комментарий от anonymous

Такие конфигурационные опции как X86_IO_APIC и X86_LOCAL_APIC включены и там и там.

dimorphus
() автор топика

а я вот в одной книжке по ассемблеру читал, что на PC всего 14 линий IRQ и больше половины жестко назначены на соответствующее устройство (клавиатура, флопик, контроллер жестких дисков и т.д)

видимо криокамера протекла, да? :)

Harald ★★★★★
()
Ответ на: комментарий от ttnl

Это имело бы смысл, если бы машины были принципиально разными. На первой работает 2.6.31.6 ядро. На второй 2.6.32.59 ядро. Везде 32-х битные ядра x86 архитектуры. Железо не сильно отличается.

dimorphus
() автор топика
Ответ на: комментарий от Harald

Насколько я понимаю, то примерно так оно и есть(жёстко только в BIOS и + некоторые устройства позволяют работать в режиме, когда линия разделяется с другим устройством). Просто каким-то образом можно создавать виртуальные линии, у которых нет привязки к устройству.

dimorphus
() автор топика
Ответ на: комментарий от dimon555

Проверил. От конфигурационной опции CONFIG_PCI_MSI не зависит.

dimorphus
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.