Re[2]: [pso] tema1 linux

George Adrian Drumea pso@cursuri.cs.pub.ro
Fri, 18 Mar 2005 22:13:15 +0200


Hello Octavian,

Friday, March 18, 2005, 9:52:30 PM, you wrote:

> On Friday 18 March 2005 09:23 pm, George Adrian Drumea wrote:
>> Cand se face module unloading trebuie sa asteptam sa se termine toate
>> syscallurile pending ce trec prin el?

> Nu se cere explicit, pentru ca inca nu am discutat la laborator. Dar daca vrei
> sa implementezi, vezi try_module_get/module_put.

Teoretic: as wrapa deci fiecare syscall interceptat intr-un
try_module_get {...} try_module_put. Exista race-ul urmator?
 - un proces apeleaza sycall 0 sau un syscall interceptat
 - din entry.S se apeleaza funtia interceptata in modul, dar functia
 din modul nu apuca sa apeleze try_module_get (e intrerupta)
 - tocmai atunci userul executa rmmod, ref countul e ok, deci modulul este
 scos
 - primul proces se trezeste executand o functie care nu mai exista in
 memorie (aici nu stiu exact, fault la primul fetch de instructiune?)

E posibil ce am scris mai sus?

> tavi
> _______________________________________________
> pso mailing list
> pso@cursuri.cs.pub.ro
> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/pso

> __________ NOD32 1.1029 (20050318) Information __________

> This message was checked by NOD32 antivirus system.
> http://www.nod32.com




-- 
Best regards,
 George                            mailto:georgedrumea@rdslink.ro