[so2] [Ixia Challenge] Problema intalnita la ultimul test

Daniel Baluta daniel.baluta at gmail.com
Wed Mar 27 14:25:57 EET 2013


2013/3/27 Stoica Cosmin <cosmin.stoica9 at gmail.com>:
>
>
> În data de 27 martie 2013, 14:03, Daniel Baluta <daniel.baluta at gmail.com> a
> scris:
>>
>> 2013/3/27 Stoica Cosmin <cosmin.stoica9 at gmail.com>:
>> > Salut!
>> >
>> >       La ultimul test nu reuseste sa imi intercepteze toate apelurile de
>> > lock sau kfree...... Nu imi dau seama din ce cauza s-ar putea manifesta
>> > aceasta cauza? Ma gandesc ca ar putea fi din cauza memorie alocate,
>> > deoarece
>> > daca scad numarul de threaduri de la 32 -> 20 ( ceva de genu ) Imi trece
>> > fara problema.
>>
>> Ai pus print în handler-ul de kprobe și vezi că este apelat e mai puține
>> ori ?
>>
>> >
>> >   Putem pre aloca vectori inainte sau sa fie static in aceasta tema ?
>> >
>> Pentru ce îti trebuie? Poți folosi liste?
>>
>> >   Exista vreo posibilate sa aloci dinamic memorie in sectiune critica :
>> > a)
>> > creata cu semafor; b) cu spinlock?
>> >
>>
>> Poti aloca memorie dinamică într-o secțiune critică folosind flagul
>> GFP_ATOMIC.
>>
>> thanks,
>> Daniel.
>> _______________________________________________
>> http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii
>
> Salut!
>
>
>           Problema intalnita  este aceea ca nu imi prinde kretprobe-ul toate
> apelurile de __kmalloc. Am incercat si cu liste alocate dinamic si tot asa.
> Faza este ca nu ma prind de ce nu vrea sa imi ia toate apelurile de sistem.
> Am eliminat orice data adiacente pe care ar tb sa necesite sincronizari.
> Din kret in iau dimensiunea si pointer de return prin handler si ret_handler
> si kfree il tratez cu jprob. Am lasat doar functiile de kprobes si atat si
> cate o afisare in fiecare.
>          Cand intru in jprobe pana sa apelez jprobe_return mai tb sa
> folosesc spin_lock cand fac o afisare de genu printk( "proc crt %d %p\n",
> current->pid, param_primiit")?

Urmărește te rog exemplul de aici [1], si printeaza câmpul
my_kretprobe.nmissed.
De asemenea ai grijă la câmpul .maxactive. Eu nu m-am atins de el și nu am avut
probleme. Poate tu îl setezi la o valoare prea mică.

thanks,
Daniel.

[1] http://lxr.linux.no/#linux+v3.8.4/samples/kprobes/kretprobe_example.c


More information about the so2 mailing list