lug-bg: Slackware 10.0 SMP IRQ Проблеми
- Subject: lug-bg: Slackware 10.0 SMP IRQ Проблеми
- From: Nikolay Tenev <ntenev@xxxxxxxxxxxxxxxx>
- Date: Tue, 3 Aug 2004 13:54:09 +0300
- Organization: Transkapital
Здравейте. Имам следната ситуация:
---
Машина - DELL Workstation Precision 410 MT (BIOS A014)
Процесори - 2 x P II (Deschutes) 350 MHz
Linux - Slackware 10.0
Kernel - 2.4.26
---
Прекомпилирах ядро със SMP (Symetric Multi Processors) поддръжка и се
започнаха следните аномалии:
При зареждането на модула за eth0 (вградена - 3Com 3c905B 100BaseTX [Cyclone]
(модул 3c59x.o) ), картата иска да използва IRQ 19, но извежда съобщение че
най-вероятно няма да работи с това IRQ. След това като се опитам да я вдигна
с ifconfig самия процес забива ( с ps ax дава STAT D+) а на конзолата изважда
съобщения за грешки от ядрото от типа ooops и разни срашни цифри и букви след
това. Гледах на сайта на DELL спецификацията на машината, но там са описани
само до IRQ 15 (BIOS-а няма опция за промяна на IRQ-тата). И от BIOS-а и от
опциите за компилиране на ядрото изключих поддръжките на APM и ACPI но и това
не помага. В /proc/interrupts също не показва на кое IRQ е eth0.
Мислех че картата не е в ред, но когато пусна Slackware със стандартното ядро
за еднопроцесорни машини си я хваща, слага я на IRQ 11 и всичко си работи
перфектно.
Също така под Windows XP Pro SP 1 всичко също работи чудесно. И двата
процесора и картата, която там работи именно на IRQ 19.
Третото което опитах бе да компилирам драйвера статично. Резултата бе частичен
успех. Разпознаве картата, слага я на IRQ > 15 и работи както си трябва. Само
че там проблемите излязоха когато слагам други карти, чиито драйвери се
зареждат като модули ... с тях я работи, я не (картите са читави).
Това което ми прави впечатление (при сравняване на dmesg) е че при зареждане
на ядрото със статично компилиран драйвер разпознаването на картата става
точно преди разпознаването на PIIX4 IDE Controler, докато при ядрото с модул
това става по-късно (при изпълнението на rc.modules). Казвам го защото IDE0 и
IDE1 интерфейсите (и по спецификацията на DELL) работят на съответно IRQ 14 и
IRQ 15. Да не би по някакъв начин те да са последните при регистриране на
IRQ ?
Целта ми е да имам 2 работещи процесора и всякакъв хардуер да може да се
зарежда като модул.
Търсих из google, сайта на DELL и архивите на различни linux-smp mail листи,
но неможах да намеря нищо, което да ми подскаже дори откъде да започна да
търся проблема.
Ако някой се е сблъсквал с нещо подобно и/или има идея къде да търся причината
за всичко това, ще съм благодарен ако го сподели.
Поздрави !
Н. Тенев
P.S. Това което искам да отбележа е че в случая търся решение, което да
отстрани проблема, а не начин да го заобиколя. Знам че мога всеки път когато
добавям ново устройство да прекомпилирам ядрото със статичните му драйвери,
това ще е домашно сървърче така че ден-два без да работи докато му реша този
или онзи проблем не са фатални ... но това си е заобикаляне. Имам нужда от
решение по простата причина че ако се сблъскам (а и не само аз) с подобен
проблем в работата си (където имам критични машини) е по-добре да има решение
отколкото да търся заобиколен път нали ? Ако е възможно все пак :)
Предварително Ви благодаря !
============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================
|