Potlaceni nezadouciho IRQ

uhlar na fantomas.sk uhlar na fantomas.sk
Neděle Září 3 20:33:12 CEST 2000


Jiri Borik <borik na zce.cz> wrote:
-> stala se mi nasledujici vec. UPS pripojena pres seriovy kabel se zblaznila
-> a zacala cloumat signaly na COM1 tak, ze vyvolavala cas od casu nekolik
-> set az tisic preruseni za vterinu (alespon to odhaduji dle poctu IRQ4 v
-> /proc/interrupts). Vysledkem bylo znacne zpomaleni systemu. Chtel jsem
-> prozatimne potlacit to generovani preruseni IRQ4, nez se dostanu fyzicky k
-> serveru a ten kabel vytahnu, ale neuspel jsem.

-> Killnul jsem demona, ktery mel otevrene cua0, to nezabralo. Pak jsem chtel
-> vypnout irq4 pro ttyS0, ale asi to pomoci setserial nejde. Tak jsem
-> alespon nastavil ttyS0 na irq3, ale ani to nepomohlo. IRQ4 sice z
-> /proc/interrupts zmizelo, ale server v pravidelnych intervalech zatuhaval
-> dal. 

killnut demona nepomoze, prerusenia sa spracuvaju nielen vtedy ked nieco
cita z portu. zmenit nastavenie pomocou setserial tiez nepomoze, setserial
iba oznamuje jadru na ktorom preruseni bezi dany port ale s prerusenim
neurobi nic.

-> Nevim jak to je v jadre presne udelane, ale odhadoval bych, ze i kdyz o
-> IRQ nikdo nestoji, tak jadru zabere reakce na nej nejaky cas a pokud se to
-> IRQ dostatecne rychle opakuje, je to cele v haji. 

no, povedal by som ze niekolko tisic preruseni za sekundu moze slusne
spomalit system aj vtedy ked o ne nikto nestoji. Predpokladam ze to
prerusenie nie je smerovane na rutinku ktora len zapise radicu ze skoncila
jeho obsluhu a vrati sa ale robia sa aj veci ktore uchovaju registre
premenne atd atd;

Obavam sa ze jediny sposob ako vyriesit tento problem okrem naozaj
vytiahnutia kabla je patchnut jadro aby na preruseni 4 visela len rutina
ktora zapise radicu preruseni ze bolo spracovane a vrati sa (a zrejme
precita z portu co prislo a zahodi to).

-- 
 Matus "fantomas" Uhlar, sysadmin at NEXTRA, Slovakia; IRCNET admin of *.sk
 uhlar na fantomas.sk ; http://www.fantomas.sk/ ; http://www.nextra.sk/
 Windows found: (R)emove, (E)rase, (D)elete


Další informace o konferenci Linux