[pso] [Tema2][Linux] /proc/interrupts

Andrei Trandafir andreitra1987 at yahoo.com
Sat Apr 10 17:40:52 EEST 2010


In momentul de fata, ordinea e asa:
- request_region
- request_irq
- register_chrdev_region

M-am uitat acum din nou. Inregistrarile acelea goale din /proc/interrupts tot exista, insa acum testerul ruleaza corect si complet (tema trece toate testele, indiferent de cate ori o rulez). Ce am facut practic fata de momentul initial in care testerul bloca sistemul a fost sa mut activarea intreruperilor UART: initial aceasta se facea o singura data, imediat dupa request_irq, iar acum se face la fiecare apel "open".


--- On Sat, 4/10/10, Razvan Deaconescu <razvan.deaconescu at cs.pub.ro> wrote:

> From: Razvan Deaconescu <razvan.deaconescu at cs.pub.ro>
> Subject: Re: [pso] [Tema2][Linux] /proc/interrupts
> To: "Proiectarea Sistemelor de Operare" <pso at cursuri.cs.pub.ro>
> Date: Saturday, April 10, 2010, 6:39 AM
> On Sat, 2010-04-10 at 05:57 -0700,
> Andrei Trandafir wrote:
> > Ok..."Registre"...mea culpa :)
> > 
> > Eu am gandit ordinea curenta pe urmatoarea idee: daca
> as initializa
> > intai device-ul si intreruperile ultimele, ar exista
> riscul executarii
> > unei comenzi de open / read / write etc. (o
> preemptare) inainte ca
> > handler-ul meu de interupere sa fie si el instalat. Pe
> cand asa, nu ma
> > deranjeaza daca se genereaza vreo intrerupere la
> inceput, insa stiu
> > sigur ca atunci cand cineva face read / write,
> handler-ul este
> > disponibil si functioneaza.
> 
> De acord. Din acest motiv operatia cdev_add ar trebui
> executata la
> sfarsit. In mod obisnuit, insa, vei apela request_irq dupa
> request_region si dupa register_chrdev_region? Daca apelezi
> spre sfarsit
> cdev_add (dupa request_irq si dupa initializarea
> registrelor) se
> intampla problema mentionata de tine?
> 
> Razvan
> 
> _______________________________________________
> pso mailing list
> pso at cursuri.cs.pub.ro
> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/pso
> 


      


More information about the pso mailing list